AVRDRAGON ISP-Programmierung

OP (Firma: Loch Leiterplatten) #2759642
Lesenswert?

Habe ein board mit ISP-Programmierschnittstelle, Atmega32-16PU
Der Controller hat einen externen Quarz, der aber mit einem 
jungfräulichen Controller nicht taktet. Das kann aber am Lieferzustand 
liegen.

Versuche Programmierung über ISP mit Dragon.
Musste den Takt variieren bis ich bei 250kHz endlich mal die device id 
ausgelesen habe: 0x1E9502. Zuvor gab es andere Ergebnisse, die dann als 
fehlerhaft und rot gekennzeichnet waren.
Anschließend habe ich versucht fuse bits zu programmieren. Dabei kam 
dann schon wieder die Fehlermeldung, dass der Programmiermode nicht 
geht.
Anschließend konnte ich mit keiner Takteinstellung mehr die device id 
lesen.
Benutze AVR Studio6 und alles ist auf letztem Stand.
Soll ich den Dragon wegwerfen?
Bei der Zahl der bereits geschilderten Probleme ist das schon eine 
Zumutung!
Gast #2759653
Lesenswert?

Meine Fresse...

Gerd Loch schrieb:
> Quarz, der aber mit einem jungfräulichen Controller nicht taktet

Steht in jedem Tutorial:  Taktfrequenz im Auslieferungszustand = 1MHz, 
interner Oszillator

Gerd Loch schrieb:
> bis ich bei 250kHz endlich mal die device id ausgelesen habe

Steht in jedem Tutorial:  ISP-Frequenz = 1/4 Taktfrequenz


So, und den Dragon brauchst Du bestimmt nicht wegwerfen, sondern fleißig 
Tutorials lesen. Als erstes würde ich prüfen, ob der Dragon im AVRStudio 
noch angemeldet ist und die ISP-Verbindung zum Controller noch besteht. 
Wenn nicht, dann halt alles beenden und noch mal starten, einstöpseln 
und ISP neu connecten.
Gast #2759677
Lesenswert?

Klassisches Problem:
Die Badehose ist schuld wenn du nicht schwimmen kannst.


>Versuche Programmierung über ISP mit Dragon.
>Musste den Takt variieren bis ich bei 250kHz endlich mal die device id
>ausgelesen habe: 0x1E9502. Zuvor gab es andere Ergebnisse, die dann als
>fehlerhaft und rot gekennzeichnet waren.

Klingt so als wärst du ohne Ahnung in die Vollen gegangen.

ISP Frequenz <= FCPU/4 das steht hier alle Nase lang.
Ich glaub das AVR Studio gibt dir glaub ich auch den Hinweis das man die 
ISP Frequenz checken soll, aber warum Fehlermeldungen lesen.

>Anschließend habe ich versucht fuse bits zu programmieren. Dabei kam
>dann schon wieder die Fehlermeldung, dass der Programmiermode nicht
>geht.
>Anschließend konnte ich mit keiner Takteinstellung mehr die device id
>lesen.

Ich glaub du hast es geschafft die Fuses zu ändern, aber du hast ihn 
wohl verfused. Sogar mit Erfahrung, stellte ich die Fuses nur um wenn 
man min zwei mal über die Wahl nachgedacht habe. Vielleicht hast du noch 
ne möglichkeit den Chip zu retten. Such mal nach "verfused"

Das nächste mal lieber sich ein bisschen mit der Materie vertraut machen 
und dann erst loslegen.


Gruß Matthias
Gast #2759690
Lesenswert?

Mal eine Frage,

"Firma: Loch Leiterplatten"

Sind das die in Berlin Adlershof "loch-leiterplatten.de", die für eine 
1-lagige Europlatine über 100 Euro haben möchten und das auch nur bei 
Selbstabholung?

Donnerwetter sind das Preise.

Da traut man sich als normalsterblicher nicht mal probeweise ein Häkchen 
bei 2-Lagig zu machen. ;)
OP (Firma: Loch Leiterplatten) #2759777
Lesenswert?

Hallo Mathias,

wahrscheinlich hast Du recht mit dem "verfused".
Ich habe einen neuen eingesteckt und da geht es wieder mit den schon 
zuvor ermittelten 250kHz.
Zu anderen Kommentaren:  Dass <1/4 Taktfrequenz verwendet werden soll 
kann ich wohl lesen aber woher weiß ich, wie der Default-Wert für den 
Takt eingestellt ist?
Nachdem ich jetzt bei dem Neuen die Fuses auslesen konnte, sehe ich dass 
der Takt SUT_CKSEL = INTRCOSC_1MHZ_6CK_64MS_DEFAULT ist. Dazu passen 
dann die 250kHz.

Das liegt vermutlich daran, dass Atmel für mich Neuland ist und ich 
beglückwünsche alle anderen die es alles schon wissen.

Gerd
Gast #2759810
Lesenswert?

Hi

>Zu anderen Kommentaren:  Dass <1/4 Taktfrequenz verwendet werden soll
>kann ich wohl lesen aber woher weiß ich, wie der Default-Wert für den
>Takt eingestellt ist?

Aus dem Datenblatt.

>Nachdem ich jetzt bei dem Neuen die Fuses auslesen konnte, sehe ich dass
>der Takt SUT_CKSEL = INTRCOSC_1MHZ_6CK_64MS_DEFAULT ist. Dazu passen
>dann die 250kHz.

Nein. Der ISP-Takt soll kleiner als 1/4 der Taktfrequenz sein. 250kHz 
sind aber gleich 1/4 der Taktfrequenz.
Im Lieferzustand läuft der interne RC-Oszillator. Der ist zwar auf 1MHz 
eingestellt hat aber gewisse Toleranzen. Es kann mit 250kHz 
funktionieren ist aber nicht sicher.

MfG spess
OP (Firma: Loch Leiterplatten) #2759838
Lesenswert?

ich bin ja lernbereit. Nach nochmaligem Suchen im Datenblatt habe ich 
den Abschnitt "Default Clock" gefunden.

Nächste Frage: wenn ich einen bereits programmierten Controller 
duplizieren möchte, werden beim Auslesen die Fuse-bits auch mit 
übernommen oder muss ich die zuerst manuell im Dragon-Menü eingeben und 
programmieren?

Gerd
OP (Firma: Loch Leiterplatten) #2761977
Lesenswert?

habe meinen verfusten Atmega32 wieder entfust mit Hilfe des STK500 und 
paralleler bzw. HV-Programmierung. Dazu muss beim Atmega32 der auf dem 
STK500 vorhandene Controller entfernt werden und der Clock <=50kHz 
eingestellt werden.
Danke für alle brauchbaren Kommentare.

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