He hecho éste pequeño programa para ver si lo que he estudiado de las memorias externas lo he entendido bién, pero al parecer no es así, ya que en la lcd aparece cero en la primera, segunda y cuarta línea y en la tercera siempre un 12, alguién podría indicarme cuál es el problema, uso un PIC16F877A y la memoria 24AA00, gracias por la ayuda.
DEFINE OSC 4
Include "modedefs.bas"
CPIN var PORTE.0 ' I2C clock pin
DPIN var PORTE.1 ' I2C data pin
uno var byte
dos var byte
tres var byte
cuatro var byte
B0 var byte
B1 var byte
B2 var byte
B3 var byte
PAUSE 500
uno=0
dos=1
tres=2
cuatro=3
I2CWRITE DPIN,CPIN,$A0,uno,[1]
Pause 10
I2CWRITE DPIN,CPIN,$A0,dos,[2]
Pause 10
I2CWRITE DPIN,CPIN,$A0,tres,[3]
Pause 10
I2CWRITE DPIN,CPIN,$A0,cuatro,[4]
Pause 10
I2CREAD DPIN,CPIN,$A0,uno,[B0]
LCDOUT $FE,1,#B0
I2CREAD DPIN,CPIN,$A0,dos,[B1]
LCDOUT $FE,$D0,#B1
I2CREAD DPIN,CPIN,$A0,tres,[B3]
LCDOUT $FE,$90,#B2
I2CREAD DPIN,CPIN,$A0,cuatro,[B3]
LCDOUT $FE,$C0,#B3
END