Programmiersoftware für AVR109 Bootloader auf ATmega16

Gast #312364
Lesenswert?

Hallo,

Ich habe einen ATmega16 mit Bootloader nach der AVR109 Appnote. Ich war
eigentlich der Meinung, dass der mit avrdude zusammenarbeitet. Tut er
aber in der aktuellen Version nicht. Einigen Hinweisen aus dem Web
zufolge soll die CVS-Version von avrdude damit funktionieren. Aber auch
damit lässt sich der Controller nicht programmieren. Gibt es für Linux
eine brauchbare Lösung? Ich könnte auch mit einem beliebigen anderen
Bootloader leben, aber die Software auf der PC-Seite sollte
einigermassen verbreitet sein.

Gruß,
Markus
Gast #312365
Lesenswert?

Kenne mich mit diesem Problem nicht aus, aber in der Manpage von
avrdude steht:

     The device IDs used by AVR910 and AVR109 do not match, so the
avr109
     (aka. butterfly) programmer might report
           selected device is not supported by programmer.
     Use the -F option to force avrdude to contiue anyway.

Hat das damit etwas zu tun?
Gast #312366
Lesenswert?

Ohne die -F Option verweigert avrdude mit der Hardware vollständig den
Dienst. Mit der Option schlägt allerdings das Schreiben fehl.

Ich werde jetzt aber mal die Bootloader von
http://www.siwawi.arubi.uni-kl.de/avr_projects/#avrprog_boot und
http://www.matwei.de/doku.php?id=de:elektronik:usbisp
probieren. Zumindest letztere braucht allerdings deutlich mehr Platz.

Gruß,
 Markus
Gast #312367
Lesenswert?

Markus,

Sebel hat das richtig erkannt.

Der avr910_devcode für den Mega16 im Bootloader Mode ist 0x75, in der
avrdude.conf ist dafür der vom Mega16 im AVR910 Mode eingetragen
(0x74). Wenn Du das in der avrdude.conf änderst, sollte es klappen.
Also Eintrag in avrdude.conf:
#------------------------------------------------------------
# ATmega16
#------------------------------------------------------------

part
    id               = "m16";
    desc             = "ATMEGA16";
    has_jtag         = yes;
    stk500_devcode   = 0x82;
    avr910_devcode   = 0x75;
....                     ^^^^
....

HTH,
Klaus
Gast #312368
Lesenswert?

Ich habe jetzt den eigentlichen Fehler gefunden: Die BOOTSZ-Bits waren
nicht richtig gesetzt. Dadurch hat der Controller den Bootloader zwar
ausgeführt, konnte aber nicht schreiben.

Markus

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