Hola tenia un problema con mi lectura de tabla:
SEND_COMANDO_9
movlw UPPER tabla1
movwf MsnAddressUpper
movlw HIGH tabla1
movwf MsnAddressHigh
movlw LOW tabla1
movwf MsnAddressLow
CARGO_COMANDO2
movff MsnAddressUpper,TBLPTRU
movff MsnAddressHigh,TBLPTRH
movff MsnAddressLow,TBLPTRL
CARGO_CARACTER2
TBLRD*+ ; Leo la tabla
movff TABLAT,TEMP_CARACTER ; Cargo el dato
movf TEMP_CARACTER ,W ; Cargo W para comparar
xorlw 0xfd
BTFSC STATUS,Z
GOTO COMANDO_FIN
CALL TX_SPI_D ; y lo envio
TBLRD*+ ; Leo la tabla nuevamente para saltearme un dato
movff TABLAT,TEMP_CARACTER ; Cargo el dato
CLRF TEMP_CARACTER ; y lo borro
bra CARGO_CARACTER2 ; Vuelvo a empezar
COMANDO_FIN
RETLW 0X00 ; Vuelve al programa principal.
En esta parte:
movf TEMP_CARACTER ,W ; Cargo W para comparar
xorlw 0xfd
BTFSC STATUS,Z
Aca depende del valor de test que le ponia, 0xFD, me modificaba TEMP_CARACTER, ya que usaba XORWF.
Saludos