Re: eeprom.writelong - Was mache ich da falsch Kategorie: I²C-Bus (von Franz - 16.01.2004 14:19) | |
Als Antwort auf Re: eeprom.writelong - Was mache ich da falsch von André H. - 16.01.2004 13:56
| |
Danke, werd ich gleich probieren! mfg, Franz > Hallo Franz, > > Das liegt leider an den von mir so hei� geschätzten Compiler, an > der Unterscheidung zwischen Integer und Long. > Irgendwie war mir das damals nicht aufgefallen. > > Ersetzte im Modul eeprom.c2 folgende Zeilen in der Funktion readlong > data = (i2c.read() shl 8) or i2c.read(); > data = (data shl 16) or (i2c.read() shl 8) or i2c.readlast(); > durch diese: > data = i2c.read(); > data = (((((data shl 8) or i2c.read()) shl 8) or i2c.read()) shl 8) or i2c.readlast(); > > Dann sollte es funzen. > Das gleiche Problem gibt's nochmal bei readlongarray() . > Ich werde in kürze ein Update von eeprom.c2 hochladen. > Dann sind diese Bugs behoben. > > MfG André H. > > > Hallo, > > > > ich brauche da wiedereinmal Hilfe: > > > > ich schreibe z,B.: die Zahl 60 000 mit "eeprom.writelong(0,0,60000) in ein 24C65, > > wenn ich dann das ganze mit "eeprom.readlong(0,0) auslese erhalte ich die Zahl: -25786... > > > > das ganze funktioniert aber mit 30 000 - warum also nicht mit 60000? > > > > Ich würde mich freuen, wenn mir da jemand weiterhelfen könnte... > > > > Danke schon mal im Voraus! > > Gru�, > > > > Franz | |
Antwort schreiben Antworten: |