Selbstbau-Anleitung: USBtiny In-System Programmer
Der USBtiny In-System Programmer (ISP) wird zur Programmierung von Atmel AVR-Mikrocontrollern über einen USB-Port eines PC's eingesetzt und von verschiedenen Entwicklungsumgebungen unterstützt. Einen USBtinyISP können Sie sich leicht selber nachbauen.

Durch die grüne LED (LED2) wird angezeigt, ob eine USB-Verbindung besteht. Die rote LED (LED1) zeigt an, ob Daten über die ISP-Schnittstelle übertragen werden. Der USBtinyISP kann entweder über den USB-Port des Rechners oder über die ISP-Schnittstelle mit Spannung (5V) versorgt werden. Zur Spannungsversorgung über USB setzen Sie den Jumper X3 auf USB powered. Zur externen Spannungsversorgung setzen Sie den Jumper auf Ext. powered.
Schaltplan
Die folgende Abbildung zeigt den Schaltplan des USBtiny In-System Programmers.

Stückliste
Für den USBtiny In-System Programmer benötigen Sie die folgenden Bauteile.
Anzahl Bauteil Wert
2x R1, R2 Widerstand 47 Ohm
3x R3, R4, R5, R7, R8 Widerstand 1,5 kOhm
1x R6 Widerstand 10 kOhm
1x C1 Elektrolyt-Kondensator 100 µF
1x C2 Kondensator 0,1 µF
2x C3, C4 Kondensator 22 pF
1x Q1 Quarz 12,0 MHz
2x D1, D2 Z-Diode ZF 3,6
1x LED1 LED rot 5mm
1x LED2 LED grün 5mm
1x IC1 ATTINY2313-20PU
1x IC2 74HC125
1x X1 USB-Buchse für Printmontage (Typ B)
1x X2 Wannenstecker 10-polig
1x X3 Stiftleiste 3-polig
1x - IC-Sockel 14-polig
1x - IC-Sockel 20-polig
2x - Pfostenbuchse 10-polig
1x - Flachbandkabel 10-polig
1x - Kupferdraht für die Leiterbahn-Brücken
1x - Lochrasterplatine (ca. 102 x 57 mm)
2x R1, R2 Widerstand 47 Ohm
3x R3, R4, R5, R7, R8 Widerstand 1,5 kOhm
1x R6 Widerstand 10 kOhm
1x C1 Elektrolyt-Kondensator 100 µF
1x C2 Kondensator 0,1 µF
2x C3, C4 Kondensator 22 pF
1x Q1 Quarz 12,0 MHz
2x D1, D2 Z-Diode ZF 3,6
1x LED1 LED rot 5mm
1x LED2 LED grün 5mm
1x IC1 ATTINY2313-20PU
1x IC2 74HC125
1x X1 USB-Buchse für Printmontage (Typ B)
1x X2 Wannenstecker 10-polig
1x X3 Stiftleiste 3-polig
1x - IC-Sockel 14-polig
1x - IC-Sockel 20-polig
2x - Pfostenbuchse 10-polig
1x - Flachbandkabel 10-polig
1x - Kupferdraht für die Leiterbahn-Brücken
1x - Lochrasterplatine (ca. 102 x 57 mm)
Bestückungsplan
Bestücken Sie die Lochrasterplatine wie folgt mit den jeweiligen Bauteilen.

Verdrahtungsplan
Verbinden Sie die einzelnen Bauteile nach dem folgenden Plan.

