Du bist hier: Sketch > Arduino programmieren >
Arduino Referenz: Struktur > Function ↗
Arduino Referenz: Struktur > Function ↗
Funktion
1. Beschreibung
1.1. Wirkung
Mit der Funktion kannst du Teile deines Sketches, welche sich mehrfach wiederholen, in ein Unterprogramm auslagern. Ein Platzhalter für diese Programmteile kann dann im Hauptloop an beliebiger Stelle mehrfach eingesetzt werden.
1.2. Zulässige Werte
In die Funktion kann alles eingesetzt werden, was in den Hauptloop auch eingesetzt werden kann.
1.3. Verwendung
Die Funktion wird dort eingesetzt, wo das Sketch übersichtlicher organisiert werden soll. Richtig spannend wird es, wenn du in der Funktion noch Variablen festlegst, welche dein Unterprogramm in verschiedenen Varianten ausführbar machen! Zwei tolle Beispiele für diese Strategie findest du unter workshop.pglu.ch > Aktor > Servo oder workshop.pglu.ch > Sensor > Ultraschallsensor. Hier konstruierst du deine ganz individuelle Programmanweisung zur Steuerung eines Servos oder zur Distanzmessung mit dem Ultraschallsensor.
1.4. Geschichte
Die enorme Power von Unterprogrammen (Engl.: Subroutines) wurde schon in den Anfängen der Informatik der 40er Jahre entdeckt. Als Erfinderin der Subroutine gilt die Irisch-Amerikanerische Mathematikerin Kathleen Antonelli, welche während des zweiten Weltkrieges für die USA ballistische Flugbahnen mithilfe des ersten elektronischen Computers ENIAC berechnete. Ein Blick in den Wikipedia-Eintrag über Kathleen Antonelli lohnt sich.
- Wikipedia Kathleen Antonelli ↗
- Wikipedia Unterprogramm ↗
- Wikipedia ENIAC ↗
2. Ausprobieren
2.1. Eine LED verschieden schnell blinken lassen
2.2. Variable LEDs blinken lassen
3. PGLU-Sketches mit Unterprogrammen
Die Funktion spielt in zahlreichen PGLU Projekten eine entscheidende Rolle. Meistens sind dies Sketches für erweiterte Ansprüche. Die spannendste Umsetzung ist sicher die Steuerung des Servos oder die Distanzmessung mit einem Ultraschallsensor, wo mit der Funktion völlig neue Programmblöcke kreiert wurde:
- workshop.pglu.ch > Aktor > Servo
- workshop.pglu.ch > Aktor > Piezo Element
- workshop.pglu.ch > Sensor > Ultraschallsensor
- Roboter Auto Variante 6 (empfohlen als Einstieg) ↗
- Roboter Auto Aufgabe 4 Versionen 2+3 ↗
- Roboter Auto Varianten 1+2 ↗
- LED Plexiglaslampe Varianten 3+4 ↗
- Lasergraph Variante 5 ↗
- Kaugummiautomat alle Sketches ↗
- drbeat.pglu.ch > Woodpeckers quartet ↗
- drbeat.pglu.ch > Dr. Beat ↗