ATMega8 EEPROM - Probleme

OP #812605
Lesenswert?
• ▲
▼
Hallo!

Ich lese hier schon länger mit, und bisher hab ich für alles eine Lösung 
gefunden, aber jetzt bin ich ratlos.

Mein EEPROM scheint Daten zu vergessen und ich kann mir nicht erklären 
warum. Es lässt sich auch keine Regelmäßigkeit feststellen, wann das 
passiert. Einige Variablen sind dann einfach mit wirren Werten 
überschrieben.

Ich programmiere in C und übers AVRStudio. Was mein Programm tut hab ich 
mal stichpunktartig aufgelistet:

- Timer1  mit CompareA+B, läuft immer für eine Software-PWM
- Variablen werden beim Start aus dem EEPROM ins RAM gelesen und danach 
nicht mehr angerührt. (eeprom_read_word) Erst danach kommt das sei();
- Ein Array wird hin und wieder aus dem Programmspeicher gelesen 
(pgm_read_word)
- Ein ADC-Eingang wird benutzt.
- Die Schaltung wird einfach abgeschalten, dabei fällt die Spannung 
relativ langsam ab.
- LB Lockbits sind gesetzt

Weis da jemand was dazu? Bin echt ratlos.

Grüße, Tobias
Gast #812672
Lesenswert?
• ▲
▼
Wenn die Betriebsspannung abgeschaltet wird, kann, besonders bei großem 
Stütz-C, der Kontroller relativ lange im unteren Spannungsbereich 
arbeiten, wo z. B. der Programmzähler nicht mehr richtig arbeitet. Das 
kann dazu führen dass ungewollt am EEPROM rumprogrammiert wird.
Abhilfe ist die brown-out-Technik: immer wenn die zulässige 
Betriebsspannung unterschritten wird, schaltet sich der Kontroller in 
ein Reset. Dann wird durch die Wartezeit beim Neustart des Programms ein 
Zugriff auf das EEPROM verhindert.
Also bei Verwendung des EEPROM immer Brown-Out aktivieren. Möglichst 
große Start-up-Zeit einstellen.
Gast #821715
Lesenswert?
• ▲
▼
Ich habe auch ein Problem mit dem internen EEprom beim MEGA32.

Ich möchte ein WORD ins eeprom speichern. Dazu benutze ich die eeprom.h 
vom AVR Studio und eeprom_write_word (0x0001,2500);.

Wenn ich jetzt compiliere, dann warnt der compiler mit folgender Meldung
"../main.c:76: warning: passing argument 1 of 'eeprom_write_word' makes 
pointer from integer without a cast"

Weiß jemand von euch woran das liegen könnte.

Danke und Gruss

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren