Auch beim Programmieren existiert ein ähnlicher Hintergedanke wie beim Verdrahten von Schaltplänen. 

Bevor du dich einfach drauf los stürzt und anfängst zu programmieren, solltest du dir kurz Gedanken darüber machen, welche Funktionen das von dir entworfene Programm erfüllen soll.

Auf diese Weise erstellst du dir selber eine Art roten Faden, nach dem du dich während des Programmierens richten kannst. Eine elegante Möglichkeit dies zu lösen, wäre das Erstellen eines Flussdiagrammes. Dafür gibt es viele verschiedene Programme, die du kostenlos nutzen kannst. Das von uns verwendete Programm nennt sich Draw.io und eignet sich bestens zum Erstellen verschiedenster Diagramme und Vektorgrafiken.

Was soll das Programm, welches wir für den ESP32 schreiben wollen, nun also können? Zu Beginn wird der ESP32 erst einmal gestartet, was ebenfalls den Programmstart zur Folge hat. Dies wird über den Block "Start" dargestellt.

Anschließend sollten zunächst alle Variablen und Konstanten initialisiert und deklariert, alle Bibliotheken eingefügt, die Bluetooth- und die OneWire-Schnittstelle aufgesetzt und die PWM-Kanäle eingerichtet werden.

Dies wird durch den darauffolgenden Block "Initialisierungsvorgang", welcher nach dem Starten nur ein Mal stattfindet, gekennzeichnet.

Anschließend an den Initialisierungsvorgang startet der Loop des Programms.

In diesem stellt das Programm fest, ob Daten per Bluetooth empfangen werden können oder nicht. Können keine Daten empfangen werden, so wird diese Abfrage erneut durchgeführt, bis Daten zum Empfangen vorhanden sind. Sind Daten zum Empfangen vorhanden, so werden diese eingelesen und ausgewertet. Je nachdem welcher Befehl von dem Smartphone per Bluetooth versendet wurde, wechselt die RGB-LED entweder direkt ihre Farbe, schaltet in den Automatikmodus, in welchem die Umgebungstemperatur die Farbe der RGB-LED bestimmt oder deaktiviert die Unterbodenbeleuchtung. Auch das eventuelle Auslesen des Temperatursensors ist mit in den Block des Datenauswertens inkludiert.

Nachdem ein Befehl ausgewertet wurde, kehrt das Programm erneut zur Abfrage zurück, ob Daten an der Bluetooth-Schnittstelle anliegen. Das Programm soll so geschrieben werden, dass flüssig zwischen den einzelnen Modi beziehungsweise Farben gewechselt werden kann und die RGB-LED beim Herstellen einer Bluetooth-Verbindung ausgeschaltet wird.

Die untenstehende Grafik bildet das soeben beschriebene Diagramm der Programmfunktion des ESP32-Programms ab.

Programmfunktion des ESP32-Programms

Abbildung: Funktionsplanung des ESP32-Programms
Quelle: BBS2 Wolfsburg


Last modified: Tuesday, 23 January 2024, 2:40 PM