Dieses zweiteilige Tutorial soll den Einstieg in die Programmierung des ATmega8-Experimientierboards erleichtern und die ersten Schritte zur Inbetriebnahme des Mega8-Boards bis hin zu einem einfachen Beispielprogramm zur Ansteuerung der Leuchtdioden über die USB-Schnittstelle zeigen.
Der erste Teil widmet sich der Vorbereitung des PC und der USB-Schnittstelle des Mega8-Boards. Es zeigt dabei wie ein AVR mit dem USBasp beschrieben wird.
Günstig wären: Etwas Programmiererfahrung in einer Hochsprache oder den festen Willen diese zu erlernen. Grundkenntnisse zur AVR-Architektur und Programmierung in Embedded C. Diese erlangt man z.B. durch Studium der Tutorials: AVR-Tutorial, AVR-GCC-Tutorial. Außerdem sind die Informationen auf den Webseiten zum Programmer und ATmega8 Experimentierboard gut zu wissen. Auch das Stöbern und Suchen im Forum kann hilfreich sein.
Der Programmer wird an einen USB-Port des Rechners angeschlossen. Nun sollte Windows den Installationsdialog zur Einrichtung des Treibers anzeigen. Dort wird dann der Pfad zum bereits entpackten Treiber angeben. Nach der Installation sollte im Gerätemanager das Gerät "USBasp" unter Lib-USB erscheinen.
WinAVR mit den Standard-Vorgaben des Installations-Programms installieren.
Dieses Programm ist in Java geschrieben und benötigt eine Java-Laufzeitumgebung, die ggf. zunächst installiert werden muss.
AVR8-Burn-O-Mat mit den Standard-Vorgaben installieren und danach im Programm unter "Optionen" die Pfade zu AVRDUDE (in WinAVR enthalten) angegeben, sowie als Programmer "USBasp" auswählen. AVR8-Burn-O-Mat muss nach diesen Einstellungen neu gestartet werden und ist dann fertig eingerichtet.
Die Installation dieses Treibers kann natürlich erst erfolgen, wenn der ATtiny2313 des Mega8-Boards programmiert wurde, aber das Archiv entpacken wir schon mal.
Der Treiber dient der reibungslosen Einrichtung eines virtuellen Com-Port zur Kommunikation mit der USB-Schnittstelle des Experimentierboards. Das Board wird dann später also genauso angesprochen wie eine serielle Schnittstelle. Das Treiber-Archiv enthält jeweils unterschiedliche .inf-Dateien für die Windows-Versionen.
Es sollten die aufgebauten Leiterplattenbaugruppen peinlich genau auf korrekte Werte der Bauteile und den polungsrichtigen Einbau überprüft werden. Weiterhin müssen Lötseite UND Bauteilseite auf Kurzschlüsse und fehlerhafte Lötstellen untersucht werden. Dazu sind viel Licht und eine Lupe nützlich.
Jetzt ein zweites Mal alles kontrollieren, bevor die Spannung angelegt wird. Ernsthaft, auch wenn’s schwer fällt.
Damit das Mega8-Board per USB Daten austauschen kann, muss zunächst der dafür vorgesehene Mikrocontroller ATtiny2313 (IC4) mit der USB-Firmware beschrieben werden:



Nach Anschluss den Mega8-Boards an eine USB-Schnittstelle des Rechners, sollte sich Windows mit dem Installationsdialog für den Treiber melden. Dabei muss Windows das Gerät "RS-232" erkennen. Es wird nun der Pfad zum bereits entpackten AVR-USB-CDC-Treiber angegeben und den, für die Windows-Version passenden, Treiber ausgewählt.
Im Gerätemanager erscheint das Gerät "Virtual Communications Port (COMx)". Innerhalb der Klammer kann nun abegelesen werden, welchem COM-Port das Mega8-Board zugeordnet wurde.
Ob Daten, die man an den virtuellen COM-Port sendet, auch tatsächlich an JP5 des Mega8-Boards ankommen, kann man leicht mit einer LED überprüfen.
Die RX-Leitung wird am oberen linken Pin von JP5 abgreifen und direkt mit einer der LEDs verbunden. Dazu eignen sich am besten Steckleitungen für Experimentierboards.

Um Zeichen über den virtuellen COM-Port des Rechners auszugeben, kann einfach die Windows Eingabeaufforderung verwenden werden. Folgende Anweisung sendet ein paar Zeichen:
echo testzeichentestzeichentestzeichentestzeichen > com5
(Anstelle von "com5" ist natürlich der oben bereits abgelesene COM-Port anzugeben.)
Nach Betätigung der ENTER-Taste, muss die LED kurz aufleuchten bzw. schwach "flackern"! Wenn nicht, ist bei den vorangegangenen Schritten etwas schief gelaufen und das Forum wartet, nach gewissenhafter Fehlersuche auf Fragen. ;-)
Die LED leuchtet auf!? Prima, dann ist jetzt der richtige Zeitpunkt sich mal richtig auf die Schulter zu klopfen! Glückwunsch! Und schnell weiter zum zweiten Teil...