Eeprom Zugriff und Interrupts

Gast #273097
Lesenswert?
• ▲
▼
Hallo zusammen,
Ich habe das Problem, dass ich (sehr selten) Müll im Eeprom stehen
habe, wo eigentlich ordentliche Display-Texte stehen sollten. Meine
Frage daher: Kann es sein, dass wenn ein Interrupt während des
Lesezugriffs auftritt, Müll in das Eeprom geschrieben wird? Das Müll
gelesen wird, könnte ich ja verstehen.
Und wenn das der Fall ist, wo sollte ich dann die Interrupts sperren
und wieder freigeben, um nicht allzu viel Zeit zu verlieren?
Ein Auszug aus dem Quelltext befindet sich im Anhang.
CPU: ATMega32L
besten Dank im voraus!
Oliver
Angehängte Dateien:
Gast #273098
Lesenswert?
• ▲
▼
Hm... Entweder hast du ein Problem mit deiner Spannungsversorgung, oder
die EEPROM-Schreib-/Lese-Routinen funktionieren nicht richtig...

Kenne mich mit AVR (noch) nicht so gut aus, aber ich glaube, beim
Schreiben ins EEPROM musst du die Schreib-Erlaubnis erst aktivieren.
Danach muss innerhalb von 4 Oszillator-Zyklen das Schreiben erfolgen,
sonst verfällt die Erlaubnis wieder... Speziell dort solltest du also
Interrupts sperren, nach dem Schreiben wieder freigeben...

Und ich meine irgendwo mal was gelesen zu haben, dass man bei einigen
AVRs, die sehr schnell getaktet sind, den Lese-Befehl zweimal ausführen
soll, damit die Chip-Hardware genug Zeit hat, um das EEPROM auszulesen.
Ob das für den Mega32 zutrifft, weiss ich nicht... Dieser ist glaube
ich bis 8MHz spezifiziert...

Wie gesagt, das sind alles Informationen, die ich noch nicht auf
Korrektheit geprüft habe. Also nicht drauf pochen, das die Infos von
mir stimmen...

Ralf

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 20 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

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.