Re: Fehler im Modul ds1621.c2 Kategorie: Programmierung (von Willi aus Oelde - 22.01.2003 13:57) | |
Als Antwort auf Fehler im Modul ds1621.c2 von Pescosta Markus - 20.01.2003 14:29
| |
Hallo Markus, wenn Du am Fehler aussortieren bist, wei�t Du sicherlich auch, warum diese Routine teilweise nicht geht. ;-) ( Auch aus dem Modul DS1621 !) /**Temperatur lesen als Ganzahlwert(Byte)**************************/ function readb(byte addr) returns byte { byte data,x; i2c.start(0b10010000 or (addr shl 1)); i2c.write(0xAA); i2c.start(0b10010001 or (addr shl 1)); data=i2c.read(); x=i2c.readlast(); i2c.stop(); return data; } Das Bit 7 zeigt negative Temperaturen an. Also taugt diese Abfrage nur für Aquarianer :-) Im Ernst: Beim setzen der Temperaturen TH / TL geht das Teil ( DS1621 ) schon. Allerdings wegen des Bugs 0x80 in einem negativen Temperaturniveau ! -32768 bis 32767 fragt man mit 0x8000 auf negativ ab! Ich habs nicht probiert, also kann es immer noch falsch sein. Tipp: Nicht fragen, stell das korrekte Modul gleich in deine Mail ! In diesem Sinne, Willi aus Oelde | |
Antwort schreiben Antworten: Re: Fehler im Modul ds1621.c2 (von Pescosta Markus - 22.01.2003 15:12) |