Rainer-Rebhan

Die Micro Controller ATTiny

Aufbau und Verwendung der Micro Controller ATtiny - AVR - Digispark-Module

Hardware-Infos und Programmierung mit der Arduino IDE

Viele meiner Projekte verwenden Micro-Controller von AVR (ATMEL) die auf in den Arduino-Boards eingesetzt werden. AVR liefert hierzu MicroProzessoren in den verschiedenen Ausbaustufen bezüglich Speichergröße, der Flashspeicher, RAM-Speicher, Eeprom, In-Out-Anschlüsse usw. Die Arduino Boards bieten schon eine große Auswahl. Benötigt man jedoch nur eine geringe Anzahl von Ein- bzw. Ausgänge, nur wenige analog digital Wandler oder PWM Ausgänge und hat man auch wenig Platz, so gibt es hierfür leider keine passenden Arduino- Boards. Ein Ausweg sind die Micro Controller von Digistump / Digispark. Zwei dieser sehr kleinen Boards möchte ich hier vorstellen und die Programmierung mit der Arduino IDE zeigen. Wer sich für diese kleinen MicroController interessiert aber die Arduinos und die IDE noch nicht kennt, dem empfehle ich diese Seite :
Arduino is an open-source electronics prototyping platform based on flexible, easy-to-use hardware and software. It's intended for artists, designers, hobbyists and anyone interested in creating interactive objects or environment

Digispark-Modul ATTiny85

Das kleinste Board mit einem ATtiny85 mißt gerade einmal 18mm x 23 mm. Hat 5 Ports (Digital + Analog) und 3 Anschlüsse für die Versorgungsspannung. Wie die Arduinos verfügt das Board über einen Mini-USB Anschluß um mittels einen speziellen Bootloader das Programm zu laden. Es gibt jedoch Einschränkungen hinsichtlich der Anschlüsse d.h. nicht alle Pin verfügen über digitale und analoge Ein-und Ausgänge. Alle Pins können digitale Ein- und Ausgänge sein, jedoch nur einige analoge Ein- und Ausgänge ( = ADC bzw. PWM). Die serielle USB Verbindung ist eine Emulation in der Bootloader -SW. Der Controller läuft mit einer Taktfrequenz von 8 MHz. Die Pin-Port-Liste gibt es gleich hier unten als PDF.

Digispark-Modul Pro ATTiny167

Nur minimal größer ist das Board mit einem ATtiny167, ca.18mm x 28 mm. Einige Daten zum 167: 14 I/O Pins , I2C, SPI, UART, LIN und USI, ADC an 10 Pins, 3 PWM Kanäle (können einer Auswahl von Pins zugeordnet werden), Power LED und Test/Status LED (an Pin 1). In diesem Controller gibt es einen Hardware-UART als serielle USB Verbindung. Hier die Pin-Port-Liste:

Hardware Pinout

Pin- und Port-Nummern ATtiny85 und ATtiny167Pro Digispark (pdf)

Programmierung der Micro Controller

Installationsanleitung für Windows (ab XP, 7, 8, 10)

Zuerst laden Sie das entsprechende Arduino-Paket von der Arduino.cc Website: https://www.arduino.cc/en/Main/Software Bei der Verwendung von Arduino 1.6.6 oder höher und Windows - herunterladen, entpacken und ausführen von -> Install Drivers: https://github.com/digistump/DigistumpArduino/releases/download/1.6.7/Digistump.Drivers.zip Installieren der Arduino Anwendung. Gehen Sie in der Arduino Anwendung auf das Menü [Datei] und wählen Sie [Einstellungen] In das Feld -> weitere Boards Manager-URLs <- eingeben: http://digistump.com/package_digistump_index.json ... und dann auf OK klicken. Gehen Sie im Menü [Extras] und dann in das [Board] Untermenü - wählen Sie [Boards Manager] und dann im Drop-Down Menü wählen Sie [Beitrag]: -> Digistump AVR Boards<- Paket und klicken Sie auf die Schaltfläche [Installieren]. Den Download-Fortschritt sehen sie auf der unteren Leiste des ->Boards Manager<- Fenster. Das installierte Paket wird in der Liste angezeigt. Evtl. werden dann noch weitere Treiber für die Digistump Boards installiert. Nach der vollständigen Installation wählen sie im Board-Menü - Digispark (Standard - 16.5mhz)

Installationsanleitung für Windows XP und /oder Arduino IDE 1.0.x

Es gibt eine weitere Möglichkeit die Digispark Board zu programmieren, auch für Windows XP bzw. mit einer älteren Arduino IDE. Die IDE 1.0.4 hat noch keinen Board-Manager . Die Disparks sind deshalb direkt in der IDE von Digispark integriert. Auch ein spezieller USB Treiber ist in diesem IDE-Paket (1.0.4) enthalten. Wer kurzzeitig die Digisparks programmieren will, kann diese alte spezielle Arduino IDE einsetzen. Diese spezielle (alte) Arduino IDE gibt es hier unter diesem Link zum Download: https://sourceforge.net/projects/digistump/files/ Entpacken Sie die Datei --> z.B. DigisparkArduino-Win32-1.0.4-March29.zip (für Windows)... in einen beliebigen Ordner Installieren Sie die den USB Treiber mit -> DigisparkArduino-Win32 \ DigisparkWindowsDriver \ InstallDriver.exe Schließen Sie Digispark an den USB-Port des Computers - es sollte das USB-Gerät erkannt werden Starten sie die Arduino IDE -> DigisparkArduino-Win32 \ Digispark-Arduino-1.0.4 \ arduino.exe Klicken Sie auf Extras> Board> Digispark (Tiny Core) Klicken Sie auf Extras> Programmierer> Digispark Laden Sie ein Beispiel ... klicken Sie auf Datei> Beispiele> Digispark_Example> Start dann ziehen Sie das Board vom Computer ab, bevor Sie auf die Schaltfläche Upload klicken Klicken Sie nun auf den Upload-Button Stecken Sie das DigisparkBoard erst in die USB-Buchse, wenn im unteren IDE Feld steht ... connecting now... Der Upload des Programms beginnt .... Fertig

Einschränkungen bei der SW

Es stehen nur folgende Befehle z.V.:

Hinweise aus der Praxis

nach oben zurueck weiter