{{indexmenu_n>20}} ====== ESP spezifische Programmierung ====== ====== ESP8266 spezifische Dinge ====== Hier findest du eine Übersicht über Funktionen und Programmierbeispiele speziell für den ESP8266. ===== Wi-Fi ===== === Wi-Fi einrichten === #include const char* ssid = "Dein_WiFi_Netzwerk"; const char* password = "Dein_Passwort"; void setup() { Serial.begin(115200); WiFi.begin(ssid, password); while (WiFi.status() != WL_CONNECTED) { delay(500); Serial.print("."); } Serial.println("WiFi verbunden!"); Serial.println(WiFi.localIP()); } void loop() { // Dein Code hier } ===== Deep Sleep-Modus ===== === Deep Sleep mit Timer === #include void setup() { Serial.begin(115200); Serial.println("ESP8266 geht in Deep Sleep..."); ESP.deepSleep(10 * 1000000); // 10 Sekunden } void loop() {} ===== Webserver ===== === Einfacher Webserver === #include #include ESP8266WebServer server(80); const char* ssid = "Dein_WiFi_Netzwerk"; const char* password = "Dein_Passwort"; void setup() { Serial.begin(115200); WiFi.begin(ssid, password); while (WiFi.status() != WL_CONNECTED) { delay(500); Serial.print("."); } Serial.println("WiFi verbunden!"); Serial.println(WiFi.localIP()); server.on("/", []() { server.send(200, "text/html", "

Hallo vom ESP8266!

"); }); server.begin(); } void loop() { server.handleClient(); }
===== Serielle Kommunikation ===== === Seriellen Monitor initialisieren === Serial.begin(115200); === Daten senden === Serial.print("Nachricht: "); Serial.println("Hallo ESP8266!"); === Daten empfangen === if (Serial.available()) { char input = Serial.read(); Serial.print("Empfangen: "); Serial.println(input); } ====== ESP32 spezifische Dinge ====== Hier findest du eine Übersicht über Funktionen und Programmierbeispiele speziell für den ESP32. ===== Wi-Fi ===== === Wi-Fi einrichten === #include const char* ssid = "Dein_WiFi_Netzwerk"; const char* password = "Dein_Passwort"; void setup() { Serial.begin(115200); WiFi.begin(ssid, password); while (WiFi.status() != WL_CONNECTED) { delay(500); Serial.print("."); } Serial.println("WiFi verbunden!"); Serial.println(WiFi.localIP()); } void loop() { // Dein Code hier } ===== Bluetooth ===== === Bluetooth starten === #include "BluetoothSerial.h" BluetoothSerial SerialBT; void setup() { Serial.begin(115200); SerialBT.begin("ESP32_Bluetooth"); Serial.println("Bluetooth gestartet. Gerät sichtbar."); } void loop() { if (SerialBT.available()) { char incomingChar = SerialBT.read(); Serial.print("Empfangen: "); Serial.println(incomingChar); } delay(20); } ===== Deep Sleep-Modus ===== === Deep Sleep mit Timer === #include "esp_sleep.h" void setup() { Serial.begin(115200); Serial.println("ESP32 geht in Deep Sleep..."); esp_sleep_enable_timer_wakeup(10 * 1000000); // 10 Sekunden esp_deep_sleep_start(); } void loop() {} ===== Multitasking ===== === Beispiel für zwei Tasks === void Task1(void * parameter) { while (true) { Serial.println("Task 1 läuft"); delay(1000); } } void Task2(void * parameter) { while (true) { Serial.println("Task 2 läuft"); delay(500); } } void setup() { Serial.begin(115200); xTaskCreate(Task1, "Task1", 1000, NULL, 1, NULL); xTaskCreate(Task2, "Task2", 1000, NULL, 1, NULL); } void loop() {} ===== Webserver ===== === Einfacher Webserver === #include #include WebServer server(80); const char* ssid = "Dein_WiFi_Netzwerk"; const char* password = "Dein_Passwort"; void setup() { Serial.begin(115200); WiFi.begin(ssid, password); while (WiFi.status() != WL_CONNECTED) { delay(500); Serial.print("."); } Serial.println("WiFi verbunden!"); Serial.println(WiFi.localIP()); server.on("/", []() { server.send(200, "text/html", "

Hallo vom ESP32!

"); }); server.begin(); } void loop() { server.handleClient(); }
===== Serielle Kommunikation ===== === Seriellen Monitor initialisieren === Serial.begin(115200); === Daten senden === Serial.print("Nachricht: "); Serial.println("Hallo ESP32!"); === Daten empfangen === if (Serial.available()) { char input = Serial.read(); Serial.print("Empfangen: "); Serial.println(input); }