Hi,
Sorry, I had one bug there. One pause missing.
Code:
<code><font color="#000000">CMCON = 7
TRISA = %11000000
TRISB = %00000000
SDA <b>VAR </b>PortA.3
SCL <b>VAR </b>PortA.4
LED <b>VAR </b>PortB.0 <font color="#000080"><i>'Indicator LED (change if needed)
</i></font>I2CDeviceEEprom <b>VAR BYTE
</b>I2CAddressEEprom <b>VAR WORD
</b>TEMP1 <b>VAR BYTE
</b>TEMP2 <b>VAR BYTE
</b>I2CDeviceEEprom=$A0 <font color="#000080"><i>'DeviceID 10100000 = $A0 = %1010 A2=0, A1=0, A0=0 R/W=0
</i></font><b>DEFINE </b>OSC 4
Main:
I2CAddressEEprom = 0
TEMP1 = 1
<b>GOSUB </b>Write_I2C
<b>PAUSE </b>10
<b>GOSUB </b>Read_I2C
<b>IF </b>TEMP1 = TEMP2 <b>THEN
HIGH </b>LED <font color="#000080"><i>'If OK then 0.5s LED blink
</i></font><b>PAUSE </b>500
<b>LOW </b>LED
<b>ELSE
HIGH </b>LED <font color="#000080"><i>'If FAIL then 2s LED blink
</i></font><b>PAUSE </b>2000
<b>LOW </b>LED
<b>ENDIF</b>
<b>PAUSE </b>1000 <font color="#000080"><i>'PAUSE ADDED</i></font>
<b>GOTO </b>Main
Write_I2C:
<b>I2CWRITE </b>SDA, SCL, I2CDeviceEEprom, I2CAddressEEprom,[ TEMP1 ]
<b>RETURN
</b>Read_I2C:
<b>I2CREAD </b>SDA, SCL, I2CDeviceEEprom, I2CAddressEEprom,[ TEMP2 ]
<b>RETURN
END
</b></code>
Now it will blink.
BR,
-Gusse-
Bookmarks