banner left Boxtec Banner
Platzhalter BoxtecProdukteForumShopKontaktPlaygroundn/aJobs
 

Einleitung

Es gibt für den Attiny85 verschiedene Bootloader welche USB unterstützen. Micronucleus ist weit verbreitet und wird unter anderem vom Digistump verwendet. Er lässt sich aber auch bestens in einem Eigenbau Projekt nutzen. Damit lassen sich sehr kleine Projekte mit direkter USB Unterstützung bauen. Weiter gibt es jetzt von Micronucleus sogar eine Version welche auch andere Attiny's unterstützt. Wir werden uns hier jedoch auf den Attiny85 konzentrieren.

Bootloader übertragen

Als erstes muss der Micronucleus Bootloader auf den Attiny85 übertragen werden. Um das zu tun wird nur die Arduino IDE ein Arduino als ISP und die HEX Datei vom Bootloader benötigt.

Hier der direkte Link zum Bootloader als Hex Datei:

Hier findet Ihr die alle Dateien zu den beiden Versionen:

Ich empfehle Euch die Version 1.11 zu nehmen. Bei der Version 2.03 hatte ich Probleme mit der Arduino IDE. Die Arduino IDE unterstützt die Version 2.03 noch nicht.

Jetzt in den Einstellungen der Arduino IDE folgendes aktivieren, damit die Details zum avrdude Upload protokolliert werden:

Jetzt empfiehlt es sich den Attiny85 mit einem “Blink” Programm zu laden um zu prüfen ob die Verbindung funktioniert. Dabei wird in dieser Zeile das avrdude Kommando ausgegeben welches später gebraucht wird:

Wir kopieren das Kommando:

avrdude -CC:\Users\user\AppData\Local\Arduino15\packages\ATTinyCore\hardware\avr\1.0.6/avrdude.conf -v -pattiny85 
-carduino -PCOM3 -b19200 -Uflash:w:C:\temp/BlinkWithoutDelay.ino.hex:i 

Jetzt müssen wir das Kommando mit der Micronucleus Hex Datei umbauen und zusätzlich noch die Fuses setzen. Das endgültige Kommando sieht dann so aus:

avrdude -CC:\Users\user\AppData\Local\Arduino15\packages\ATTinyCore\hardware\avr\1.0.6\avrdude.conf -v -pattiny85 
-carduino -PCOM3 -b19200 -Uflash:w:C:\temp\t85_default_1.11.hex:i -U lfuse:w:0xe1:m -U hfuse:w:0xdd:m -U efuse:w:0xfe:m

Wie Ihr seht wurde das hier angepasst: C:\temp\t85_default_1.11.hex

und das hier am Ende hinzugefügt: -U lfuse:w:0xe1:m -U hfuse:w:0xdd:m -U efuse:w:0xfe:m

Danach in der Eingabeaufforderung das Kommando ausführen und prüfen ob alles funktioniert hat.

Aufbau

Folgende Teile werden benötigt:

Hier der Schaltplan

USB ist etwas speziell und liefert eine 5 V Spannung, die Signal Level sind aber so:

HIGH: min. 2.8V - max. 3.6V LOW: min. 0.0V - max. 0.3V

Der Attiny85 würde aber 5 Volt für High liefern, damit hätte USB ein Problem, deshalb diese Schaltung hier um das HIGH Signal auf 3.6V zu begrenzen.

Und hier ein Bild von meinem Breadboard, da ich keine 20 Ohm Widerstände hatte habe ich 10 Ohm Widerstände verwendet.

Test

Der Test lässt sich am besten unter Linux oder OS X vornehmen, weil da keine Treiber benötigt werden. Unter Windows muss zuerst der Treiber installiert werden: https://github.com/digistump/DigistumpArduino/tree/master/tools

Unter Linux kann nach dem Einstecken vom USB Stecker per lsusb Befehl geprüft werden ob der Micronucleus Bootloader vom Betriebssystem erkannt wurde.

In der Arduino IDE muss zuerst in den Einstellungen die Digispark URL eingegeben werden.

http://digistump.com/package_digistump_index.json

Im Board Manager kann dann die Digispark Software installiert werden.

Jetzt stehen unter <Boards> die Digispark Konfigurationen zur Verfügung. Wir wählen den Digispark (Default 16.5Mhz) aus.

Zum Sketch hoch laden, muss wie beim Digistump der USB Stecker entfernt werden, danach wird in der Arduino IDE <Upload> ausgewählt. Erst wenn in der Statuszeile die Aufforderung erscheint den USB Stecker wieder einzustecken ist dies zu tun. Danach sieht man die Erfolgsmeldung vom Upload.

Wem das ein-/aus stecken zu mühsam ist kann auch einfach auf den Reset Knopf drücken. Dadurch startet der Attiny85 neu und und kann im USB Modus beschrieben werden.

Links

 
arduino/attinyusb/micronucleus.txt · Last modified: 2016/09/07 21:27 by dinoi
 
 

zum Seitenanfang

Letzte Aktualisierung: © boxtec internet appliances · the better security products