Spannende Maker-Projekte mit dem IoT-ControllerMit dem ESP32 setzen Maker anspruchsvolle IoT-Projekte um. Ein leistungsstarkes SoC und zahlreiche Schnittstellen zur Kommunikation machen ihn zur idealen Basis für alle Ihre Ideen in der IoT-Programmierung, bei der Hausautomation oder einfach beim Elektronikbasteln. Udo Brandes begleitet Sie mit diesem umfangreichen Leitfaden zum ESP32 bei Ihren Projekten und zeigt Ihnen die Arbeit mit Entwicklungsumgebungen, Sensoren, Schnittstellen und allem, was dazu gehört. So gelingt Ihnen der Einstieg in die Mikrocontrollerprogrammierung.Neu in dieser Auflage: Arduino IDE 2.0, erweiterte Kapitel zu Debugging und Multithread-Programmierung.Vom Schaltplan bis zum fertigen ProgrammKabellose Projekte mit dem IoT-ChipStromversorgung, Sensoren, SPI- und I²C-Schnittstellen Aus dem Inhalt:Chips und BoardsStromversorgungWerkstatt: Löten, Verkabeln, FritzingProgrammiergrundlagen in C und C++Entwicklungsumgebungen: Arduino und ESP-IDFAnalog- und Digitalausgänge, LEDs, Impulszähler und mehrSensorenSPI, I²C, UARTDrahtlose Kommunikation mit Bluetooth, OTA und WifiJTAG-Debugging und weitere Tricks bei der FehlersucheULP-Programmierung: Tasks und Deep SleepProjektideen für Maker: Evil Dice, Binär-Uhr, Solar-WLAN-Repeater

Stromversorgung, Sensoren, SPI- und I2C-Schnittstelle

Autorentext
Udo Brandes ist selbständiger Programmierer, IT-Entwickler und Autor. Die Möglichkeiten der Mikrocontrollerprogrammierung sind Zukunftsthemen, die ihn faszinieren und mit deren Chancen und Risiken er sich seit langem intensiv befasst. Zuvor war er Systementwickler beim Rechenzentrum der Finanzverwaltung des Landes Nordrhein-Westfalen und hat in unterschiedlichen Aufgaben für die Stadt Wuppertal gearbeitet.

Inhalt

Einleitung ... 13
1. Der Mikrocontroller ESP32 ... 19

1.1 ... Ein kurzer Rückblick in die Entwicklung von Mikrocontrollern ... 19
1.2 ... Die ESP32-SoCs ... 20
1.3 ... Die Module WROOM, SOLO, WROVER und PICO ... 26
1.4 ... Die Boards ... 29
1.5 ... Das ESP32-Dev-KitC V4 ... 30
1.6 ... Das ESP32-Dev-KitC V4 -- Erstinbetriebnahme am PC ... 41

2. Die Stromversorgung ... 43

2.1 ... Betriebszustände und typische Stromverbräuche ... 43
2.2 ... Anschlüsse zur Stromversorgung ... 45
2.3 ... Grundschema der Stromversorgung ... 46
2.4 ... Spannungsquellen ... 47
2.5 ... Spannungsregler ... 50

3. Ihre Werkstatt ... 55

3.1 ... Breadboard & Co. ... 55
3.2 ... Hilfreiche Werkzeuge ... 59
3.3 ... Fritzing ... 62
3.4 ... Löttechnik ... 75

4. Entwicklungsumgebungen ... 85

4.1 ... Der Weg von lesbaren Anweisungen zum Maschinencode ... 85
4.2 ... Das Betriebssystem der Entwicklungsumgebung ... 88
4.3 ... esptool.py ... 89
4.4 ... Entwicklungsumgebungen in der Übersicht ... 97
4.5 ... Die Partitionstabelle festlegen ... 167
4.6 ... Fazit ... 169

5. Programmierung mit C und C++ ... 171

5.1 ... Programmdesign für den Mikrocontroller ... 171
5.2 ... Syntax und Semantik in der Programmiersprache ... 175
5.3 ... Zeichen, Kommentare und Begriffe ... 176
5.4 ... Daten und Datentypen ... 179
5.5 ... Variablen ... 183
5.6 ... Ausdrücke und Operatoren ... 187
5.7 ... Zeiger (Pointer) ... 197
5.8 ... Arrays und Strukturen ... 201
5.9 ... Kontrollstrukturen ... 205
5.10 ... Funktionen ... 215
5.11 ... Funktionen nutzen: Ihr Werkzeugkasten ... 229
5.12 ... Klassen und objektorientierte Programmierung ... 235
5.13 ... Die String()-Klasse ... 243
5.14 ... Serielle Aus- und Eingabe ... 252
5.15 ... Vorgriff: Tasks und Threads ... 258
5.16 ... Präprozessordirektiven ... 259
5.17 ... Prinzipien des Softwareentwurfs ... 262
5.18 ... Fehlermanagement ... 263
5.19 ... JSON -- das Datenformat für den Datenaustauch ... 283

6. ESP32-Programming inside ... 287

6.1 ... ULP-Programmierung ... 287
6.2 ... FreeRTOS-Tasks verwalten ... 316
6.3 ... FreeRTOS-Task-Synchronisation ... 327
6.4 ... Threads nutzen ... 358

7. Peripherie und Funktionen des ESP32 ... 363

7.1 ... Der interne Hall-Sensor ... 363
7.2 ... Digitale Aus-/Eingänge ... 364
7.3 ... Analoge Aus-/Eingänge ... 373
7.4 ... Das ESP32-Touch-Sensor-System ... 385
7.5 ... DHT11 und DHT22 ... 390
7.6 ... 433-MHz-Steuerung ... 395
7.7 ... LED-Control und Pulsweitenmodulation ... 400
7.8 ... Impulszähler ... 407
7.9 ... Universal-Timer, Watchdog-Timer ... 410
7.10 ... Energie-(Spar-)Modi ... 415
7.11 ... Daten auf dem ESP32 speichern ... 423

8. Externe Schnittstellen ... 427

8.1 ... SPI ... 427
8.2 ... I²C ... 445
8.3 ... I2S ... 449
8.4 ... Bluetooth ... 460
8.5 ... WLAN/Wi-Fi ... 477
8.6 ... UART ... 500
8.7 ... OTA ... 506

9. Externe Kommunikations- und Steuerungsmöglichkeiten ... 511

9.1 ... Das JSON-Datenaustauschformat in der Praxis ... 512
9.2 ... Apps ... 517
9.3 ... Messenger ... 538
9.4 ... Das MQTT-Protokoll ... 558
9.5 ... Cloud-IoT-Plattformen ... 566
9.6 ... Lokale Anwendungen nutzen ... 592

10. Projektideen ... 619

10.1 ... The Evil Dice ... 619
10.2 ... Die Maker-Uhr ... 625
10.3 ... Das Dateisystem einmal anders ... 645
10.4 ... Solar-Repeater ... 655
10.5 ... Als die Bilder laufen lernten ... 659
10.6 ... IoT-Barometer ... 672
10.7 ... Eine kleine Schaltzentrale ... 688
10.8 ... Den ESP32 mit Alexa steuern ... 706
10.9 ... Mit Text To Speech und ChatGPT experimentieren ... 715

A. Anhang ... 725

A.1 ... Sensoren ... 725
A.2 ... Fritzing-Parts ... 726
A.3 ... Verwendete Software und Softwareversionen ... 727
A.4 ... RTC-MUX-Pin-Liste ... 728

Index ... 731
Titel
Mikrocontroller ESP32
Untertitel
Das umfassende Handbuch
EAN
9783367102860
Format
E-Book (epub)
Hersteller
Veröffentlichung
04.07.2024
Digitaler Kopierschutz
frei
Dateigrösse
10 MB
Anzahl Seiten
741
Lesemotiv