HI art IM JUST TESTING IT ON AN OLD PIC F84A WITH 24C08 ITS WORKING WELL
THIS MY CODE MODIFIED GUSSE CODE
Code:
PORTB = 0
TRISB = 0
X VAR BYTE
Y VAR BYTE
SCL VAR PortB.0
SDA VAR PortB.1
LED VAR PortB.3
I2CDeviceEEprom VAR BYTE
I2CAddressEEprom VAR WORD
I2CDeviceEEprom=$A0
X=0 'OK if EEPROM content is 00h and X = 0, if X > 0 then fails
MAIN:
FOR I2CAddressEEprom = 0 TO 1024
I2CWRITE SDA, SCL, I2CDeviceEEprom, I2CAddressEEprom,[ X ], Error
PAUSE 10
I2CREAD SDA, SCL, I2CDeviceEEprom, I2CAddressEEprom,[ Y ], Error
IF Y <> X THEN GOTO Error
IF I2CAddressEEprom = 1024 AND X = Y THEN BLINK
NEXT I2CAddressEEprom
GOTO MAIN
Blink:
HIGH LED
PAUSE 1000
LOW LED
PAUSE 1000
GOTO Blink
Error:
HIGH LED
PAUSE 200
LOW LED
PAUSE 200
GOTO error
END
YOU HAVE TO MAKE SURE ABOUT EEPROM PULLUPS AND TRIS AND PORT SET THEM TO 0 OUTPUT
JUST LOOK TO THIS CODE TO GET SOME IDEAS OR POST UR WHOLE CODE SO EVERYONES CAN HELP .
REGARDS
Bookmarks