Forum: Mikrocontroller und Digitale Elektronik Signatur v. Atmega16 plötzlich anders


von Johannes (menschenskind)


Lesenswert?

Hallo

Über das AVR-Studio und einen USB-ISP-Programmierer konnte ich meine 
Atmega ganz problemlos programmieren.
Ich nahm den uC aus meinem Testaufbau um einige andere Atmegas noch zu 
testen, ob diese noch funktionierten.
Als ich danach den Atmega16 wieder einsteckte konnte ich ihn weiterhin 
problemlos programmieren, nur die Signatur wird jetzt mit 0xFF 0xFF 0xFF 
angegeben. "Warning: Signature doesn't match selected device"
Und natürlich habe ich dort im DropDown-Menü den ATmega16 ausgewählt.

Jemand ne Idee?

von Magnus Müller (Gast)


Lesenswert?

Steckt der Controller richtig herum im Sockel?

Ist evtl. ein Pin verbogen?

von Peter R. (pnu)


Lesenswert?

Da klappt das Lesen der Signatur nicht: Datenleitung bleibt permanent 
auf high.

Die üblichen Verdächtigen:

Der Kontroller ist gekillt.
Die Masseleitung des Kontrollers fehlt, er ist nur an +5V angeschlossen.
Die ISP-Verbindung besteht nicht, entweder auf Seite des 
Programmiergeräts oder auf Seite des Kontrollers.
Der Kontroller ist verfused, nicht mehr lesbar, weil er keinen Takt mehr 
hat.
usw.

von Johannes (menschenskind)


Lesenswert?

Na klar steckt der richtig rum! Ich schrieb doch, dass er sich weiter 
problemlos programmieren ließ.

von Johannes (menschenskind)


Lesenswert?

Sorry Peter, aber hast du dir meinen Text mal richtig durchgelesen oder 
nur den Betreff???

von Peter Z. (hangloose)


Lesenswert?

Versuch mal die ISP Frequenz zu verringern...
Vielleicht hilft das?!

von Johannes (menschenskind)


Lesenswert?

hallo anderer Peter.

Das habe ich tatsächlich bereits versucht, ohne Besserung.
Welchen Zweck hat eigentlich die Signatur?
Die Funktion des uC ist durch eine falsche hoffentlich nicht 
beeinträchtigt, oder?

von Peter R. (pnu)


Lesenswert?

Die Signatur dient zuerst mal dazu, zu erkennen, ob das richtige IC 
angesprochen ist. (stammt aus der JTAG-Technik) Das Funktionieren des 
Signatur-Lesens zeigt erst einmal, dass die ISP-Verbindung zum IC 
vorhanden ist. Zum Programmieren kommt noch als Zusatzbedimngung, dass 
die Übertragungsgeschwindigkeit mit dem Takt des Kontrollers harmoniert. 
Deswegen kann ich mir gut vorstellen, dass die Signaturabgabe klappt und 
das Programmieren nicht. Der von Dir beschriebene umgekehrte Fall kommt 
mir unwahrscheinlich vor. Sowas kann ich mir nur damit erklären, dass 
das bisherige Programm unverändert im Kontroller geblieben ist, und nur 
scheinbar neue Programmierung erfolgt ist. Ist das neue Programm so 
verschieden vom alten, dass dieser Fall ausgeschlossen werden kann?

Die Signatur ist meines Wissens in ROM-Form im Kontroller 
eingeschrieben, sie ist unabhängig vom im EEPROM befindlichen Programm.

von Johannes (menschenskind)


Lesenswert?

Das werd ich heut Abend gleich mal verifizieren.

von Pete K. (pete77)


Lesenswert?

Ist der Testaufbau ok ?
Abblockkondensatoren ?
Spannungsversorgung ok ?
Schwingt der Quarz(oszillator/Resonator) ?

Woher weisst Du, dass das Programmieren funktioniert ?

von Kasperle (Gast)


Lesenswert?

Das hatte ich auch mal vor Jahren (1997) bei einem AT90S1200. 
Funktioniert aber bis heute einwandfrei in der Schaltung.

von Benedikt K. (benedikt)


Lesenswert?

Beim AT90S1200 stand die Signatur aber auch noch in einem beschreibbaren 
Speicher und es gab einen Befehl um diese per ISP zu schreiben. Das ist 
afaik bei neueren AVRs anders.

von Johannes (menschenskind)


Lesenswert?

Schaltungsaufbau ist in Ordnung. Ein identischer mega 16 lässt sich 
wunderbar auslesen und beschreiben.

Auch beim Sorgenkind klappt die Programmierung einwandfrei. Ich habe zum 
Testen mal eine LED-Blinken lassen. Funktioniert.

Echt rätselhaft das Ganze.
Wie gesagt, ich habe den mega16 ausgebaut, nen mega32 getestet und den 
mega16 dann wieder drangesteckt. Und dabei muss wohl irgendwas da drin 
passiert sein.
Aber solange er sich noch programmieren lässt, dürfte es doch keine 
Probleme geben, gell?!

von Hannes (Gast)


Lesenswert?

Schmeiss in weg. Du weisst nicht, was mit dem los ist. So teuer sind die 
nicht.

von holger (Gast)


Lesenswert?

>Aber solange er sich noch programmieren lässt, dürfte es doch keine
>Probleme geben, gell?!

Da würde ich nicht drauf wetten. Es muss ja einen Grund
geben wieso der seine Signatur verloren hat.

von Johannes (menschenskind)


Lesenswert?

irgendwas stimmt hier nicht.
Jetzt bringt auch mein 2. nagelneuer mega16 als Signatur nur 0xFF

Ich habe zwischenzeitlich nur eine SD-Karte mit an den SPI-Bus gehängt.

Ich werd noch blöde hier.
Das Auslesen der Signatur eines anderen Mega32 klappt hingegen sofort.

von Tim (Gast)


Lesenswert?

Und du bist sicher, das die ebenfalls am MISO/MOSI/SCK angeschlossenen
"Geräte" nicht diese Leitungen "stören" ?

Zur ISP hast du keine Widerstände, zu den anderen "Geräten" die in der
AN beschriebenen Widerstände drin ? Sind die gross genug, damit evtl.
Effekte wie GND oder VCC auf der Leitung durch externe Geräte nicht die
ISP-Schnittstelle stört ?

Grüsse..

von Johannes (menschenskind)


Lesenswert?

Daran lag es nicht, hatte die Verbindungen auch wieder gekappt.
War ein Problem mit meinem Programmer, jetzt geht's wieder.

Aber seltsam ist, dass mein Standard-Blinkprogramm auf dem Mega16 
funktioniert, beim mega32 aber nicht.
hab auch artig im AVR-Studio unter Projektoptionen immer den jeweiligen 
Schaltkreis ausgewählt.
Die Portbezeichnungen sind ja bei beiden identisch.

Ich kann mir da keinen Reim drauf machen

UPDATE: die BROWNOUT-Fuse war auf 4V gestellt und meine Schaltung läuft 
mit 3,3V...

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.