c't Klangcomputer II

 

Übersicht

Ergänzungen und Berichtigungen

Firmware

Firmware nach Wunsch ins MIDIvice flashen

Download

Firmware- Download-Seite

Tipps

Hinweise zu Hard- und Software

Links

Shareware, Programme, Bezugsquellen, Impressum

 

Flashen für jedermann mit dem ISP-Programmieradapter

Ich empfehle dringend, die Firmware des MIDIvice-ATmega8 in circuit zu flashen ("brennen", "programmieren"), also in der fertig aufgebauten (d.h. mit einem unprogrammierten ATmega8 bestückten) MIDIvice-Schaltung. Die Programmdaten, vulgo die MIDIvice-Firmware, erhält der ATmega8 über die ISP-Schnittstelle PL03 des MIDIvice, die übrigens der (weit verbreiteten) ISP-Anschlussbelegung der Entwicklungssysteme STK200/300/500 von Atmel gleicht. Die Daten landen im prozessorinternen Flash-Speicher, der sich bis zu 10.000 mal neu bespielen lässt. Es gibt verschiedene PC-Programme für Linux und Windows, mittels denen man die Firmware in den ATmega senden und auch daraus auslesen kann. Wir haben mit dem kostenlosen Programm  PonyProg von Claudio Lanconelli, das es in Linux- und Windows-Varianten gibt, gute Erfahrungen gesammelt.

Das Ganze  ist einfacher, als es sich zunächst anhört: Sie benötigen zum Flashen der Firmware neben PonyProg (bitte diese Hinweise beachten, ich verwende die PonyProg-Version 2.06) nur noch einen sehr einfachen ISP-Programmieradapter für den Druckerport, der sich in wenigen Minuten mit Bauteilen aus der Bastelkiste aufbauen lässt. Sie können beispielsweise den zum BlueMP3-Projekt in c't 09/04, S. 202 vorgestellten ISP-Adapter verwenden, für den es unter der Bestellnummer 0410203 für 4,00 EUR bei emedia eine Leerplatine und bei segor einen Bausatz gibt. Die sind ist mit der ISP-Schnittstelle des MIDIvice pinkompatibel. Bastler mit einer Abneigung gegen SMD-Bauteile erhalten hier ein Schaltbild und Platinenlayout als PDF eines ISP-Adapters zum Selberätzen (oder zum Aufbau auf einer Lochrasterplatine). Kompatible, fertig aufgebaute ISP-Programmieradapter erhalten Sie auch recht preiswert (ca. 12 Euro) bei der Fa. Embedit.

Schaltplan des c't-ISP-Programmieradapters: Die Firmware purzelt aus dem PC über die Parallelport-Pins in den ATmega8, genauer gesagt über die ISP-Schnittstelle PL03 des MIDIvice.

SMD-Bestückung der Programmieradapter-Platine 0410203 von emedia, die eigentlich zum BlueMP3-Projekt gehört. Beachten Sie beim Anschluss an das MIDIvice die Ausrichtung des Flachkabels, Pin 1 liegt hier gegenüber R1.

Zur Programmierung muss die MIDIvice-Platine mit Strom versorgt werden, der ISP-Programmieradapter wird mit Steckverbinder PL03 (ISP) der MIDIvice-Platine über ein 10poliges Flachbandkabel 1:1 verbunden. Mit dem eingesetzten Treiberbaustein haben wir die Firmware über bis zu zwei Meter lange Kabel erfolgreich eingespielt. Stellen Sie nach dem Start von PonyProg unter Setup zunächst die richtige Schnittstelle/Interface ein. Unter Win2000/XP muss Parallel und AVR ISP I/O gewählt werden.

Mit einem Klick auf Probe kann die richtige Funktion des Druckerports und des ISP-Adapters überprüft werden. Stellen Sie nach Drücken von OK unter Device den Typ AVR micro/ATmega8 ein.

Neu ausgelieferte Atmel-Controller wie der verwendete ATmega8 werden ab Werk mit einigen gesetzten Konfigurations-Bits ausgeliefert, die vor der ersten Inbetriebnahme unbedingt gelöscht werden müssen, sonst funktioniert die Firmware nicht einwandfrei. Wählen Sie nach Anschluss des MIDIvice, des Programmieradapters und der Stromversorgung in PonyProg den Menüpunkt Security and Configuration Bits... (Ctrl-S):

und löschen Sie evt. Häkchen mit Clear All. Der Konfigurations-Dialog sollte dann wie folgt aussehen:

Anschließend im Dialog auf Write klicken, um die Bits auch im ATmega8 zu löschen. Der ATmega8 ist nun bereit, die Firmware (Program Flash=P) und die EEPROM-Daten (Data=D) aufzunehmen. Beide Teile müssen getrennt geladen und programmiert werden (File/Open...), dabei Endung .hex (eigentliche MIDIvice-Firmware, je nach Erforderniss der Scan-Platinen usw.) bzw. .eep (zugehörige EEPROM-MIDIvice-Defaults) beachten.

PonyProg gibt das Target (MIDIvice) nach dem Flashen (dauert nur einige Sekunden) automatisch wieder frei, das MIDIvice sollte jetzt die Begrüßungsmeldung zeigen und die Arbeit aufnehmen.