Programmierung eines Arduino-Micro-Boards
(EN google-translate)
(PL google-translate)
Zum leichteren Einstieg in die Programmierung eines Arduino-Boards, werden in den folgenden Unterkapitel eine Reihe an ersten kleinen Schaltungen mit zugehörigen Programmen gegeben und eine kleine Aufgabe ergänzt, die selbsttätig zu lösen ist.

Bild 0-1: Pinlayout des Arduino-Micro.
|
Weitere Informationen #pdf arduino-micro-schematic.pdf arduino-micro-schematic.pdf - Anschlußschema.

Bild 0-2: Pinzuordnung zwischen Chip und Board.
Spezifikation des Arduino-Micro-Boards
|
Praktische Hinweise (schon einmal vorab für die späteren Übungen)
Beim Arduino kann man nicht voraussetzen, dass die jeweils konfigurierten Register in ihrem Startzustand sind. Typisch wäre, dass jedes Bit mit Null initialisiert wurde. Statt dessen führt eine Arduino-eigene Initialisierung Veränderungen an den Registern insbesondere der Timer durch.
Insbesondere wird der Timer0 von der Arduino-Firmware verwendet und ist deshalb vorkonfiguriert.
D.h. man muß nicht nur die Bits setzen, die gesetzt werden müssen, sondern auch die anderen löschen.
Einfache Abhilfe: Statt TCCR1A |= ... einfach TCCR1A = ... schreiben, so werden Bits, die gelöscht werden müssen auf Null gesetzt.