ramhs4 Kategorie: Programmierung (von Karl - 3.07.2011 13:09) | ||
| ||
Hallo an alle, nach dem ich meine Heizungssteuerung fertig gestellt habe möchte ich zwecks Optimierung derselben die Temperaturen und die Relais-Zustände aufzeichnen. Im Forum habe das unten stehende Testprog. gefunden und damit Versuche gemacht. Leider erfolglos. Beim Auslesen des Speichers kommt es immer zu Fehlermeldungen, siehe weiter unten. Die Tests wurden mit einer separaten C-Control II Station mit über I2C-Bus angeschlossenem Baustein ramhs4 gemacht. (keine weiteren Bauteile waren angeschlossen) const RAM4Addr=10; thread main {long i;int x,y;long timer; hwcom.setspeed(8); hwcom.clr(); hwcom.print("Version: "); hwcom.num(ramhs4.getVersion(RAM4Addr)); hwcom.ret(); hwcom.print("Writing RAM ... "); hwcom.ret(); for i=0...16000/*0x7FFFE*/ step 2 { if (i%100)==0 { hwcom.put(13); hwcom.num(i); } ramhs4.writeint(RAM4Addr,i,(i*7) and 0xFFFF); } hwcom.print(" Ready"); hwcom.ret(); hwcom.print("Reading RAM ... "); hwcom.ret(); for i=0...16000/*0x7FFFE*/ step 2 { if (i%512)==0 { hwcom.put(13); hwcom.num(i); }//*/ x=ramhs4.readint(RAM4Addr,i); y=((i*7) and 0xFFFF); if x!=y { hwcom.put(13); hwcom.num(i); hwcom.print(" Error "); hwcom.num(y); hwcom.print("<>"); hwcom.num(x); hwcom.ret(); } } hwcom.put(13); hwcom.num(i); hwcom.ret(); hwcom.print("Ready"); hwcom.ret(); quit 1; } Hier die Ausgabe über Hyperterminal. Version: 0 Writing RAM ... 16000 Ready Reading RAM ... 2 Error 14<>0 4 Error 28<>0 6 Error 42<>0 8 Error 56<>0 10 Error 70<>0 usw. Wer weis wo der Fehler steckt? Gru� Karl | ||
Antwort schreiben Antworten: Re: ramhs4 (von Karl - 3.07.2011 15:42) Re: ramhs4 (von Karl - 3.07.2011 16:15) |