Hallo Leute,
ich habe das M24LR-Discovery Kit http://www.st.com/web/en/catalog/tools/FM116/SC1444/PF253360 günstig erstanden und wollte über Arduino den EEPROM auslesen. Dazu habe ich mein Arduino über die I²C Schnittstelle verbunden um anschließend die Adressen der I²C Geräte zu ermitteln (Geantwortet haben 0x39, 0x53 und 0x57). Über die Seite http://www.st.com/web/en/catalog/tools/FM116/SC1444/PF253360 habe ich mich dann eingelesen wir man Daten aus dem EEPROM auslesen kann. Über die Adresse 0x53 erhalte ich zwar „irgendwann“ den gewünschten Wert aber eher schlecht als recht. Es scheint nur sporadisch zu funktionieren, auch habe ich das Gefühl, dass ich nur 32bytes pro Lesevorgang auslesen kann.
Also im Klartext suche ich einen Weg, gezielt den hinterlegten Text im EEPROM auszulesen. Der Text änderbar, zur Zeit steht drin "M24LR04E-Discovery".
Den Code zum Scannen der Adressen habe ich hier entnommen:
http://playground.arduino.cc/Main/I2cScanner
...am Ende vom Scanner habe ich dann den Code zum Auslesen angehängt, das ganze steht im Loop:
...
...
Serial.print("Werte lesen: ");
Wire.requestFrom(0x53, 120); // request bytes from device
while(Wire.available()) // device may send less than requested
{
char c = Wire.read(); // receive a byte as character
Serial.print(c); // print the character
}
Serial.println("\n");
delay(2000);
Wie man sehen kann konnte ich den Text schon einmal auslesen (siehe Zeile "Werte lesen:"):
Das folgende Bild habe ich mit Android per NFC aus dem M24LR-DISCOVERY ausgelesen, wie zu sehen ist, ist der Text "M24LR04E-Discovery" darauf enthalten: