ATtiny85 mit dem Arduino UNO beschreiben

In diesem Beitrag möchte ich beschreiben wie du den Microcontroller ATtiny85 mit einem Arduino UNO beschreiben kannst und somit deine Projekte noch kleiner bekommst.

Microchip ATtiny85
Microchip ATtiny85

Den Microcontroller ATtiny85 habe ich bereits im Beitrag Mini Arduino mit ATTiny85 Chip vorgestellt.

benötigte Bauteile

Für das schreiben / brennen eines Sketches auf einen ATtiny85 werden folgende Bauteile benötigt:

  • 1x Arduino UNO,
  • 6x Breaboardkabel, männlich – männlich, 20cm
  • 1x 10µF, 25V Elektrolytkondensator
  • 1x ATtiny85 Chip

Pinout des ATtiny85

Der Chip ATtiny85 verfügt über 8 Pins welche wiefolgt belegt sind.

Pinout ATTiny85 chip
Pinout ATTiny85 chip

In der Grafik ist eine halbrunde Kerbe eingezeichnet, auf dem Chip ist die Seite jedoch mit einem kleinen Kreis über dem Pin „Reset“ gekennzeichnet.

Aufbau auf dem Breadboard

Die Pins des ATtiny85 werden wie folgt am Arduino UNO angeschlossen:

ATtiny85 Arduino UNO
1 digitaler Pin D10
5 digitaler Pin D11
6 digitaler Pin D12
7 digitaler Pin D13
4 GND
8 5V

Der Kondensator wird mit dem Pin „Reset“ vom Arduino UNO mit dem GND verbunden.
Wichtig ist das die Anode (+ Pol, langes Bein) mit GND des Arduinos verbunden wird.

Aufbau der Schaltung am Arduino UNO
Aufbau der Schaltung am Arduino UNO

Hier nun etwas übersichtlicher als Shema von der Software Fritzing.

Aufbau der Schaltung zum brennen eines Sketches auf den ATtiny85 mit dem Arduino UNO
Aufbau der Schaltung zum brennen eines Sketches auf den ATtiny85 mit dem Arduino UNO

Wozu der Kondensator?

Der Kondensator verhindert das der Arduino UNO automatisch neu startet nachdem der Sketch auf den Chip gebrannt wurde.

einrichten der Arduino IDE

Wie aus meinen Tutorials bekannt, verwende ich die Arduino IDE. Auch hier empfiehlt sich die einfache Anwendung zum Programmieren des ATtiny85.

Zunächst einmal müssen wir den Treiber für den Microchip ATtiny85 installieren. Dazu fügen wir nachfolgende URL in die Liste der „Zusätzlichen Boardverwalter-URLs“ ein.

https://raw.githubusercontent.com/damellis/attiny/ide-1.6.x-boards-manager/package_damellis_attiny_index.json

Wenn dieses erledigt ist, dann kannst du den Treiber über den Boardverwalter installieren. Dazu musst du im Boardverwalter nach „attiny85“ suchen (1). In meinem Fall findest du nur einen Eintrag. Nach einem weiteren klick auf „Installieren“ (2) wird der Treiber aus dem Internet geladen und installiert. Wenn der Treiber installiert ist, kannst du den Dialog über die Schaltfläche „Schließen“ schließen.

Installieren des Treibers für den Microcontroller ATtiny85
Installieren des Treibers für den Microcontroller ATtiny85

Upload des Sketches auf den Arduino UNO

Damit wir auf den ATtiny85 einen Sketch hochladen können, müssen wir zunächst einen Sketch auf den Arduino UNO schreiben / hochladen.

Diesen Sketch findest du unter „Datei“ > „Beispiele“ > „11.ArduinoISP“.

Oder hier bequem zum Download.

 

Nachdem nun der Sketch hochgeladen wurde, kann der ATtiny85 beschrieben werden.

Upload des Blink Sketches auf den ATtiny85

Der Arduino IDE liegt ein einfacher Sketch bei welcher eine LED zum Blinken bringt. Diesen Sketch findest du wiederum unter „Datei“ > „Beispiele“ > „01.Basic“ > „Blink“. In dem Beispiel muss jedoch, bevor der Code auf den Chip geschrieben wird erst einmal der Pin eingestellt werden. Am ATtiny85 stehen 5 Pins (0..4) zur Verfügung welche verwendet werden können.

Oder hier ein einfaches Sketch zum blinken einer LED am Pin 0.

const int PAUSE = 250; //Konstante für die Pause
const int LED = 0; //Konstante für den Pin der LED

void setup() {
  //definieren das der Pin der
  //LED als Ausgang dient
  pinMode(LED, OUTPUT);
}

void loop() {
  //aktivieren der LED
  digitalWrite(LED, HIGH); 
  //eine kleine Pause
  delay(PAUSE);      
  //deaktivieren der LED               
  digitalWrite(LED, LOW);  
  //eine kleine Pause
  delay(PAUSE);                     
}

einstellen der Arduino IDE

Damit dieser Sketch hochgeladen werden kann, müssen wir jedoch die Arduino IDE so einstellen das diese unseren Arduino UNO als Programmer nutzt.

Arduino IDE - Werkzeuge, einstellungen für "ATtiny85"
Arduino IDE – Werkzeuge, einstellungen für „ATtiny85“

Mit diesen Einstellungen können wir nun das Sketch hochladen.

Video

In dem Sketch habe ich eine Pause von 250ms eingebaut, in „echt“ ist diese jedoch um ein vielfaches höher. Dieses liegt an der Taktfrequenz des ATtiny Chips welcher mit diesem Timer nicht so richtig klar kommt.

Aufbau einer kleinen Platine

Wenn man mehr als nur einen ATtiny85 beschreiben möchte so kann man sich eine kleine Platine löten und somit die oben beschriebene Schaltung „festhalten“. Dafür benötigen wir neben einfachem, bunten Kabel eine Lochrasterplatine. Wer etwas mehr Geld in die Hand nehmen möchte kann sich hier auch ein Prototype Shield für den Arduino UNO holen und hätte somit eine passende Platine bereits zur Hand.

Dieses Prototype Shield verwende ich im nachfolgenden Beispiel um den Microcontroller zu beschreiben.

So richtig Spaß macht das nicht wenn man mit „Try and Error“ versucht einen Fehler im Code zu finden. Daher macht der Einsatz eines Fertigen Chips wie nachfolgend abgebildet äußerst sinn.

Mini Arduino mit ATTiny85 Chip
Mini Arduino mit ATTiny85 Chip

Dieser Microcontroller bietet eine USB Schnittstelle zum Programmieren und die Pins.

Fazit

Mit dem Einsatz des ATtiny85 Chips ist es relativ einfach ein Projekt zu minimalisieren. Voraussetzung dabei ist jedoch das nicht zuviele digitale / analoge Pins benötigt werden. Als nächstes werde ich nun ein kleines Projekt realisieren wo dieser Chip eingesetzt wird.

 

Ein Gedanke zu „ATtiny85 mit dem Arduino UNO beschreiben

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.