; Blink LEDs ; T. Tsujioka 2014/06/14 LIST P=PIC18F2550 INCLUDE "P18F2550.INC" ; 48MHz Clock Settings CONFIG PLLDIV = 5 ; 20MHz/5 = 4MHz CONFIG CPUDIV = OSC1_PLL2 ; 96MHz / 2 = 48MHz CONFIG FOSC = HSPLL_HS ; CONFIG USBDIV = 2 CONFIG WDT = OFF CONFIG PWRT = ON ; Power Up Timer ; CONFIG BOR = ON ; Brown Out Reset CONFIG LVP = OFF ; Low Voltage Programming, When OFF, RB5 is enabled ; CONFIG VREGEN = ON ; USB 3.3V Power Supply ; CONFIG MCLRE = ON ; MCLR ; CONFIG PBADEN = OFF ; Analog Input of PORTB CBLOCK 0x000 LEDCOUNTER CNT50us CNT5ms CNT200ms ENDC ; ORG 0 GOTO MAIN ORG 0008h RETFIE ORG 0018h RETFIE MAIN MOVLW 0 MOVWF TRISB ; RB7-0: output CLRF LEDCOUNTER LEDLOOP INCF LEDCOUNTER MOVF LEDCOUNTER, W MOVWF LATB ; CALL TIMER1 ; 50us CALL TIMER2 ; 5ms ; CALL TIMER3 ; 200ms GOTO LEDLOOP ; ------------------- ; 50us delay TIMER1 MOVLW D'150' MOVWF CNT50us LOOP1 NOP DECFSZ CNT50us, F GOTO LOOP1 RETURN ; 5ms delay TIMER2 MOVLW D'100' MOVWF CNT5ms LOOP2 NOP CALL TIMER1 DECFSZ CNT5ms, F GOTO LOOP2 RETURN ; 200ms delay TIMER3 MOVLW D'40' MOVWF CNT200ms LOOP3 NOP CALL TIMER2 DECFSZ CNT200ms, F GOTO LOOP3 RETURN END