ARDUINO ATtiny-Brenner

Wozu einen ATtiny-Brenner?
Nicht immer ist für Projekte ein ARDUINO UNO, oder gar ein ARDUINO MEGA, ja nicht einmal ein ARDUINO NANO, erforderlich. Ein "Winzling", wie ein ATtiny 85 tut es oftmals für kleine Anwendungen und ist preiswert für nur 1,75 € zu haben. Aber auch auf diesen Baustein müssen Programme hochgeladen werden (wie auch auf einen ARDUINO), beziehungsweise gebrannt werden. Dazu dienen "Brenner"; aber wozu kaufen, wenn doch wohl bereits ein ARDUINO UNO vorhanden ist. Denn damit lässt sich ein ATtiny-Brenner sehr leicht verwirklichen.
Im Internet findet man etliche Beschreibungen dazu. Ich fand aber, dass viele dieser Beschreibungen lückenhaft sind, sodass man beim Hochladen der erforderlichen Programme nicht selten Fehlermeldungen bekommt (z.B. "not in sync" ="nicht synchron" beim Hochladen des Bootloaders), nur weil eventuell nicht die richtigen Einstellungen gewählt wurden, oder das Falsches vom Internet geholt wurde.
Deshalb habe ich eine komplette detaillierte Anleitung geschrieben, welche hier als pdf heruntergeladen werden kann. Da die Anleitung sehr viele beschreibende Bilder enthält, verzichte ich aus Platzgründen diese hier auf der Seite einzustellen (Sie müssten viel zu sehr rauf und runter scrollen).

Der Download enthält:
- HJB ATtiny mit ARDUINO-UNO programmieren.pdf
- ArduinoISP_HJB.fzz
- ArduinoISP_HJB.ino
Download HJB ATtiny mit ARDUINO-UNO programmieren
Abb.1

ATtiny85-IC


Abb.2
Abb.1 zeigt einen ATtiny 85 in einem 8-poligen DIL-Gehäuse.

Abb.2 zeigt die Pinbelegung. Hier ist darauf zu achten, dass in einem Sketch (Programm) das Ansprechen der Pins etwas anders gestaltet, als bei einem ARDUINO UNO oder NANO!
Abb.3
In der oben zum Download bereitgestellten Anleitung ist auch zum Testen des Brenners ein Beispiel-Programm enthalten. Es handelt sich dabei um eine Wechselblinkschaltung für einen ATtiny85. Diese kleine Schaltung kann beispielsweise bereits auf einer Modellbahnanlage bei einem unbeschrankten Bahnübergang Anwendung finden. Entweder wird eine kleine Platine geätzt (Abb.4), oder unkompliziert eine kleine Lochraster-Platine verwendet (Abb.5). Dabei liegt der Preis für die Bauteile lediglich bei 2 €!

Download Attiny_TEST_LED
Der Download enthält:
- Attiny_TEST_LED.fzz
- Attiny_TEST_LED.ino

Abb.4

Abb.5

ARDUINO UNO HV-Brenner[1] Schaltung für einen ATtiny

Im Internet findet man etliche Beschreibungen von sogenannten ARDUINO-HV-Brennern, wie ein bereits verwendeter ATtiny zur Neuverwendung wieder in seinen Urzustand versetzt werden kann. Einige wurden von mir getestet, welche aber nicht auf Anhieb funktionierten; auch waren die Beschreibungen zumeist lückenhaft, sodass erst viel ausprobiert werden muss, oder sind für jene verfasst, die sich bereits mit dem ARDUINO und ATtiny sehr gut auskennen, meistens auch nur in englisch verfasst.

Das für mich am besten geeignete Programm beschreibe ich hier mit überarbeiteter ausführlicher deutscher Baubeschreibung.

[1] Schaltung und Programm wurde aus dem Internet entnommen.

