Autor Tema: Problema I2C  (Leído 1333 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado rakata

  • PIC10
  • *
  • Mensajes: 1
Problema I2C
« en: 02 de Mayo de 2012, 08:47:52 »
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

Código: [Seleccionar]
'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