#include <Wire.h>
void i2c_eeprom_write_byte( int deviceaddress, unsigned int eeaddress, byte data ) {
int rdata = data;
Wire.beginTransmission(deviceaddress);
Wire.write((int)(eeaddress)); // odešle vyšší byte
Wire.write((int)(eeaddress & 0xFF)); // odešle nižší byte
Wire.write(rdata);
Wire.endTransmission();
}
byte i2c_eeprom_read_byte( int deviceaddress, unsigned int eeaddress ) {
byte rdata = 0xFF;
Wire.beginTransmission(deviceaddress);
Wire.write((int)(eeaddress)); // odešle vyšší byte
Wire.write((int)(eeaddress & 0xFF)); // odešle nižší byte
Wire.endTransmission();
Wire.requestFrom(deviceaddress,1);
if (Wire.available()) rdata = Wire.read();
return rdata;
}
void setup()
{
Wire.begin();
Serial.begin(9600);
i2c_eeprom_write_byte(0x50, 2574, 147);
delay(5);
byte a = i2c_eeprom_read_byte(0x50, 2574);
Serial.print("Hodnota je: ");
Serial.println(a);
}
void loop() {}