Attiny_programmieren - NikolaiRadke/Nokolino GitHub Wiki
ATtiny programmieren
Nokolinos Hirn, ein ATtiny85 oder der (unwesentlich) preisgünstigere ATtiny45, muss natürlich mit vorher mit der Software beschrieben werden. Das ist bereits geschehen. Wer das gerne selber probieren oder ein paar Einstellungen verändern möchte, ist in diesem Kapitel an der richtigen Stelle.
Wer sich nicht auskennt und keinen entsprechenden Programmer zur Hand hat, dem sei hier geholfen: Der ATtiny lässt sich über seine ICSP-Schnittstelle (In-Circuit Serial Programming) mit Hilfe eines Arduinos, Arduino-IDE und eines 10µF-Elkos leicht programmieren.
Arduino-IDE vorbereiten
Zunächst muss die ATtiny-Unterstützung installiert werden.
- Unter
Datei > Voreinstellungen
im FeldZusätzliche Bordverwalter-URLs
folgende URL eingetragen werden:
https://raw.githubusercontent.com/damellis/attiny/ide-1.6.x-boards-manager/package_damellis_attiny_index.json
- Mit OK bestätigen.
- IDE neu starten.
- Im Menü
Werkzeuge > Board > Boardverwalter...
den Boardverwalter starten. attiny by David A. Mellis
auswählen und aufInstallieren
klicken.
Nun ist die ATtiny-Unterstützung installiert. Jetzt muss der Arduino vorbereitet werden.
Arduino vorbereiten
- Den Arduino (UNO, Nano,...) mit dem PC verbinden.
- Kontrollieren, ob auch das richtige Board unter
Werkzeuge > Board
eingestellt ist, alsoArduino/Genuino UNO
bzw.Arduino Nano
. - Unter
Datei > Beispiele > ArduinoISP > ArduinoISP
öffnen und mitSketch > Hochladen
auf den Arduino laden.
ATtiny und Arduino verbinden
Verbindung trennen und den Arduino wie folgt mit dem ATtiny verbinden, dabei den Elko nicht vergessen:
Hinweis für den Arduino Mega
Bei den großen Brüdern gilt eine andere Pinbelegung:
Tiny -> Mega
Pin 1 -> Pin 53 | Pin 8 -> 5V
Pin 2 -> leer | Pin 7 -> Pin 52
Pin 3 -> leer | Pin 6 -> Pin 50
Pin 4 -> GND | Pin 5 -> Pin 51
Bei manchen Klonen wird Pin 1 nicht mit Pin 53 verbunden, sondern mit Pin 10. Ausprobieren.
Bootloader flashen
Der ATtiny benötigt einen Bootloader, um starten zu können. Dabei wird auch die Frequenz festgelegt. Nokolinos ATtiny läuft mit 8 Mhz und dem internen Taktgeber.
- Den Arduino wieder mit dem PC verbinden. Unter
Werkzeuge > Port
ggf. wieder den verbundenen Port anpassen. - Unter
Werkzeuge > Programmer > Arduino as ISP
einstellen. - Unter
Werkzeuge > Board > ATtiny25/45/85
einstellen. - Unter
Werkzeuge > Prozessor
nunATtiny85
bzw.ATtiny45
auswählen. - Unter
Werkzeuge > Clock > 8 MHz (internal)
auswählen. - Unter
Werkzeuge > Bootloader brennen
starten.
Nach einigen Sekunden ist der Bootloader gebrannt und der ATtiny kann mit eigenen Sketchen bespielt werden.
Nokolino-Firmware flashen
Jetzt fehlt noch der entsprechende Sketch, der jetzt installiert werden soll. Dazu wird zunächst Nokolino.ino in der IDE geöffnet.
Die Software ist mit meines Erachtens monstertypischen Voreinstellungen ausgerüstet. Es muss nur wenig eingestellt werden:
- Soll Nokolino erst als Steckbrett ausgetestet werden, so sollte in dies in Zeile 37 definiert werden.
- Die Lautstärke kann in Zeile 31 angepasst werden. 25 ist ideal. Einfach ausprobieren.
- Ein eigenes Sprachset kann in Zeile 34 und *35 angepasst werden.
- (Optional) Sprachintervall in Zeile 30 einstellen (10 = 10 Minuten ist voreingestellt).
- (Optional) Batteriewarnung deaktivieren in Zeile 48.
- (Optional) Nokolino sagt Piep beim Starten. Das kann in Zeile 47 deaktiviert werden.
- (Optional) Wenn ein Lichtsensor verwendet wird, kann er in Zeile 49 aktiviert werden.
- (Optional) Soll Nokolino meckern, wenn es dunkel ist, kann das in Zeile 50 aktiviert werden. Das geht freilich nur mit Lichtsensor.
- Sketch hochladen.
Das Hochladen funktioniert natürlich auch mit jedem anderen Sketch. Wer mag kann sich jetzt an den ATMEL-Winzlingen austoben und z.B. einen mächtigen Blink-Sketch (mit entsprechender Hardware) ausprobieren. Ansonsten kann die Verbindung nun getrennt und der ATtiny entfernt werden. Den Aufbau sollte jeder ruhig noch eine Weile so belassen, um ggf. Anpassungen am Sketch vornehmen zu können.
Als nächstes wird beschrieben, wie das MP3-Modul bespielt werden kann. Im nächsten Kapitel.