Hallo Gemeinde, meine Schaltung hat leider keinen EEPROM, mein MSP430 keinen FRAM und ich müsste 1 Byte ablegen, das auch einen Stromausfall "überleben" wird. Meine Schaltung besitzt allerdings einen DS1820 und im Datasheet ist von 2 User Bytes die Rede (siehe Scratchpad-Aufbau). Eines der beiden Bytes (Byte 2 oder Byte 3) könnte ich doch für solche Zwecke hernehmen oder? z.B. ich speichere dort 0x34 ab und kann nach einem Stromausfall dort auch wieder 0x34 lesen? Hat das schon mal jemand erfolgreich gemacht? Herzlichen Dank!
Probiert habe ich es noch nicht, aber das Datenblatt ist eindeutig. Die beiden Userbytes liegen im EEPROM und behalten damit ihren Wert, wenn die Spannung abgeschaltet wird. Figure 7. DS18B20 Memory Map (Auszug aus dem Datenblatt)
1 | ... |
2 | Byte 2 T H Register or User Byte 1 |
3 | Byte 3 T L Register or User Byte 2 |
4 | ... |
Danke - Wenn das wirklich möglich ist, wäre das eine absolut feine Sache. :-)
Sven Scholz schrieb: > Danke - Wenn das wirklich möglich ist, wäre das eine absolut feine > Sache. :-) Hallo Sven, wenn Du die Alarmgrenzen nicht verwendest, kannst Du die beiden Bytes TH/TL für eigene Zwecke verwenden. Eine Änderung von TH alleine läuft wie folgt: - komplettes Scratchpad lesen - TH anpassen - TH, TL, CONF zurückschreiben - diese drei Scratchpad Bytes ins EEPROM schreiben Bei einem Gerät bei dem mehrere Sensoren am Bus sitzen kann so während der Inbetriebnahme die Sensorposition direkt ins EEPROM schreiben. Alternativ müsste das Gerät eine Information bekommen, welche 1wire-Adresse einer Sensorposition entspricht. Hat auch Vorteile, aber der o.g. Ansatz ist oft einfacher. Im Config-Byte legst Du die Auflösung/Wandlungszeit fest. Daher ist es wichtig, dass Du auch das Config-Byte sauber setzt. marcus
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.