How-To SEDU lights

chip45 Bootloader zur Firmware-Aktualisierung des SEDU-Boards

Das Sedu-Board kann zum vereinfachten Flashen mit einem Bootloader versehen werden. Hat man dies einmalig per ISP-Anschluss und entsprechendem Programm erledigt, kann man anschließend neue Firmware über die Bootloader-Software am PC aufspielen. Dies macht einen externen ISP-Brenner überflüssig. Da immer wieder Fragen zur Vorgehensweise mit dem Bootloader bestehen, hierzu ein kleiner Artikel.

Mit einem neuen SEDU-Board beginnt man damit, die Firmware für den Bootloader aufzuspielen. Dies lässt sich nur über den ISP-Anschluss realisieren, ist aber i.d.R. auch nur einmalig nötig. Alles, was Sie benötigen, finden Sie auf http://www.chip45.com. (Sollten Sie über keinen ISP-Brenner verfügen, kann beim Erwerb des SEDU-Boards auf Anfrage dieser schon aufgespielt werden.) Zunächst benötigen Sie die HEX-Files (http://www.chip45.com/download/chip45boot2_v2.9C_pre.zip oder aktuellere), die für den jeweiligen Prozessor per ISP aufgespielt werden müssen. Im Falle des SEDU-Boards mit ATmega16 ist es die Datei chip45boot2_atmega16_uart0_v2.9C.hex. Nutzen Sie dazu die Brennsoftware der Wahl, z.B. AVRDUDE oder MyAVRProgTool.

myAVRProgTool für Bootloader

Neben der Bootloader-Firmware müssen noch die Fuse-Bits richtig gesetzt werden. Die Einstellungen sind 16MHz externer Quarz ohne Vorteiler sowie Boot reset vector enabled mit 1024 Wörtern Größe. Das Low-Fuse-Bit für den ATmega16 ist auf 0xFF zu setzen, das High-Fuse-Bit auf 0xD8.

Sobald dieser erste Schritt abgeschlossen ist, kann man fortan neue Firmware über den Bootloader aufspielen. Zu beachten ist, dass die Firmware nicht größer sein darf als etwa 14kB, da der Bootloader 2kB Platz benötigt.

Bootloader verwenden

Zum Aufspielen verwendet man die GUI des Chip45-Bootloader (http://www.chip45.com/download/chip45boot2_GUI_V1.12.zip V1.12 oder höher). Folgende Randbedingungen müssen dabei erfüllt sein:

  • auf dem SEDU-Board müssen die UART-Jumper auf USB gesetzt sein
  • der ATmega16 muss mit Spannung versorgt werden (entweder über USB oder extern)
  • der FTDI-Treiber für den virtuellen COM-Port muss korrekt installiert sein

Nach dem die Verbindung des SEDU-Boards über USB hergestellt ist, wird der entsprechende COM-Port in der Chip45-GUI angezeigt. Dieser wird ausgewählt und eine entsprechende Baudrate (250.000 Baud, „show non standard baudrates“). Anschließend betätigt man die Schaltfläche Connect to Bootloader. Für das Herstellen der Verbindung hat man nach dem Start des Controllers allerdings nur 2 Sekunden Zeit. Deshalb muss man i.d.R. noch den Reset-Taster drücken.

Alternativ gibt es die Möglichkeit, einen „pre-bootstring“ einzugeben. Dieser lautet: seduboot. Wenn man damit die Connect-Schaltfläche drückt, wird i.d.R. ohne Drücken von Reset die Verbindung hergestellt. Dies setzt voraus, dass bereits eine Firmware installiert war.

Ist die Verbindung hergestellt, kann man die ausgewählen Firmware-Dateien (Hex-File und/oder EEP-File) per Program brennen. Ein Klick auf Start Application verlässt den Bootloader und startet die Firmware.

Verbindung zur GUI herstellen

Firmware brennen

 

 

 

 

 

 

Noch ein Hinweis zur Auswahl der Baudrate: die Taktfrequenz des µC ist entscheidend für die Auswahl der Baudrate. Die Division von

Taktfrequenz / 16 / Baudrate

muss eine ganze Zahl ergeben bzw. darf nicht mehr als 2% davon abweichen, da ansonsten die Fehler bei der Übertragung zu hoch sind.

1 Kommentar

Kommentar hinterlassen