HI Bob,
thanks for the idea ... I've did something like that :
#define disk1 0x50 //Address of 24LC256 eeprom chip
#include <Wire.h>
byte array [30] [12] = {
//as many vals as dim1
{0,0,0},
{0,0,0}//as many rows as dim0
};
byte readEEPROM(int deviceaddress, unsigned int eeaddress )
{
byte rdata = 0xFF;
Wire.beginTransmission(deviceaddress);
Wire.write((int)(eeaddress >> 8)); // MSB
Wire.write((int)(eeaddress & 0xFF)); // LSB
Wire.endTransmission();
Wire.requestFrom(deviceaddress,1);
if (Wire.available()) rdata = Wire.read();
return rdata;
}
void writeEEPROM(int deviceaddress, unsigned int eeaddress, byte data )
{
Wire.beginTransmission(deviceaddress);
Wire.write((int)(eeaddress >> 8)); // MSB
Wire.write((int)(eeaddress & 0xFF)); // LSB
Wire.write(data);
Wire.endTransmission();
delay(5);
}
void setup()
{
int n,m,z,k,l,i,c;
n = 416;
k = 0;
z = 0;
Serial.begin(9600);
for (i =0; i >= n ; i = i +13)
{
m = k * 13;
c = 0;
for ( l = m ; l > (m + 13); l++)
{
array[k][c] = readEEPROM(disk1, l);
c = c + 1;
}
k = k + 1;
}
}
void loop()
{
delay(4000);
}
I think could be fine, what do you think ?
thanks gnux