8.asm (699B)
1 start: 2 init: 3 clrf PORTA ; make sure port A output latches are low 4 clrf PORTB ; make sure port B output latches are low 5 bsf STATUS, RP0 ; select memory bank 1 6 movlw b'11111111' ; set port A data direction to inputs 7 movwf TRISA 8 movlw b'00000000' ; set port B data direction to outputs 9 movwf TRISB 10 bcf STATUS, RP0 ; select memory bank 0 11 12 bsf INTCON, INT0IE 13 bsf INTCON, GIE 14 15 goto main 16 17 interrupt: ; this will make port b go high for a set amount of time 18 movlw 255 19 movwf PORTB 20 call wait1000ms 21 movlw 0 22 movwf PORTB 23 24 bcf INTCON, INT0IF 25 26 retfie 27 28 main: 29 goto main 30 END ; ends the program