Unterroutine in Arduino

Ammar Ali 12 Oktober 2023
Unterroutine in Arduino

In diesem Tutorial wird die Arbeit mit Unterroutinen erläutert, indem Funktionen deklariert und im Hauptcode in Arduino aufgerufen werden.

Unterprogramm in Arduino

In Arduino können wir Funktionen deklarieren und sie im Hauptcode aufrufen, um mit Unterroutinen zu arbeiten. Der Code wird Zeile für Zeile ausgeführt, und wenn wir eine Funktion in einer Zeile aufrufen, hält Arduino an dieser Zeile an und wechselt zur Deklaration dieser Funktion.

Es führt den in der Funktion vorhandenen Code aus und wechselt dann zur folgenden Zeile im Hauptcode.

Beispiel:

void setup() {}
void loop() {
  // code
  Sub_1();
  // code
}
void Sub_1() {
  // code
}

Wenn die Funktionszeile Sub_1() im obigen Code ausgeführt wird, wechselt der Compiler zur Deklaration der Funktion Sub_1() und führt ihren Code aus.

Es kehrt zum Hauptcode zurück und bewegt sich zur folgenden Zeile. Wir können Funktionen mit oder ohne Rückgabetypen deklarieren.

Im obigen Code haben wir das Schlüsselwort void verwendet, was bedeutet, dass die Funktion nichts zurückgibt, aber wir können die Werte globaler Variablen in der Funktion ändern.

Die zu Beginn definierten Variablen, die von keiner Funktion umschlossen sind, heißen globale Variablen.

Lassen Sie uns eine globale Variable definieren und ihren Wert mit einer Subroutine ändern. Siehe Code unten.

int a = 5;
void setup() {}
void loop() {
  // code
  Sub_1();
  // code
}
void Sub_1() { a = 10; }

Im obigen Code wird der Wert der globalen Variablen a geändert, nachdem die Subroutine Sub_1() ausgeführt wurde. Wir können den Wert der Variablen vor und nach der Subroutine drucken, um zu prüfen, ob sie funktioniert oder nicht.

Wir können auch Funktionen mit einem Rückgabetyp definieren, die einen Wert zurückgeben, wenn sie aufgerufen werden.

Um eine Funktion mit einem Datentyp zu definieren, müssen wir zuerst den Datentyp, den Funktionsnamen und die Parameter schreiben, die wir innerhalb der Funktion übergeben möchten.

Lassen Sie uns beispielsweise eine Funktion definieren, um die Summe zweier Ganzzahlen zu ermitteln und das Ergebnis als Ganzzahl zurückzugeben.

void setup() {}
void loop() {
  int a = 5;
  int b = 5;
  int c;
  c = Sub_1(a, b);
  // code
}
int Sub_1(int x, int y) {
  int result = x + y;
  return result;
}

Wenn im obigen Code die Funktion Sub_1() mit den spezifischen Eingaben aufgerufen wird, gibt sie die Summe der beiden Eingaben zurück.

Beachten Sie, dass die Variablen, die wir in der Funktion Sub_1() übergeben haben, nicht die gleichen sind wie die, die wir in der Deklaration Sub_1() verwendet haben. Dennoch können wir dieselben Variablen verwenden, da sie nicht global sind.

Die innerhalb einer Funktion definierten Variablen können nur innerhalb dieser Funktion verwendet und geändert werden. Wir können das Schlüsselwort return verwenden, um einen Wert oder eine Variable zurückzugeben.

Wir können auch andere Datentypen verwenden, um eine Funktion wie string, char und long zu definieren. Wenn wir keinen Wert oder keine Variable zurückgeben wollen, können wir das Schlüsselwort void verwenden, um die Funktion zu definieren.

Subroutinen sind hilfreich, wenn wir einen sauberen Code schreiben oder eine Aufgabe mehrmals in einem Code wiederholen möchten.

Wenn wir eine Aufgabe mehr als einmal in einem Code ausführen möchten, müssen wir den Code mehrmals schreiben, aber wir können eine Funktion erstellen und den Code darin einfügen und sie jederzeit im Hauptcode aufrufen.

Es wird Zeit und Platz sparen und den Code sauber und kurz machen.

Autor: Ammar Ali
Ammar Ali avatar Ammar Ali avatar

Hello! I am Ammar Ali, a programmer here to learn from experience, people, and docs, and create interesting and useful programming content. I mostly create content about Python, Matlab, and Microcontrollers like Arduino and PIC.

LinkedIn Facebook