Forum: Mikrocontroller und Digitale Elektronik ATmega128 Problem beim eeprom lesen


von Line H. (line)


Lesenswert?

Hallo zusammen!

Ich habe folgendes Problem:

Ich möchte in meimem ATmega128 Variablen im Eeprom speichern und später 
auslesen und im Terminal anzeigen lassen.
Es werden dann auch die richtige Anzahl an Zeichen ausgegeben, aber 
nicht die richtigen Zeigen, sondern immer nur 'ÿ'.

Weiß jemand woran das liegen könnte?

Vielen Dank für jede Antwort!

Gruß,
Line

von Methan (Gast)


Lesenswert?

Wo ist Dein Programm?

von Läubi .. (laeubi) Benutzerseite


Lesenswert?

Line H. wrote:
> nicht die richtigen Zeigen, sondern immer nur 'ÿ'.

'ÿ' = ASCII 255

Du liest also immer 255 oder 0xFF aus dem EEPROM... eventuell wird 
garnix reingeschrieben?
Bitte auch beachten das beim neuprogrammieren das eeprom gelöscht wird!

von Line H. (line)


Angehängte Dateien:

Lesenswert?

Vielen Dank für die schnelle Antwort!

Ich hab mal nen Teil der betroffenen Funktionen in ner Textdatei 
gespeichert und angefügt.
Eigentlich sollte im eeprom was stehen, aber vielleicht hab ich ja 
irgendwas falsch gemacht.

von Karl H. (kbuchegg)


Lesenswert?

Line H. wrote:

> Eigentlich sollte im eeprom was stehen,

Spontan würde ich da mal den Einfachsttest vorschlagen:
Jedes Brennprogramm kann auch das EEPROM auslesen.
Schau doch einfach mal damit im EEPROM nach, ob überhaupt
was drinnen steht.
Dann weißt du schon mal ob das Problem beim Schreiben oder
beim Lesen entsteht.

von Karl H. (kbuchegg)


Lesenswert?

Nach Quelltext Studium

Dir ist aber schon klar, dass du den EEPROM Inhalt mit deinem
Brennprogramm unter Umständen extra in den Prozessor übertragen
musst?

von Methan (Gast)


Lesenswert?

Wenn Du mit WINAVR arbeitest (aus avr-libc manual):

#include <avr/eeprom.h>

EEMEM unsigned char kennung[6]={'A','-','0','0','0','0'};

Mit "uint8_t eeprom_read_byte  (  const uint8_t *  addr   )" kannst Du 
ein Zeichen lesen.

von Karl H. (kbuchegg)


Lesenswert?

Methan wrote:
> Wenn Du mit WINAVR arbeitest (aus avr-libc manual):

Schau dir das Gepostete an. Das ist unverkennbar Codevision.
Erkennbar an den 5 Seiten Code, der Dinge initialisiert, die
man im Programm gar nicht benutzt.

von Methan (Gast)


Lesenswert?

Hoppla! Ziehe meine Zeilen zurück.

von M. Kriegel (Gast)


Lesenswert?

fuse nicht gesetzt "preserve EEPROM ...." ?

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
Noch kein Account? Hier anmelden.