Arduino Uno Standalone (eigenständig)

Ein Ziel im Umgang mit dem Arduino Uno kann sein, dass man den programmierten Mikrocontroller (ATmega328) des Arduino Uno Standalone (eigenständig) in einer Schaltung außerhalb des Arduino Uno verwenden möchte. Dies kann in einer eigenen Schaltung, Platine oder einer Steckplatine sein. Das ist im Grunde kein Problem, muss man jedoch für den Mikrocontroller (ATmega328), der ja das Maß aller Dinge in dem Fall ist, die gleiche Umgebung bieten wie beim Arduino Uno, dass er sich quasi „wohl fühlt“. Wir werden aber sehen, dass der Mikrocontroller (ATmega328) in seinen Ansprüchen sehr genügsam ist. Legen wir also los:

Arduino Uno Standalone (eigenständig) verkabeln

Arduino Uno Standalone (eigenständig)

Arduino Uno Standalone (eigenständig)

Eigentlich kann man jetzt nicht mehr vom Arduino Uno sprechen, sondern eigentlich reden wir jetzt vom Standalone Betrieb des Prozessors, also des ATmega328. Wie jeder Mikrocontroller von ATMEL, so läuft auch der ATmega328 mit 5V, die jeweils an PIN 7, 21 und 20 anzulegen sind. GND wird am Pin 8 und am Pin 22 angelegt.

Außerdem muss der ATmega328, soll er die gleichen Taktzeiten und Eigenschaften und Verhalten wie im Arduino Uno haben, mit einem Quarz (Crystal) mit 20MHz betrieben werden. Dieser wird an die Pins 9 und 10 angeschlossen, die Polung spielt dabei keine Rolle. Über zwei Kondensatoren mit 22pF werden die zwei Pins – verbunden mit dem Quarz – nach GND verbunden.

Der eingezeichnete Rest-Knopf ist optional. Wird für die Schaltung ein Reset benötigt, so sollte er, wie dargestellt angeschlossen werden.

Ebenfalls optional ist in unserem Beispiel auch eine LED zu Testzwecken an Pin 19 angeschlossen und über einen Widerstand geschützt.

So versorgt kann der Prozessor in allen Schaltungen seine Arbeit verrichten, wenn er zuvor im Arduino Uno programmiert wurde. Aber die Verdrahtung gilt natürlich auch, wenn man den Mikrocontroller mit anderen Sprachen, z.B. BASCOM oder Assembler, programmiert wurde. Dem Prozessor ist es nämlich egal, mit welcher Programmiersprache er beschickt wurde – er arbeitet seinen Maschinencode ab und braucht die hier beschriebene Umgebung, um sich wolhzufühlen. Je nach Programmierung bedarf es, zugegeben, nicht unbedingt des Quarzes.

Genauere und gute Beschreibung auch hier: http://www.arduino-tutorial.de/barebones-arduino/