mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik ATmega8-16 signature + calibration bytes zurückgesetzt


Autor: Finn W. (farthen)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich habe hier einen ATmega8-16, wo die Signature Bytes auf 0xFFFFFF, die 
Calibration Bytes auf 0xFFFF zurückgesetzt wurden. Ich hatte ein 
Programm für einen Tiny2313 genommen, neu für den Mega compiliert und 
übertragen und seit dem habe ich dieses Problem. Der µC lässt sich ohne 
Probleme programmieren und verwenden.

Und nein, am Programmer liegt es nicht, bei einem anderen Mega8-16 und 
einem Tiny2313 lassen sich diese Bytes ohne Probleme auslesen.

Trotzdem sind hier mal die Infos:

Programmer: usbprog (http://www.embedded-projects.net/usbprog) mit AVR 
ISP Firmware

Software: avrdude unter Windows

Schaltung: 
http://www.mikrocontroller.net/wikifiles/f/f6/Mega... auf 
einem Breadboard, Oszillator ist nicht da, interner Takt wird verwendet.


Das hier war relativ ergiebig, wollte den uralten Thread jedoch nicht 
bumpen: Beitrag "ATmega64 vergist seine Signature-Bytes"
Gab es da in den letzten Jahren irgendwelche Erkenntnisse?

Hat irgendwer eine Idee, wie ich die Signature Bytes wiederherstellen 
kann? Und vielleicht auch die Calibration Bytes zumindest auf 0x80 und 
nicht auf 0xFF umstellen?

Autor: Frentzen (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
mich würde auch interessieren ob ich den ATmega irgendwie auf die 
standard-fuses zurücksetzen kann wie er üblicherweise aus der Fabrik 
kommt.

Autor: Finn W. (farthen)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Klar, wenn du über ISP nicht mehr drauf kommst nimmst du halt high 
voltage.

Autor: max power (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
da hast du glaube ich schlechte karten... laut datenblatt:

Signature may be Erased in Serial Programming Mode
If the signature bytes are read before a chiperase command is completed, 
the signature may be erased causing the device ID and calibration bytes 
to disappear. This is critical, espe-
cially, if the part is running on internal RC oscillator.

Problem Fix / Workaround:
Ensure that the chiperase command has exceeded before applying the next 
command.


>Calibration Bytes zumindest auf 0x80 und nicht auf 0xFF umstellen?
eine ander möglichkeit ist den wert im eeprom abspeichern und im 
programm dann nach OSCCAL zu schieben.
wie es ja üblich ist bei den 2,4 und 8 mhz OSCCAL werten.

Autor: Finn W. (farthen)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Oder einen externen clock zu verwenden, was ich jetzt tue :-)

Der mega ist ja noch ansprechbar, halt nur falsche id und so

Autor: max power (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>Und nein, am Programmer liegt es nicht, bei einem anderen Mega8-16 und
>einem Tiny2313 lassen sich diese Bytes ohne Probleme auslesen.

aber irgentwie frage ich mich dann schon wie der hund da reinkommt wenn 
nicht der programmer schuld ist?

das programm kann imho nur so einen fehler produzieren wenn es den 
"bootloader befehl" page erase ausführt und nicht auf die abarbeitung 
wartet.

Autor: Finn W. (farthen)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Nein, die Bytes sind ja auch gelöscht. Das ist kein Programmfehler.

Autor: max power (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
ich hatte nicht richtig überlegt...
ein programm kann auf keinen fall so einen fehler auslösen!
ich dachte ein page erase und gleich danach ein signature read und der 
atmega is hin aber ein bootloader kann keine signatur roh lesen.

allein isp oder hv können signatur roh auslesen und in verbindung mit 
chiperase passiert dann der fehler.

also kurz um, entweder wars ein wackler in den anschlüssen oder der 
programmer hat nen bug und wartet nicht auf beendigung des chiperase 
befehls.

Autor: Finn W. (farthen)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich tippe auf Wackler in den Anschlüssen. Ist ja auch egal, Problem ist 
nur, wie bekomme ich die Signatur wieder geschrieben?

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
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.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.