Standardfunktionen
Befehl |
Schreibweise |
Pin-Funktion festlegen |
pinMode(nummer, INPUT/OUTPUT); |
Pin auf HIGH schalten |
digitalWrite(nummer, HIGH/LOW); |
Verzögerung einbauen |
delay(1000); |
Zustand von Pin lesen |
digitalRead(nummer); |
Serielle Schnittstelle initialisieren |
Serial.begin(baud-rate); z.B. 9600 |
Text seriell ausgeben |
Serial.print("Nachricht"); |
Text seriell ausgeben+ neue Zeile |
Serial.println("Nachricht"); |
Seriell einlesen |
Serial.read(); / Serial.readString(); |
Seriell text finden |
Seriel.find("text"); |
Digitale Pins einstellen
Um den Code lesbar und anpassbar zu gestalten, ist es sinnvoll Pins (also Eingänge und Ausgänge) am Anfang des Programms in Variablen zu speichern und verständliche und eindeutige Namen zu verwenden. Das ist durch mehrere Varianten möglich.
- #define LED 13
- Dies ersetzt quasi den Text „LED“ mit dem Wert 13.
- const int LED = 13;
- Konstanten werden für Werte benutzt, die im Programmcode nicht mehr verändert werden.
- Werden im Flash-RAM gespeichert. Somit belegen Konstanten nicht den internen RAM.
- int LED = 13;
- Der Einfachheit halber benutzen viele Beispiele int für Pin Definitionen. Dies kann man auch so machen, aber speichersparender ist hierbei const oder define.
Bei kleineren Programmen kommt es nicht dazu, dass man den Speicher des ESP32 ausreizt. Dennoch ist es wohl besser sein Projekt direkt speichersparend zu gestalten.
Übersicht:
- #define LED 13 -> kein RAM-Verbrauch
- const int LED = 13; -> Flash RAM-Verbrauch (Im Flash werden unter anderem konstante Daten ablegt)
- int LED = 13; -> 2 Byte RAM-Verbrauch