Forum: Mikrocontroller und Digitale Elektronik Atmega16 Flash und EEPROM Inhalt unplausibel


von Enrico (enricoa)


Angehängte Dateien:

Lesenswert?

Hallo zusammen,
ich habe vor kurzem den Flash-Speicher und den EEPROM eines Atmega16 
16AU ausgelesen. Der Mikrokontroller ist in einer einfachen 
Magnetventil-Ansteuerung verbaut (Analog-Input über ein Poti, zwei drei 
Digitaleingänge und eine Ansteuerschaltung um das Magnetventil 
proportional zu steuern). Die Steuerung hat vor dem Auslesen noch 
funktioniert (wenn auch nicht ganz ordnungsgemäss). Als ich mir die 
Daten des BIN-Files ansah, war ich etwas verblüfft. Sowohl im 
Flashspeicher, als auch im EEPROM waren nur aufsteigende Zahlenwerte.
Im Flash: 00 00 01 01 02 02 03 03 ... FF FF
Im EEPROM: 00 01 02 03 ... FF
Files im Anhang
Zum Auslesen habe ich das myAVR_ProgTool mit dem mySmartUSB MK2 
verwendet.
Fuse/ LockBits waren korrekt gesetzt

Nach dem Auslesen hat die Schaltung gar nicht mehr funktioniert.

Hat irgendjemand eine Erklärung wie es dazu kommen kann?
Ich kann sowohl den Flash als auch den EEPROM ohne Fehler neu 
beschreiben und wieder korrekt auslesen.

Für eure Inputs wäre ich sehr dankbar, da ich soetwas noch nie gesehen 
habe und mir das nicht erklären kann.

Beste Grüsse
Enrico

von Georg G. (df2au)


Lesenswert?

Enrico schrieb:
> Sowohl im
> Flashspeicher, als auch im EEPROM waren nur aufsteigende Zahlenwerte.

Typisch für einen gegen Auslesen geschützten Prozessor.

von Peter D. (peda)


Lesenswert?

Enrico schrieb:
> Sowohl im
> Flashspeicher, als auch im EEPROM waren nur aufsteigende Zahlenwerte.

Genau das erwarten man, wenn die Lockbits gesetzt (= 0) sind. Das 
SPI-Register wird nicht überschrieben und enthält noch das vorher 
empfangene Byte (= low Adresse).

Enrico schrieb:
> Nach dem Auslesen hat die Schaltung gar nicht mehr funktioniert.

Das ist in der Tat merkwürdig, Lesen sollte immer zerstörungsfrei sein.
Nur Erase oder Program zerstört den vorherigen Inhalt.

von Ben B. (Firma: Funkenflug Industries) (stromkraft)


Lesenswert?

Hat er bestimmt gemacht, er sagt ja, daß er Flash und EEPROM nun 
fehlerfrei beschreiben kann...

von Axel S. (a-za-z0-9)


Lesenswert?

Enrico schrieb:
> Im Flash: 00 00 01 01 02 02 03 03 ... FF FF
> Im EEPROM: 00 01 02 03 ... FF
> Fuse/ LockBits waren korrekt gesetzt

Was nennst du "korrekt"? Offensichtlich waren zumindest die Lockbits 
gesetzt, deswegen liest du nur Müll aus dem Flash/EEPROM.

> Nach dem Auslesen hat die Schaltung gar nicht mehr funktioniert.
> Hat irgendjemand eine Erklärung wie es dazu kommen kann?

Offensichtlich hast du weit mehr als "Auslesen" gemacht, nämlich ein 
Chip-Erase. Und ja, danach ist das Programm nicht mehr im µC, sondern im 
Nirwana. Und der µC tut nichts mehr.

> Ich kann sowohl den Flash als auch den EEPROM ohne Fehler neu
> beschreiben und wieder korrekt auslesen.

Damit ist klar, daß du ein Chip-Erase gemacht haben mußt. Denn mit 
gesetzten Lockbits läßt sich der Flash weder auslesen noch beschreiben.

: Bearbeitet durch User
von Cyblord -. (cyblord)


Lesenswert?

Enrico schrieb:
> Für eure Inputs wäre ich sehr dankbar, da ich soetwas noch nie gesehen
> habe und mir das nicht erklären kann.

Ich hätte da einen Input an deinen Chef: Lass keine unwissenden Dödel an 
solche Steuerungen.

Was machst du denn da rum wenn du keine Ahnung hast? Das Ding war 
einfach Auslesegeschützt. Du hast das durch ein Chip Erase aufgehoben 
und der Inhalt ist nun futsch.

von Ben B. (Firma: Funkenflug Industries) (stromkraft)


Lesenswert?

Gute Gelegenheit zum Einstieg in die Mikrocontrollerprogrammierung.

C oder Assembler?

Edit, der TE hat Glück, es ginge sogar mit Ardummino, den ISP-Adapter 
zum Schreiben des Bootloaders hat er ja.

: Bearbeitet durch User
von Oliver S. (oliverso)


Lesenswert?

Enrico schrieb:
> Für eure Inputs wäre ich sehr dankbar, da ich soetwas noch nie gesehen
> habe und mir das nicht erklären kann.

Der Fachbegriff lautet "Bricked", die Tätigkeit dazu "bricken".

Oliver

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.