ESP – LED mit einem HTML-Button schalten



Seite als PDF

Ziel des Projekts

Das Pro­gramm erstellt eine Web­sei­te, die mit der WiFi-Funk­ti­on der ESPs ange­zeigt wird. Ein Klick auf den But­ton schal­tet die LED.
Das Pro­gramm wur­de für den ESP32-Wroom geschrie­ben.
Pro­gram­me für ande­re Mikro­con­trol­ler fin­dest du hier

So sieht es im Brow­ser aus:

Der Schaltplan

(Fah­re mit der Maus über das Bild, um die Bezeich­nun­gen der Bau­tei­le zu sehen)

Konfiguration der Mikrocontroller

Das Programm

Bibliotheken und Variable

Du musst die SSID (Ser­vice Set Iden­ti­fier) des Rou­ters und das Pass­wort anpas­sen.
Im Pro­gramm kannst du ent­schei­den, ob du dem Rou­ter die Ver­ga­be der IP-Adres­se über­las­sen willst (sta­tischeIP = fal­se) oder selbst eine IP-Adres­se fest­le­gen willst (sta­tischeIP = true).

Die IP-Adres­se wird im Seri­el­len Moni­tor ange­zeigt, du musst sie in der Adress­zei­le eines Brow­sers dei­ner Wahl ein­ge­ben.

Der setup-Teil

Im set­up-Teil erhält der Mikro­con­trol­ler eine IP-Adres­se.
Je nach Zustand der Varia­ble sta­tischeIP wird sie dyna­misch vom Rou­ter ver­ge­ben oder sta­tisch fest­ge­legt.

Der / bezeich­net die Web­adres­se (URL = Uni­form Resour­ce Loca­tor). Wird sie auf­ge­ru­fen, baut die Funk­ti­on Sei­te­Bau­en die Web­sei­te auf.


Die Funk­ti­on LED­Schal­ten schal­tet die LED ein oder aus.. Sie wird aus­ge­führt, wenn im Brow­ser an die IP-Adres­se /LEDSchalten ange­hängt wird.

Zu die­sem Zweck wird in der Funk­ti­on Sei­te­Bau­en ein Link erstellt. Sobald der But­ton ange­klickt wird, führt der Brow­ser die Funk­ti­on LED­Schal­ten aus.
Anfüh­rungs­zei­chen in einer Anwei­sung müs­sen mit \“ „mas­kiert“ wer­den.

Der voll­stän­di­ge set­up-Teil:

Die Funktion SeiteBauen

Sei­te­Bau­en erstellt die Web­sei­te mit einer Über­schrift und einem run­den But­ton. Je nach Zustand der Varia­ble LED­Sta­tus wird der But­ton mit wei­ßem oder gel­ben Hin­ter­grund dar­ge­stellt.
Die Varia­ble LED­Sta­tus ist eine Varia­ble vom Typ bool. Sie kennt zwei Zustän­de: true (LED ist ein­ge­schal­tet) oder fal­se (LED ist aus­ge­schal­tet).
Die Inhal­te wer­den nach und nach dem String Sei­te (+=) hin­zu­ge­fügt.
Server.send sen­det den String Sei­te im For­mat text/html, wird der Code 200 bestä­tigt, wur­de die Sei­te erfolg­reich über­tra­gen.

Der But­ton wird mit CSS gestal­tet:

  • back­ground-color: Hin­ter­grund­far­be
  • width/height: Brei­te und Höhe
  • cur­sor: Form des Cur­sors (poin­ter)
  • bor­der-radi­us: Form der Linie (50% -> Kreis)
  • bor­der: Brei­te in Pixel , Dar­stel­lung und Far­be der Linie (2px solid black)

Die Funktion LEDSchalten

LED­Sta­tus = !LED­Sta­tus; ändert den Zustand der Varia­ble LED­Sta­tus: ist er true ändert er sich zu fal­se, ist er fal­se wird er zu true.

Es ist die Kurz­form von:

Die LED wird ent­spre­chend dem Wert von LED­Sta­tus geschal­tet: true ent­spricht 1 oder HIGH, fal­se hat den Wert 0 oder LOW.

Der loop-Teil

Der loop-Teil war­tet auf die Anfra­gen der Kli­en­ten.

Das vollständige Programm


Startseite
Aufgaben A-Z
Suchen
Downloads
Fehlermeldungen
Seite als PDF

Letzte Aktualisierung: Jan. 2, 2026 @ 10:10

Inhalt