Programmieren

Inhaltsverzeichnis

Vorweg

Beispiel

Software holen und installieren
Programmieren

EEPROM.h

Wire.h (I²C)

Servo.h

Links

Ergänzungen, Tipps und Tricks

Programmieren

Der Editor

Da die Arduino-Software größtenteils in Java (eine Programmiersprache) geschrieben ist, sieht sie unter jedem Betriebssystem mehr oder weniger gleich aus. Unterschiedlich ist lediglich die jeweilige „Fensterdekoration“ (das Aussehen der Fensterrahmen usw.).

Wenn man die Arduino-Software startet, sieht man zunächst den Editor, in dem das Programm geschrieben und von dem aus es zum Arduino übertragen werden kann:

Der Editor

Die Symbole unter der Menüzeile sind:

Verifizieren
Startet eine „Probeübersetzung“, um festzustellen, ob das Programm fehlerfrei ist.
Hochladen
Übersetzt das Programm und überträgt es zum Arduino.
Neu
Öffnet ein neues Editorfenster, in dem man mit einem neuen Programm beginnen kann.
Öffnen
Zeigt ein Menü, über das ein eigenes Programm oder ein Beispiel geladen werden kann.
Speichern
Öffnet ein Fester, über welches das aktuelle Programm gespeichert werden kann.

Und ganz rechts:

Serieller Monitor
Öffnet ein Fenster, in dem die Sachen erscheinen, die man im Programm auf der seriellen Schnittstelle ausgeben lässt.

Darunter befindet sich der Bereich, in dem das aktuelle Programm bearbeitet werden kann. Wenn das Programm aus mehreren Dateien besteht, erscheint für jede Datei ein eigener Textbereich mit einem „Tab“, in dem der Dateiname steht.

Unter dem Textbereich befindet sich ein Info-Teil, in dem zum Beispiel Meldungen des Compilers erscheinen. Der Compiler ist das Programm, das den sog. Quelltext in Anweisungen für den Mikrocontroller des Arduinos übersetzt. Werden beim Compilerlauf Fehler entdeckt, erscheinen Meldungen, die bei der Fehlersuche helfen.

Am unteren Rand des Fensters befindet sich die Statuszeile, in der die Nummer der gerade bearbeiten Zeile sowie Informationen über das eingestellte Arduino-Modell und den benutzten USB-Anschluss stehen.

Das Programm

Das Programm eines Arduinos wird „Sketch“ genannt. Ein Sketch besteht meistens aus drei Teilen:

Deklaration globaler Variablen
Die wichtigsten Gründe für den Einsatz von Variablen dürften sein, dass man sich weniger merken muss und dass man Werte bei Bedarf nur an einer Stelle ändern muss.
setup()
Diese Funktion wird zu Programmbeginn einmal aufgerufen. Hier werden beispielsweise Dinge eingerichtet, die nur einmal konfiguriert werden müssen und die für den restlichen Programmablauf gleich bleiben (z. B. die Geschwindigkeit der seriellen Schnittstelle).
loop()
Hier läuft das eigentliche Programm ab. Diese Funktion wird üblicherweise als Endlosschleife wiederholt.

Hier ein einfaches Beispiel, das die LED an Pin 13 des Arduinos blinken lässt:

byte LEDPin=13;

void setup()
{
  pinMode(LEDPin, OUTPUT);
}

void loop()
{
  digitalWrite(LEDPin, HIGH);
  delay(1000);
  digitalWrite(LEDPin, LOW);
  delay(1000);
}

In der ersten Zeile wird die Variable LEDPin angelegt. Sie enthält die Nummer des Pins, an dem eine der auf dem Arduino verbauten LEDs angeschlossen ist.

In der Funktion setup() wird festgelegt, dass dieser Pin als Ausgang benutzt wird.

In der loop()-Funktion stehen die Befehle, die die LED blinken lassen. Zunächst wird die LED eingeschaltet, eine Sekunde gewartet und dann die LED wieder ausgeschaltet. Da diese Funktion als Endlosschleife ausgeführt wird, wird zum Schluss noch einmal eine Pause eingelegt.

Sobald dieses Programm auf den Arduino übertragen wurde, fängt dessen LED an Pin 13 an, im Sekundentakt zu blinken.

Wer noch nie programmiert hat und eine Einführung in dieses Thema sucht, wird im Internet schnell fündig. Ein guter Startpunkt ist z. B. die Startseite des deutschsprachigen Arduino-Wikis („Playground“).

Eine Einführung, die auch einfache Beschaltungsbeispiele enthält, befindet sich hier: http://www.netzmafia.de/skripten/hardware/Arduino/Arduino_Programmierhandbuch.pdf

Zum Nachschlagen einzelner Befehle eignen sich zum Beispiel:
Arduino-Sprachreferenz
Deutschsprachige Referenz

Bibliotheken

Bibliotheken sind Sammlungen besonderer Funktionen, die die Handhabung spezieller Komponenten (z. B. des EEPROMs des Arduinos oder eines Displays) vereinfachen.

Um die Funktionen solcher Bibliotheken verwenden zu können, müssen sogenannte Header-Dateien eingebunden werden. Das geschieht mit Zeilen wie dieser:

#include <EEPROM.h>

Sobald eine Bibliothek in ein Programm eingebunden wurde, stehen deren Funktionen zur Verfügung.

Im Folgenden werden drei Bibliotheken vorgestellt:

EEPROM.h
Mit den Funktionen dieser Bibliothek kann auf das EEPROM (ein nichtflüchtiger Speicher) eines Arduinos zugegriffen werden.
Wire.h
Diese Bibliothek hilft bei der Kommunikation über einen I²C-Bus.
Servo.h
Mit Hilfe von Servos kann der Arduino auf seine Umwelt einwirken, indem beispielsweise ein Hebel bewegt oder eine Spindel gedreht wird.

Weiter zu: EEPROM.h


Nach oben Inhaltsverzeichnis

Valid HTML 4.01 Transitional