LINK: https://sites.google.com/site/wayneholder/attiny-fuse-reset
Schaltungsaufbau:
Die Abb.6 zeigt die Schaltung auf einem Steckboard. Der ARDUINO UNO wird vom PC über USB mit 5V= versorgt. Ein Steckernetzteil liefert die erforderlichen 12V=  zum "Brennen". 12 Volt ist eigentlich keine "Hochvoltspannung" ("HV"), der Ausdruck wird hier wohl nur deshalb verwenden, weil eine höhere Löschspannung erforderlich ist, als die normale 5 Volt Betriebsspannung.

Funktionsweise:

Bei einem bereits beschrieben ATtiny wurden sogenannte "Fuses" ("Sicherungen") gesetzt, welche aus Sicherheitsgründen ein versehentliches Neubeschreiben verhindern sollen. Ein HV-Brenner versetzt die Fuses wieder in den Urzustand zurück, sodass ein ATtiny wieder neu verwendet werden kann.

Abb.6

Abb.7 Schaltplan

Abb.8 Platinenlayout
Um das ARDUINO-Brennprogramm (später im Download) zum Löschen eines ATtiny zu starten, bedarf es eines Terminal-Programms. Ich verwende hier das Terminal-Programm "PuTTY".

PuTTY

LINK zum Programm-INFO und DOWNLOAD:

https://www.heise.de/download/product/putty-7016

Ist das PuTTY-Programm gestartet, ist es zunächst zu konfigurieren:

 

Der COM-Port (Serial line) hat die gleiche Einstellung, wie der über USB angeschlossene ARDUINO UNO ( bei mir hier COM6).

 

Die Baudrate (Speed) ist gleich der für den ARDUINO UNO eingestellten Rate [im Sketch die Zeile " Serial.begin (9600);"]. Ich verwende hier nur 9600 (sicherheitshalber eine relativ niedrige Geschwindigkeit, welche aber vollkommen ausreichend ist).

 

Verbindungstyp (Connection type) Serial

 

Fenster Schließen (Close window on exit): Only on clean exit.

 

Dann: Open klicken.

Abb.9

Das ARDUINO UNO Brennprogramm erwartet nun ein Startbefehl zum Löschen des ATtiny, was mit einem Rechtsklick der Maus erfolgen kann.

 

Im Terminal-Programmfenster kann verfolgt werden, was zum ATtiny gesendet wird, siehe Abb.10.

 

Danach ist der ATtiny gelöscht und befindet sich wieder im Urzustand, sodass er wieder zu anderen Zwecken verwendet werden kann. (Dazu muss natürlich auch wieder der Bootloader auf den ATtiny geschrieben werden, bevor auf ihm ein Programm hochgeladen werden kann, siehe oben unter "ARDUINO ATtiny-Brenner").

Abb.10
Die komplette Anleitung kann hier heruntergeladen werden:
- Beschreibung als pdf mit Programm-Listing
- Fritzing
- ARDUINO Sketch
Download
HJB_ARDUINO_UNO_ATtiny_Brenner

ATtiny Brenner-Shield für einen ARDUINO UNO

Um nicht jedesmal die Schaltung auf einem Steckboard aufbauen zu müssen (ein Steckboard ist auch nicht gut betriebssicher!), kann die Hardware für den Brenner auch auf ein sogenanntes Shield fest aufgebaut werden. Das Schield wird dann einfach oben auf einen ARDUINO UNO aufgesteckt, die Brennsoftware in den ARDUINO geladen, den zu löschenden ATtiny in den DIL-8-Sockel stecken (dabei auf die Kerbe, beziehungsweise auf den Punkt bei Pin 1 achten! In der Shield-Abbildung also links unten des Sockels!), die USB-Verbindung zum PC (oder Laptop) hergestellt, (sofern der ARDUINO UNO nicht mehr das Brennprogramm enthält, die IDE mit dem Brennprogramm starten und das Programm hochladen), die Einstellungen überprüfen (in der IDE unter "Werkzeug" Board ARDUINO UNO, COM-Port), PuTTY starten mit Einstellungen wie oben beschrieben, und los geht´s.

