TODOPIC

Microcontroladores PIC => Lenguaje Basic para microcontroladores PIC => Mensaje iniciado por: tekag en 05 de Mayo de 2005, 14:31:00

Título: problemas para mostrar datos de eeprom sobre LCD
Publicado por: tekag en 05 de Mayo de 2005, 14:31:00
Hola amigos!.

Tengo el problema de una rutina de prueba que la simule en Proteus y me pasa lo siguiente:

La rutina graba 11 datos en 11 posiciones consecutivas y despues v a y las lee mostrandolas en uin LCD.

El problema que tengo es que al simularlo con el Proteus el circuito parece funcionar ya que veo que hay actividad pero no me muestra ningun valor en el LCD.

Esta es la rutina:




   Include "Modedefs.Bas"

" ** Configuro el cristal **

   Define    OSC      4      

" ** configuro el protocolo IC2 **

   Define   I2C_SCLOUT   1      

" ** Define los comandos del LCD **


DEFINE  LCD_DREG        PORTA
DEFINE  LCD_DBIT        0

DEFINE  LCD_RSREG       PORTB
DEFINE  LCD_RSBIT       6

DEFINE  LCD_EREG        PORTB
DEFINE  LCD_EBIT        7

" ** Declaro las Variables **

   SCL          Var     PortB.2        
   SDA          Var     PortB.1        
   Addr         Var     Word      
   E_ByteOut         Var     byte   
   E_ByteIn   Var   byte      


" Grabo el mensaje HELLO WORLD en la eeprom



        For Addr=0 To 10                   
         Lookup Addr,["H","E","L","L","O"," ","W","O","R","L","D"],E_ByteOut
   Gosub EWrite            
        Next               

"Leo las primeras 11 posiciones de eeprom y las muestro en el LCD


Again:                                  
   
                                  
   For Addr=0 To 10              
   Gosub ERead            
        lcdout #E_Bytein              
   pause 300               
        Next               
        Goto Again            



"Escribe el mensaje en la eeprom

EWrite:
        I2CWRITE SDA,SCL,%10100000,Addr,[E_ByteOut]
        Pause 10                      
   Return



"Lee el mensaje de la eeprom

ERead:
        I2CREAD SDA,SCL,%10100000,Addr,[E_ByteIn]  
   Return
   
Por favor alguien que me ayude a ve3r por que no funciona.


Saludos