U23 2005/Fnordlicht quickstart howto
Dieses fnordlicht quickstart howto beschreibt die Schritte zur ersten Inbetriebnahme.
Contents
Kabel
Folgende Kabel braucht Ihr für die Inbetriebnahme:
- Stromversorgung: zweipoliges Kabel mit 2.54mm Doppelbuchse.
- ISP-Kabel für den Parallelport, beschrieben in Atmel Mikrocontroller Kickstart
- Serielles Kabel mit Pegelkonverter (z.B. MAX232)
Benötigte Software
Um dem fnordlicht Leben einzuhauchen bedarf es einiger Software. Im folgenden wird das Vorgehen mit Linux verwendet. Wir ermutigen jeden, auch Werkzeuge auf anderen Betriebsystemen zu benutzen. Für Linux folgende Software besorgen
- uisp: Micro In-System Programmer für Atmels AVR MCUs
- Benötigt Kernel-Support für ppdev und parport; ist bei den meisten Distributionskernel dabei,
- avra: Assembler für Atmel AVR Microcontroller
- avrdude: In-System-Programmer: Download/Upload/Ändern des Inhalts von ROM und EEPROM
- darcs: Versionskontrollsystem, mit dem die fnordlicht-Firmware verwaltet wird.
- ein beliebiges Terminalprogramm, z.b. minicom oder screen oder hyperterm
Ausserdem werden für das Übersetzen des Bootloaders benötigt:
- gcc-avr: Der GNU C Compiler (Crosscompiler für AVR).
- avr-libc: Standard C Bibliothek für Atmel AVR Entwicklung
Verbindung zum Atmel prüfen (ISP)
Bevor der Atmel das erste mal über den ISP am Parallelport mit Firmware programmiert werden kann, sollte die Verbindung funktionieren. Folgendes Kommando sollte die nachstehende Ausgabe erzeugen:
$ uisp -dprog=dapa --rd_fuses Atmel AVR ATmega8 is found. Fuse Low Byte = 0xe0 Fuse High Byte = 0xd8 Fuse Extended Byte = 0xff Calibration Byte = 0xaf -- Read Only Lock Bits = 0xff BLB12 -> 1 BLB11 -> 1 BLB02 -> 1 BLB01 -> 1 LB2 -> 1 LB1 -> 1
Ein beliebter Fehler sind mangelnde Schreibrechte für den Devicenode /dev/parport0.
fnordlicht Quelltext besorgen
Der fnordlicht Quelltext wird mit darcs verwaltet. Zuerst in ein passendes Verzeichnis erstellen und den Qelltext auschecken:
darcs get http://rinnsal.oph.rwth-aachen.de/~fd0/fnordlicht
Fuse Bits setzen
Zuerst muss der Atmel für seine Hardwareumgebung eingerichtet werden:
$ make fuse uisp -dprog=dapa --wr_fuse_h=d8 Atmel AVR ATmega8 is found. Fuse High Byte set to 0xd8 uisp -dprog=dapa --wr_fuse_l=e0 Atmel AVR ATmega8 is found. Fuse Low Byte set to 0xe0
Dokumentation zu diesem Vorgang findet sich im Datenblatt zum ATmega8 und in boot/readme im Quelltextverzeichnis.
Bootloader installieren
Im Gegensatz zur fnordlicht Firmware ist der Bootloader für den ATmega in C geschrieben. Der Bootloader war ursprünglich der Atmel Butterfly - die hier benutzte Version wurde nachprogrammiert. Dieser befindet sich im Verzeichnis boot (Original als Zip-Archiv und die Ver)