Arduino Konstanten

Die Arduino-Programmiersprache verfügt über vordefinierte Konstanten. Sie dienen in erster Linie dazu den Code übersichtlicher zu gestalten und dem Programmierer die Arbeit zu erleichtern.

1. Boolesche Konstanten

Boolesche Konstanten werden in Abfragen, Schleifen oder zur Wertzuweisung bei Variablen des Datenyps boolean verwendet. Dieser Datentyp kann nur zwei Werte annehmen entweder Wahr oder Falsch. In der Arduino Programmiersprache heißen sie entsprechend:

Erwähnt werden sollte an dieser Stelle, das Sie auch anstatt der vordefinierten Variablen true und false auch Ganzzahlen verwenden könnten.

Hinweis


Warum false 0 ist, aber true nicht unbedingt 1

In der Booleschen Algebra ist jeder Wert der ungleich 0 ist, true. Also wäre ein Wert von -1 oder 225 auch true.
Allein der Wert 0 entspricht false.

Code Beispiel zu true und false

Code-Beispiel

1
2
3
4
5
6
7
8
9
10
11
12
13
14
int x = 5, y = 3;
int led = 13; // Pin-Nr. zum Anschluss der LED
 
void setup(){
  pinMode(led, OUTPUT); // definiere Pin-Nr. 7 als Ausgang (OUTPUT)
 }
 
void loop(){
  if (x > y == true){ // Wenn x < y wahr ist
    digitalWrite(led, HIGH); // dann schalte die LED ein
  } else {
    digitalWrite(led, LOW); // ...sonst schalte den LED aus
  }
}

2. Pegelkonstanten für Ein- und Ausgänge

Die Pins des Arduinos können je nach Funktion zum Schalten von Ausgängen oder zum Erfassen von Signalzuständen verwendet werden. Ein digitaler Ausgang kann zum Beispiel ein- oder ausgeschaltet sein.
Bei einem geschalteten Ausgang spricht man von einem High-Pegel. Dieser entspricht einer Spannung von bestenfalls 5V. Zum Setzen eines digitalen Ausgangs bedient man sich der
digitalWrite()-Funktion. Das Gegenstück dazu ist der Low-Pegel, der im Idealfall bei etwa 0 Volt liegt. Sollte ein Pin als Eingang definiert sein, dann kann der Pegel mit digitalRead() für den entsprechenden Pin ausgelesen werden. Die Spannung am Eingang beträgt wieder im besten Fall ca. 5V und bei LOW-Pegel etwa 0V.

Code Beispiel zu digitalRead() und digitalwrite() mit HIGH und LOW

Code-Beispiel

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
int taster = 7; // Pin-Nr. zum Anschluss des Tasters
int motor = 8; // Pin-Nr. zum Anschluss des Motors
 
void setup(){
  pinMode(taster, INPUT); // definiere Pin-Nr. 7 als Eingang (INPUT)
  pinMode(motor, OUTPUT); // definiere Pin-Nr. 8 als Ausgang (OUTPUT)
}
 
void loop(){
  if (digitalRead(taster) == HIGH){ // Wenn Taster gedrückt wird
    digitalWrite(motor, HIGH); // dann schalte Motor ein
  } else {
    digitalWrite(motor, LOW); // ...sonst schalte den Motor aus
  }
}

Tabelle Logikpegel

Spannungsbereich Logikpegel
0 – 1,5V LOW-Pegel
1,5 – 3,0V undefinierter Pegel (Rauschen)
3,0 – 5,0V High-Pegel

3. pinMode()-Konstanten

Wie bereits erwähnt können Pins des Arduino sowohl als Ein- als auch Ausgang fungieren. Dazu steht uns die pinMode()-Funktion zur Verfügung. Sie benötigt zwei Parameter.
Der erste legt den Pin fest und besteht aus einer Zahl. Als zweiten Parameter kann eine der beiden Arduino-Konstanten verwendet werden, um anzugeben, ob es sich um einen Eingang oder Ausgang handelt-
Sie lauten:

Code Beispiel pinmode()

Code-Beispiel

1
2
pinMode(7, OUTPUT); // definiert Pin 7 als Ausgang
pinMode(8, INPUT); //defieniert Pin 8 als Eingang