Die Abbildung 11 zeigt den Aufbau des Shields (Prototype Shield v.5, bestellbar im Internet).
Diese Shield ist auch unter "ARDUINO und Zubehör" eingestellt.

Abb.11

Abb.12
Bauteilebestückung auf der Oberseite des Shields.
Der hier bestückte kleine Keramikkondensator von 100pF muss nicht zwingend bestückt werden. Er dient aber dazu, eventuelle Störungen (verursacht durch die ICs) zu dämpfen. Statt der 12V-Buchse kann auch eine Klemm- oder Steckerleiste verwendet werden, um das 12V Steckernetzteil anzuschließen.

Abb.13
Verdrahtung auf der Unterseite des Shields.
Diese Abbildung soll eine Hilfe bei der Verdrahtung sein. Die hier dargestellten Drahtfarben korrespondieren mit den Leitungsfarben der Abbildungen 6 und 7, zur besseren Orientierung und brauchen also nicht zwingend in diesen Farben verbaut werden.
Anschlussbelegung des Transistors.
Es kann jeder Kleinleistungstransistor verwendet werden; es ist aber auf die Anschlussbelegung zu achten!

Abb.14
Ein 8-poliger Sockel (DIL-Fassung, DIL = Dual-In-Lnline) dient zur Aufnahme des ATtiny85-ICs.
Abb.15
Die Verdrahtung kann auch mittels Fädelstifte erfolgen.
Die Lackisolierung schmilzt dabei an den Lötstellen (Löttemperatur 400-450°C). Hierzu gehört aber zuvor etwas Übung!

Abb.16
Hat man sich einmal "verlötet" und muss die Lötung wieder entfernen, so hilft eine Enlöt-Litze mit einer Breite von 1,5mm (fein). Das Ende der Litze wird knapp auf die Lötstelle gesetzt, die Spitze des Lötkolbens oben auf die Litze gedrückt bis Lötzinn in das Kupfergeflecht steigt.
Abb.17

ATtiny Bootloader-Shield für einen ARDUINO UNO, als auch zum Hochladen von Sketches in den ATtiny

Auch für den Bootloader ist es vorteilhaft, sich ein Shield aufzubauen. Spendiert man sowohl beim ATtini-Brenner, als auch beim ATtiny-Bootloader, jeweils einen eigenen ARDUINO UNO mit den jeweiligen Programmen, so können ATtiny-ICs schnell und komfortabel bearbeitet werden. Das Bootloader-Shield kann auch zum Hochladen von Programmen auf einem ATtiny verwendet werden; dann aber sollte ein 10uF Kondensator von GND nach RESET auf das Shield gesteckt werden, damit beim Hochladen von Programmen ein RESET sicher vermieden wird (Abb.18). Dieser Kondensator wird aber beim Hochladen eines Bootloaders auf einen ATtiny entfernt!
Abb.19

Abb.18

Abb.20
Bauteilebestückung auf der Oberseite des Shields.
Der hier bestückte kleine Keramikkondensator von 100pF muss nicht zwingend bestückt werden. Er dient aber dazu, eventuelle Störungen (verursacht durch die ICs) zu dämpfen.

Abb.21
Verdrahtung auf der Unterseite des Shields.
Diese Abbildung soll eine Hilfe bei der Verdrahtung sein.
Die 5V-Stromversorgung erfolgt vom PC über USB an den ARDUINO UNO USB-Anschluss.
Beachte:
beim HV-Brenner, beim Bootloader, sowie beim Programmhochladen, sind die Einstellungen stets vorzunehmen, wie sie in den oben verfügbaren Downloads angegeben werden!
Die Schaltungen und Programme auf dieser Seite wurden aufgebaut und getestet. Auch konnten beschriebene ATtiny85-ICs mehrfach mit dem HV-Brenner gelöscht werden (also in ihren Ursprungszustand versetzt werden) und dann wieder mit einem Bootloader versehen werden und neue Programme hochgeladen werden.

 

zurück zu ARDUINO