Eine kleine Einführung in die Software von Arduino

Im folgenden Link gibt es die Software zum Herunterladen.

Das Buch Arduino Cookbook (ISBN 978-0-596-80247-9) befindet sich als Nachschlagewerk in unserem Computerraum.

Die Buttons im Hauptprogramm:
Verify Das Programm wird auf Programmierfehler überprüft.
Stop Alle laufenden Prozesse werden beendet.
New Ein neues Programm (sketch) wird erstellt.
Open Ein vorhandenes Programm wird in einem neuen Task geöffnet, das kann auch ein Beispielprogramm sein.
Save Das aktuelle Programm wird gespeichert.
Upload Das aktuelle Programm wird über den USB-Anschluss übertragen.
Achte darauf, dass unter Tools-Board das richtige Board eingestellt ist. Für das Romeo-Board musst du das Zweite von oben einstellen (Arduino Duemilanove...)
Wenn mehr als ein USB-Anschluss verwendet wird, dann musst du bei Problemen mit der Übertragung unter Tools-Serial Port evtl. einen anderen Port wählen.
Serial Monitor Hiermit kann man sich Werte u.a. auf dem Computermonitor anzeigen lassen, ohne ein Display zu verwenden. Das ist besonders hilfreich, wenn man das Programm ohne diese Display überprüfen möchte.
Wie das geht sieht man weiter unten.




Aufbau eines Arduinoprogrammes

Ein Arduinoprogramm ist prinzipiell in drei Abschnitte aufgeteilt:
Als erstes definiert man Datentypen (z.B. int (ganze Zahlen), char (Zeichen)) sowie Begriffe mit #define und sagt welche Zusatzprogramme man verwendet.
Danach werden mit void setup() {...} die Befehle in den geschwungenen Klammern einmal ausgeführt. Ein typisches Beispiel wäre die Definition der Pins.
Im dritten Teil kommen mit void loop() {...} in den geschwungenen Klammern die Befehle, die unendlich oft wiederholt werden.

Hier ist ein Beispiel, bei dem am analogen Pin A0 ein Potentiometer angeschlossen wird und dementsprechend eine Diode am digitalen Pin 13 schneller oder langsamer an- und ausgeht.

In diesem Beispiel werden im ersten Abschnitt die Variablen sensorPin, ledPin und sensorValue definiert und ihnen Werte zugewiesen.
Danach wird in void setup() einmalig mit pinMode(ledPin, OUTPUT); der digitale Pin 13 als Ausgang definiert.
Im letzten Teil wird in void loop() als Unendlichschleife der Wert an Pin A0 eingelesen und die Leuchtdiode (LED) bei Pin 13 an- und ausgeschaltet. Mit delay(sensorValue); bleibt die LED entsprechend des Sensorwertes in Millisekunden lange an oder aus.

Willst du mehr über die analogen und digitalen Pins des Romeo-Boards erfahren, klicke hier.



Der serielle Monitor

Um zu wissen, welche Werte gerade an den Pins angezeigt werden, kann man den Computermonitor über den oben gezeigten Button als Display verwenden. Dazu werden die Informationen durch den I²C-Bus über den USB-Anschluss zum Computer übertragen. Dazu das folgende Beispiel:

Entscheidend hierbei ist die Zeile Serial.begin(9600);. Sie aktiviert den I²C-Bus, um die Daten später anzuzeigen. Wenn nach dem aufspielen der Software mit der -Button angeklickt wird, dann wird der Wert des analogen Ausgangs A7 auf dem Monitor immer wieder angezeigt. Es müsste ständig der Maxmalwert 1023 angezeigt werden. Über die Taster S1-S5 auf dem Board ändert sich der Wert, da die Taster über verschiedene Widerstände mit dem analogen Pins A7 verbunden sind. Probiere es aus.