ATtiny2313 flashen
Der USBtinyISP besitzt mit dem ATtiny2313 einen eigenen Mikrocontroller, welchen Sie für den Einsatz im USBtinyISP erst programmieren müssen. Das benötigte Flash-Image können Sie sich von der Webseite http://www.ladyada.net/make/usbtinyisp/index.html herunterladen.
Zum Programmieren des ATtiny2313 Mikrocontrollers benötigen Sie einen bereits funktionierenden In-System Programmer und einen entsprechenden Adapter für den ATtiny2313. In diesem Fall wird ein STK200-kompatibler In-System Programmer und der ATTINY2313 ISP-Adapter verwendet.
Setzen Sie den ATtiny2313 Mikrocontroller in den ATTINY2313 ISP-Adapter ein und verbinden diesen mit einem 10 poligen 1:1 Kabel mit dem STK200-kompatiblen In-System Programmer. Danach verbinden Sie den STK200-kompatiblen In-System Programmer mit dem Parallel Port Ihres Rechners. Schließen Sie erst jetzt die Spannungsversorgung an den ATTINY2313 ISP-Adapter an.
Laden Sie sich mit dem folgenden Befehl das Archiv mit dem benötigten Flash-Image herunter, entpacken dieses und wechseln in das Verzeichnis ./usbtinyisp/spi/.
georg@ubuntu1004:~$ wget http://www.ladyada.net/media/usbtinyisp/usbtiny%20v2.0%20firm.zip
georg@ubuntu1004:~$ unzip usbtiny\ v2.0\ firm.zip
georg@ubuntu1004:~$ cd ./usbtinyisp/spi/
georg@ubuntu1004:~$ unzip usbtiny\ v2.0\ firm.zip
georg@ubuntu1004:~$ cd ./usbtinyisp/spi/
Mit dem folgenden Befehl wird das Flash-Image in den Flash-Speicher des ATtiny2313 Mikrocontrollers übertragen.
georg@ubuntu1004:~/usbtinyisp/spi$ sudo avrdude -c stk200 -P /dev/parport0 -B 1 -p t2313 -U flash:w:main.hex
Nachdem der Flash-Speicher erfolgreich beschrieben wurde, müssen Sie durch den folgenden Befehl noch die Fuse-Bits setzen.
georg@ubuntu1004:~/usbtinyisp/spi$ sudo avrdude -c stk200 -P /dev/parport0 -B 1 -p t2313 -U hfuse:w:0xdf:m -U lfuse:w:0xef:m
Jetzt trennen Sie die Spannungsversorgung vom ATTINY2313 ISP-Adapter und den STK200-kompatiblen In-System Programmer vom PC. Entnehmen Sie anschließend den ATtiny2313 Mikrocontroller aus dem ATTINY2313 ISP-Adapter und setzen ihn in den USBtinyISP ein.
Funktionstest
Wenn der ATtiny2313 Mikrocontroller in den USBtinyISP eingesetzt wurde, können Sie den ISP mit einem USB-Port Ihres Rechners verbinden. Beim ersten Funktionstest sollten Sie den In-System Programmer ohne eine weitere Schaltung zum Programmieren eines Mikrocontrollers betreiben. Damit der In-System Programmer über den USB-Port des Rechners mit Spannung versorgt wird, setzen Sie den Jumper X3 auf USB powered.
Wenn Sie den USBtinyISP an den PC angeschloßen haben, sollte dieser automatisch erkannt werden.
georg@ubuntu1004:~/usbtinyisp/spi$ lsusb
Bus 004 Device 011: ID 1781:0c9f Multiple Vendors
[...]
Bus 004 Device 011: ID 1781:0c9f Multiple Vendors
[...]
Durch den folgenden Befehl können Sie die Funktion des USBtiny In-System Programmers testen.
georg@ubuntu1004:~/usbtinyisp/spi$ sudo avrdude -c usbtiny -p m32
avrdude: initialization failed, rc=-1
Double check connections and try again, or use -F to override
this check.
avrdude done. Thank you.
avrdude: initialization failed, rc=-1
Double check connections and try again, or use -F to override
this check.
avrdude done. Thank you.
Wenn Sie die gleiche Meldung erhalten, können Sie Ihren USBtinyISP zum Programmieren von Mikrocontrollern einsetzen.
Hinweis: Falls Sie Windows einsetzen, finden Sie unter http://www.ladyada.net/make/usbtinyisp/download.html einen entsprechenden Treiber für den USBtinyISP.
Downloads
Schaltplan und Layout für Eagle
Schaltplan als PDF
Bestückungsplan als PDF
Verdrahtungsplan als PDF
Dieser Eintrag wurde am 16.08.2010 erstellt und zuletzt am 11.03.2011 bearbeitet.
Direkter Link zu dieser Seite: http://www.gtkdb.de/index_18_1035.html
[ Zur Startseite ] [ Zur Kategorie ]
© 2004-2012 by Georg Kainzbauer
