Evtl. Fehler im Modul eeprom.c2 Kategorie: I²C-Bus (von Rolf - 11.07.2003 18:48) | |
| |
Hallo Herr André Helbig, mir ist evtl. ein Fehler im Modul eeprom.c2 bei eeprom.writestr() oder eeprom.readstr() aufgefallen. Ich habe mir ein 24c512 auf das APP-board gelötet und wollte es testen. Ich benutze das aktuelle OS2 sowie alle weiteren Updates (incl. neuer, wirklich sehr schnell gewordener lcdext). Folgendes Testprogramm zeigt den vermutlichen Fehler: thread main { string mystring; int array[2],y; byte z; lcdext.init(); array[0]=0xA20D; array[1]=4284; y=0; //EEProm-Adresse z=16; //Speicher-Adresse eeprom.writeintarray(y,z,array,2); sleep 1000; array[0] = 0; array[1] = 777; eeprom.readintarray(y,z,array,2); lcdext.zahl(array[1]); mystring=" i2c-Test"; //---------------------- // evtl. fehlerhaft //---------------------- eeprom.writestr(y,z,mystring); mystring=" Fehler"; eeprom.readstr(y,z,mystring); //---------------------- lcdext.print(mystring); quit 63; } Den oberen Teil habe ich mir aus dem Forum abgeschaut und leicht modifiziert. Der untere Teil ist mein Eigenbau und der funktioniert leider nicht. Die Ausgabe ist: 4284 Fehler Es müste aber 4284 i2c-Test kommen. Nun weis ich natürlich erst mal nicht, welche der beiden Funktionen, oder evtl. beide fehlerhaft sind, oder doch nur ein Denkfehler meinerseits vorliegt. Ich habe die Pagesize für das 24c512 in eeprom.c2 schon auf 128 angepasst und bin auch sonst durch den Code gegangen, fand aber nichts. Da die Array-Routine und die String-Routine auf die gleichen Zellen im Eeprom zugreifen, ist ein Fehler des Bausteins fast auszuschlie�en. Bei eeprom.readstr(y,z,mystring); müste in jedem Fall mystring mit dem Inhalt des Eeproms überschrieben werden und da steht eigentlich " i2c-Test" drin. Mit freundlichem Gru� Rolf Diesing | |
Antwort schreiben Antworten: ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |