Are you missing a bank select in that code snippet?
Code:
asm
myint:
banksel PIR1 ' |B0
btfss PIR1,RCIF ' |B0
goto int_out ' |B0
bcf PIR1,RCIF ' |B0
banksel RCREG ' |B3
movfw RCREG ' |B3
banksel _RX_BYTE ' |B?
movwf _RX_Byte ' |B?
banksel TXREG ' |B3
movwf TXREG ' |B3
nop ' |B3
btfss PIR1,TXIF ' |B0 <-- *****
goto $-1 ' |B0
int_out:
retfie
endasm
If _RX_Byte is in bank 0, then maybe this would work?
Code:
asm
myint:
banksel PIR1 ' |B0
btfss PIR1,RCIF ' |B0
retfie ' |B0
bcf PIR1,RCIF ' |B0
banksel RCREG ' |B3
movfw RCREG ' |B3
movwf TXREG ' |B3
banksel _RX_BYTE ' |B0
movwf _RX_Byte ' |B0
btfss PIR1,TXIF ' |B0
goto $-1 ' |B0
retfie ' |B0
endasm
Bookmarks