PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Daten über RS232 in Atmel schreiben



elkokiller
30.10.2006, 18:57
Hallo,

ist es eigentlich möglich über den RS232 z.B. beim Atmega8 Daten in den Speicher zu schreiben die dann im Programm verwendet werden?
Die Daten (Information) sollte aber auch nach einer Unterbrechnung der Stromversorgung erhalten bleiben!
Tobias

for_ro
30.10.2006, 19:21
Hallo,
sollte gehen, wenn du im Programm mit Input oder so einliest. Damit die Daten bei Stromausfall erhalten bleibt, musst du sie mit WriteEeprom wegschreiben.
Eeprom stimmt dann allerdings nicht mehr mit deinem Programm $eeprom Bereich überein. Eeprom nicht zu oft beschreibbar.

Gruß

Rolf

elkokiller
30.10.2006, 19:27
o.k.
Ich habe mir ein kleines Netzwerk im Haus mit einem RS485 Bus aufgebaut.
Ich möchte jetzt einen DCF77 Empfänger einsetzen und zu bestimmten Tageszeiten ein Bit in den Knoten setzen bzw. wegnehmen.

Wenn ich dich richtig verstanden habe ist das EEprom dafür aber nicht geeignet da mind 1mal am Tag geschrieben und gelöscht wird?

for_ro
30.10.2006, 19:53
Wenn du nur einmal am Tag schreibst, ist das kein Problem.
Häufig liest man 100.000 Schreibvorgänge.
Wenn es häufiger pro Tag ist, z.B. jede Minute, dann sollte man immer wieder einen anderen Bereich nehmen.

elkokiller
30.10.2006, 22:01
kannst du mir ein Programmbeispiel in Bascom nennen?
Bisher habe ich nichts dzu gefunden

for_ro
31.10.2006, 07:09
Schau dir mal die Doku zu CONFIG SERIALINPUT, $SERIALINPUT und WRITEEEPROM an. Dort sind auch einige Beispiele.
Willst du nur einmal pro Tag ein Bit empfangen wäre es wohl besser, einen INT Eingang zu nutzen, damit du auch sicher darauf reagieren kannst. Ein Mega8 hat aber glaube ich nur 2 externe Interrupt-Eingänge. Wenn die schon benutzt sind, wird es eng.

elkokiller
31.10.2006, 07:18
nein, das ist kein Problem.
Bei mir nutzt der RS485 Bus einen Interrupteingang umd den Atmega auf Empfang zu schalten.
Ich muss jetzt nur noch meinen übertragenen Text entsprechend anpassen

Danke für die Hilfe