#disable RSOut
Dim GPR As Byte SYSTEM
Dim PP1 As Byte SYSTEM
Dim PP1H As Byte SYSTEM
Dim BPFH As Byte SYSTEM
Symbol IR_LED = PORTB.2
Symbol IR_LED_TRS = TRISB.2
GoTo OVER_IROUT
ASM
;SERIAL_BAUD = 2400
RSOut movwf GPR
movwf PP1
bsf 3,5
bcf IR_LED
bcf 3,5
movlw 9
movwf PP1H
clrc
Call rso@bit
rrf PP1,f
decfsz PP1H,f
GoTo $ - 3
setc
Call rso@bit ; STOP BIT
movlw 0
movwf PP0H
movlw 100
Call dlus@w
bsf STATUS,5 ;BANK1
bsf IR_LED_TRS ;MAKE PIN INPUT ' LEAVE WITH THE SIGNAL IN ITS OFF STATE
bcf STATUS,5 ;BANK0
movfw GPR
GoTo i@nt
rso@bit skpnc
GoTo rso@bitl
nop
bsf STATUS,5 ;'BANK1
bcf IR_LED_TRS ;MAKE PIN OUTPUT
bcf STATUS,5 ;BANK0
GoTo Sr@dly1
rso@bitl
bsf STATUS,5 ;BANK1
bsf IR_LED_TRS ;MAKE PIN INPUT
bcf STATUS,5 ;BANK0
sr@dly1
movlw 1
movwf PP0H
movlw 147
GoTo dlus@w
ch@snd
btfsc BPFH,6
GoTo RSOut
ENDASM
OVER_IROUT:
PR2 = 25 ' Set PWM Period for approximately 38KHz
CCPR1L = 13 ' Set PWM Duty-Cycle to 50%
CCP1CON = %00001100 ' Mode select = PWM
T2CON = %00000100 ' Timer2 ON + 1:1 prescale ratio
Input IR_LED ' MAKE SURE ITS AN INPUT PIN TO START WITH