Grundkenntnisse Programmierung 1 (Pulsierende LED)

Aus HSHL Mechatronik
Zur Navigation springen Zur Suche springen

Void loop und void setup

Quelltext 1: ArduinoSketchStruktur.ino

void setup ( ) // Programmstart
{
  // Anweisungen
}
void loop ( )  // Hauptschleife
{
  // Anweisungen
}

Setup-Funktion

  • Wird einmalig beim Start des Arduino-Boards oder nach einem Reset ausgeführt.
  • In dieser Funktion werden Variablen, Pinmodi, Bibliotheken, usw. initialisiert.
  • Muss immer vorhanden sein!

Die Loop-Funktion

  • Ist eine Endlosschleife, die nach jedem Durchlauf erneut aufgerufen wird.
  • Hier wird der Code hineingeschrieben, der dauerhaft ausgeführt werden soll.

Initialisierung (Zuweisung)

Erklärung

  • Ist die Zuweisung für ein Datenobjekt oder einer Variable.
  • Wird benötigt, um im Programm Variablen Eigenschaften zuzuweisen.
  • Sozusagen wird einer Person ihr Alter zugeordnet (Lisa), um sie wiederzuerkennen wird ihr das Alter (18) zugewiesen.
  • So weiß das Programm, dass Lisa 18 Jahre alt ist.

Datentypen (Int)

  • Um nun die erstellte Variable (Lisa = 18) verwerden zu können, benötigen wird ein Datentyp benötigt.
  • Arduino verfügt über einige Datentypen, siehe [hier!]
  • Für das Beispiel (Lisa = 18) wird eine Variable für Zahlen benötigten, diese lautet Intiger(Int)

Quelltext 2: Int.ino

int Lisa = 18;    // Lisa ist 18 Jahre alt

Funktionen

Erklärung

  • Zum Steuern des Arduino-Boards und zur Durchführung von Berechnungen.
  • Für das Projekt, benötigt man drei Funktionen, pinMode(), analogWrite() und delay().

pinMode()

  • Wird benötigt, um den verwendeten Pin vom Arduino als OUTPUT (Ausgang) oder INPUT (Eingang) festzulegen.
  • OUTPUT um Informationen mit dem Arduino zu empfangen.
  • INPUT um Daten vom Arduino zu einem Empfänger zu verschicken.
  • Wird verwendet, um die LED zuzuweisen.


Quelltext 3: pinMode.ino

pinMode(Pin, OUTPUT);   // Ausgang Zuweisung 
// oder
pinMode(Pin, INPUT);    // Eingang Zuweisung

analogWrite()

  • Schreibt einen Analogwert auf einen Pin.
  • Ein Analogwert ist ein Zahlenwert, wie Temperatur = 30
  • Diese Funktion wir verwendet, um die LED mit verschiedener Helligkeit leuchten zu lassen.


Quelltext 4: analogWrite.ino

analogWrite(Pin, Analogwert);  // Aufbau

analogWrite(Pin(LED), 200);    // Beispiel: Pin 5 sendet nun den Wert 200 an die verbundene LED.

Strukturen

If-Verzweigung

  • Das if-Statement checkt, ob eine Bedingung true ist und führt dann den Code aus, der innerhalb der Klammern steht.

Vergleichsoperatoren

x == y (x ist gleich y)
x != y (x ist nicht gleich y)
x <  y (x ist kleiner als y)
x >  y (x ist größer als y)
x <= y (x ist kleiner als oder gleich zu y)
x >= y (x ist größer als oder gleich zu y)


Geschweifte Klammern {}

  • Auf eine öffnende geschweifte Klammer { muss immer eine schließende geschweifte Klammer } folgen.
  • Siehe im Beispiel: if-Verzweigung


Beispiel if-Verzweigung


Quelltext 5: ifverzweigung.ino

if (Lisa == 18) {        // Wenn Lisa 18 Jahre alt ist wird die Anweisung ausgeführt
   // Anweisung;
}
else (Lisa != 30) {      // Wenn Lisa nicht 30 Jahre alt ist wird die Anweisung ausgeführt
   // Anweisung;
}

if (Lisa == 18 || Lisa == 20) {        // Wenn Lisa 18 '''oder''' 20 Jahre alt ist wird die Anweisung ausgeführt
   // Anweisung;
}

if (Lisa == 18 && Lisa != 20) {        // Wenn Lisa 18 '''und '''nicht 20 Jahre alt ist wird die Anweisung ausgeführt
   // Anweisung;
}

→ zurück zum Hauptartikel: Klicken!