EEPROM Schreibschutz

OP #1084659
Lesenswert?
• ▲
▼
Hallo,

gerade hier angemeldet und auch schon eine Frage.

Ich habe eine Zutrittskontrolle mit einen Mega8 in C programmiert. Dies 
geschieht mittels iButton. Funktioniert auch ganz gut bis auf ...

Es wird bei Zutrittserlaubnis ein E-Öffner angesteuert, welches alles in 
einem Kabel (cat5) von der Kontaktierung an der Türe hin zum Steuerteil 
übertragen wird. Also die Daten des drangehaltenen iButton und die 
geschaltete Spannung vom Relais zum E-Öffner.

Nun passiert es öffter, dass der Mega8 beim Öffnen oder kurz dannach neu 
bootet. Das kann ich nachvollziehen, weil ich ein "Start beep" eingbaut 
habe, vor der loop Schleife in der alles abgearbeitet wird.

Aber nicht genug, in manchen Fällen werden einfach meine Daten in EEprom 
vom MC einfach überschrieben - nicht selber von mir.

Kann das denn sein ???

Ist es möglich selber im Programm das EEprom davor zu schützen? Irgend 
was zerhaut mir meine Daten vom EEprom.

Hat von euch schon mal jemand sowas gehabt ??
#1084705
Lesenswert?
• ▲
▼
Ist es vielleicht immer das 1. Byte im EEPROM was überschrieben wird?
Irgendwo hiess es mal, das das ein Bug von Atmel ist - Beim Einschalten 
wird manchmal das 1. Byte überschrieben. Bei welchen Typen das Problem 
besteht kann ich leider nicht sagen, aber definiere als erstes lieber 
ein Dummy-Byte, und verwende es nicht.

Aber trotztem solltest Du auch mal deine VCC checken.
Gast #1084711
Lesenswert?
• ▲
▼
E-Öffner = Elektromagnet = Spannungsspitzen beim Ausschalten, 
Stromspitzen beim Einschalten.
Beim Einschalten kann also durchaus kurzzeitig der Spannungsversorgung 
die Luft wegbleiben.
Beim Ausschalten könnte sich der Reset-Pin etwas einfangen.
Such mal unter dem Stichwort "EMV"...
OP #1084838
Lesenswert?
• ▲
▼
Nee, ist komplett Müll im EEprom. Ich werde mal meine VCC - im Moment 
Trafo .... und was dazu gehört - durch einen Bleigelakku tauschen. Mal 
sehen ob das Problem dann nicht auftritt. Wie sollte man denn die als 
Ausgänge definierten Pins des Megas schützen / beschalten?
Im Moment schalte ich das Relais mittels BC337, 
Freilaufdiode,Vorwiderstand an der Basis.

Antwort schreiben

Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt. Bitte hier nur auf die ursprüngliche Frage antworten, für neue Fragen einen neuen Beitrag erstellen.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.