www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Programmiersoftware für AVR109 Bootloader auf ATmega16


Autor: Markus Schaub (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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

Autor: Sebel De Tutti (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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?

Autor: Markus Schaub (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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

Autor: Klaus Leidinger (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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

Autor: Markus Schaub (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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

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.