Hola, estoy teniendo problemas con un sencillo programa que lee un DS1621 y muestra el dato obtenido en un LCD. A ver si ven algo mal y me ayudan por que no logro sacar nada por la LCD
'Configuro los fuses
@__CONFIG _CONFIG1L, _PLLDIV_5_1L & _CPUDIV_OSC1_PLL2_1L & _USBDIV_2_1L
@__CONFIG _CONFIG1H, _FOSC_HSPLL_HS_1H & _FCMEN_OFF_1H & _IESO_OFF_1H
@__CONFIG _CONFIG2L, _PWRT_OFF_2L & _BOR_ON_2L & _BORV_3_2L & _VREGEN_ON_2L
@__CONFIG _CONFIG2H, _WDT_ON_2H & _WDTPS_512_2H
@__CONFIG _CONFIG3H, _CCP2MX_ON_3H & _PBADEN_OFF_3H & _LPT1OSC_OFF_3H & _MCLRE_OFF_3H
@__CONFIG _CONFIG4L, _STVREN_ON_4L & _LVP_OFF_4L & _XINST_OFF_4L
'LCD
DEFINE LCD_DREG PORTB 'UTILIZAR 4 BITS DEL PUERTO B PARA TX DE DATOS
DEFINE LCD_DBIT 4 'DESDE EL BIT B.4 AL BIT B.7
DEFINE LCD_RSREG PORTB'UTILIZAR EL REGISTRO DE CONTROL/DATOS EN EL PUERTO B
DEFINE LCD_RSBIT 1 'EN EL BIT B.1
DEFINE LCD_EREG PORTB 'UTILIZAR EL ENABLE EN EL PUERTO B
DEFINE LCD_EBIT 2 'EN EL BIT B.2
'I2C
CMCON = 7
ADCON1 = 7
SCL VAR PORTA.0
SDA VAR PORTA.1
WO var WORD
T1 var WO.byte0
T2 var WO.byte1
main:
gosub gettemp
Lcdout $fe, 1
Lcdout $fe, 1, dec2 WO
goto main
gettemp:
i2cwrite SDA,SCL,$90,$ac,[0] 'Escribo en el registro de conf --> conver. cont.
pause 10
I2CWrite SDA,SCL,$90,[$EE] 'Inicio la conversion de temperatura
pause 500
I2CRead SDA, SCL, $90,$aa,[T1,T2]
return
Alguien sabe por que no muestra nada?
Un saludo