Signatur v. Atmega16 plötzlich anders

OP #1381306
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?
#1381321
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.
#1381712
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.
OP #1382630
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?!
Gast #1398413
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..
OP #1399644
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...

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