Re: Speicherbaustein Kategorie: Programmierung (von Lars - 14.02.2006 10:42) | ||
Als Antwort auf Speicherbaustein von Ulli K. - 12.02.2006 19:04 | ||
| ||
> /*Hallo C-Control II Gemeinde, > > /*Mit eeprom.readint(3,1) laest sich der abgespeicherte Wert nicht > auslesen; hwcom.print (s) zeigt null an. > Wie kann ich ueberpruefen ob der Speicherbaustein ok ist? > Ist die Programmierung richtig? > > Speicherbaustein: 24C512 > EEPROM Modul vom 2 Febr. 2004 > C-Control II 2 Wochen alt dh.mit CC2 V3.0 vom 03.01.2004 Betriebssystem) > Starterboard von CC-Tools*/ > ****************************************************************************************** > int i,v,z; > string s; > > thread main{ > hwcom.init(); > eeprom.writeint(3,1,3); > > sleep 500; > > s = "Speicherwert ="; > hwcom.print (s); > hwcom.ret(); > > wait hwcom.ready (); > > i = eeprom.readint (3,1); > sleep 500; > > str.putint (s,i); > hwcom.print (s);//null wird angezeigt. > hwcom.ret(); > wait hwcom.ready ();} > > Danke für die Hilfe. . > > Ulli K. Hi Ulli, also an der Programmierung selbst ist alles richtig, au�er dass nicht ersichtlich ist, ob und welche Bautrate du einstellst.Und wenn die Adresspinspins des EEPROM korrekt mit dessen Betriebsspannung verbunden ist, müsste die Verkabelung auch stimmen. Jedoch muss ich sagen, hatte ich das gleich Problem auch ein paar mal am Anfang und habe nicht weiter nachgefragt. Um auszuprobieren, ob der Speicherbaustein ok ist, habe ich den Wert damals in 2 einzelne Bytes aufgeteilt und dann gespeichert. Anschlie�end habe ich diese wieder rausgelesen und zusammen gefügt. {Wenn einer von den Experten das liest, bitte nicht gleich sauer werden}. Damit du jetzt nicht schnaufst, habe ich dir das mal aufbereitet für dein Programm: int i; byte a,b; string s; thread main { hwcom.init(); i=3; a = ( ( i & 0xFF00) shr 8); b = ( i & 0x00FF); eeprom.writbyte(3,1,a); eeprom.writbyte(3,2,b); s = "Speicherwert ="; hwcom.print (s); hwcom.ret(); wait hwcom.ready (); a = eeprom.readbyte (3,1); b = eeprom.readbyte (3,2); i = i or (a shl 8); i = i or b; sleep 500; str.putint (s,i); hwcom.print (s);//null wird angezeigt. hwcom.ret(); wait hwcom.ready (); } Sollte es immer noch nicht funktionieren, bin ich entweder blind, was dein Programm angeht oder mit dem EEPROM bzw der verkabelung stimmt etwas nicht. mfg Lars | ||
Antwort schreiben Antworten: |