FLAG EQU 0x10 DISP EQU 0x0 RF EQU 0x1 ORG 0x0000 GOTO MAIN ORG 0x0008 BTFSC PIR1,CCP1IF GOTO CCP_ISR RETFIE MAIN MOVLW 0x05 MOVWF CCP1CON MOVLW 0x0 MOVWF T3CON MOVLW 0x0 MOVWF T1CON CLRF TRISB CLRF TRISD BSF TRISC,CCP1 CLRF CCPR1H CLRF CCPR1L BSF PIE1,CCP1IE BSF INTCON,PEIE BSF INTCON,GIE OVER CLRF TMR1H CLRF TMR1L WAIT BTFSS FLAG,DISP BRA WAIT BCF FLAG,DISP MOVLW 0x03 SUBWF TMR1L,F MOVFF TMR1L,PORTB MOVFF TMR1H,PORTD GOTO OVER CCP_ISR BTFSS FLAG,RF GOTO RISE_ISR GOTO FALL_ISR RISE_ISR BSF T1CON,TMR1ON BSF FLAG,RF BCF CCP1CON,0 BCF PIR1,CCP1IF RETFIE FALL_ISR BCF T1CON,TMR1ON BSF FLAG,DISP BCF FLAG,RF BSF CCP1CON,0 BCF PIR1,CCP1IF RETFIE END