
Originally Posted by
financecatalyst
Can you please add one example to read and one to write?
I went through the manual but it does not have an example on how to write statements for INTERNAL EEPROM.
Straight from the SAMPLES folder of your compiler ...
Code:
' I2CREAD and I2WRITE Commands
'
' Write to the first 16 locations of internal I2C EEPROM
' Read first 16 locations back and send to serial out repeatedly
' Note: for PIC12CE67x MCU's
Include "modedefs.bas" ' Include serial modes
Define I2C_INTERNAL 1
ADCON1 = 7 ' Set ADC pins to digital operation
SO con 1 ' Define serial output pin
DPIN var GPIO.6 ' Data line to internal EEPROM
CPIN var GPIO.7 ' Clock line to internal EEPROM
B0 var byte
B1 var byte
B2 var byte
For B0 = 0 To 15 ' Loop 16 times
I2CWRITE DPIN,CPIN,$A0,B0,[B0] ' Write each location's address to itself
Pause 10 ' Delay 10ms after each write
Next B0
mainloop: For B0 = 0 To 15 step 2 ' Loop 8 times
I2CREAD DPIN,CPIN,$A0,B0,[B1,B2] ' Read 2 locations in a row
Serout SO,N2400,[#B1," ",#B2," "] ' Print 2 locations
Next B0
Serout SO,N2400,[10] ' Print linefeed
Goto mainloop
also available @ Melabs site in the support section ...
Alain
Bookmarks