Zielstellung #2: Blinkende LED
(EN google-translate)
(PL google-translate)
Zunächst soll die Entwicklungsumgebung für den esp32 eingerichtet und getestet werden. Eine blinkende LED kann als so etwas wie ein "Hello world-Programm" im Mikrocontrollerbereich angesehen werden: Es ist meistens das einfachste, was sich programmieren lässt, bei dem ein nach Außen sichtbarer Effekt auftritt, durch den nachgewiesen wird, dass man den Umgang mit der Entwicklungsumgebung beherrscht.
Voraussetzungen
|
Materialien
|
Internet-Adressen
![](http://www.kramann.info/techne/img/layout/linkexternicon.gif)
![](http://www.kramann.info/techne/img/layout/linkexternicon.gif)
Arbeitsschritte
|
Erläuterungen
zu 1.: Falls nicht vorhanden: Arduino-IDE 1.8.X installieren, nicht 2.0 und ESP32-Bibliotheken nachinstallieren
Die Arduino-IDE ist die Entwicklungsumgebung, mit deren Hilfe Programme für den ESP32 kompiliert und auf diesen übertragen werden können.
![](http://www.kramann.info/techne/img/layout/intern.gif)
Nach der Installation der Arduino-IDE stehen nicht die Bibliotheken aller möglichen Mikrocontroller zur Verfügung, sondern speziellere müssen nachinstalliert werden, so auch die für den ESP32-CAM. Die Installation kann aber nach Start der Arduino-IDE von dessen Oberfläche her erfolgen. Die nachfolgenden Punkte folgen der von AV-Delivery mit dem ESP32-CAM herausgegebenen Anleitung (siehe Link oben):
Folgender Link muss der IDE bekannt gemacht werden, indem er unter Datei->Voreinstellungen hinzugefügt wird:
https://dl.espressif.com/dl/package_esp32_index.json
Code 0-1: Von Hier kann der Link einfach in die Zwischenablage kopiert und in die Voreinstellungen eingetragen werden.
![Screenshot der richtigen Voreistellungen.](http://www.kramann.info/05_esp32AV/01_Bauanleitung/01_Elektronik_und_Software/02_Blinkende_LED/ide1.png)
Bild 0-1: Screenshot der richtigen Voreistellungen.
siehe auch FAQ #6 (python Problem beim ersten Kompilieren)
Damit dieser Suchpfad der IDE bekannt gemacht wird, muss zunächst die IDE noch einmal beendet und dann neu gestartet werden.
Jetzt werden Ihnen im Netz bereit stehende Bibliotheken vorgeschlagen, wenn Sie auf Werkzeuge -> Board -> Boardverwalter gehen und dort als Suchwort esp32 eintippen.
Installieren Sie "esp32 by Espressif Systems" in der Version 1.0.6.
![Nach der Installation wird die esp32-Bibliothek so angezeigt.](http://www.kramann.info/05_esp32AV/01_Bauanleitung/01_Elektronik_und_Software/02_Blinkende_LED/ide2.png)
Bild 0-2: Nach der Installation wird die esp32-Bibliothek so angezeigt.
Ab jetzt können Quelltexte für ESP32-Boards mit der Arduino-IDE kompiliert und auf die Boards übergragen (geflasht) werden.
zu 2. und 3.: Auf ESP32-CAM die Kamera aufstecken und mit Doppelklebeband fixieren / Schutzfolie der Kamera entfernen
Um die Kamera zu fixieren, muss zunächst der Bügel des Verbinders etwas herausgezogen und nach oben geklappt werden.
![Kurz vor der Montage der Kamera.](http://www.kramann.info/05_esp32AV/01_Bauanleitung/01_Elektronik_und_Software/02_Blinkende_LED/ziel2a.png)
Bild 0-3: Kurz vor der Montage der Kamera.
Wird die Kamera nicht ganz gerade und bis zum Anschlag eingesteckt, funktioniert das esp32cam oft nicht.
![Montierte und mit Doppelklebeband fixierte Kamera.](http://www.kramann.info/05_esp32AV/01_Bauanleitung/01_Elektronik_und_Software/02_Blinkende_LED/ziel2b.png)
Bild 0-4: Montierte und mit Doppelklebeband fixierte Kamera.
Sollte die Kamera nicht halten, kann auf das Doppelklebeband unter die Rückseite der Kamera ein Tropfen Pattex aufgetragen werden.
Die Kamera muss in ihrer Position fixiert sein, damit später die regelungstechnischen Versuche (Linienverfolgung) funktionieren und untereinander vergleichbar sind.
zu 4.: Jumper auf USB-Seriell-Umsetzer links auf 5Volt-Seite zum GND-Anschluss hin aufsetzen
![Jumper von USB-Seriell-Umsetzer auf 5-Volt-Seite eingesetzt.](http://www.kramann.info/05_esp32AV/01_Bauanleitung/01_Elektronik_und_Software/02_Blinkende_LED/ziel2c.png)
Bild 0-5: Jumper von USB-Seriell-Umsetzer auf 5-Volt-Seite eingesetzt.
zu 5.: LED mit Vorwiderstand, ESP32-CAM und USB-Seriell-Umsetzer auf Steckboard miteinander verkabeln (siehe Bild weiter unten)
![](http://www.kramann.info/techne/img/layout/intern.gif)
Der Aufbau wird so umgesetzt, dass er später unverändert auf dem Fahrzeug übernommen werden kann.
...darum werden zwei Steckboards und die längsten Steckboardkabel von 30cm benutzt!
![Angeschlossener Programmierer und LED mit Vorwiderstand bei IO16 (Erweiterter schematischer Aufbau auf der Grundlage des Datenblattes von AZ-Delivery).](http://www.kramann.info/05_esp32AV/01_Bauanleitung/01_Elektronik_und_Software/02_Blinkende_LED/ziel2d.png)
Bild 0-6: Angeschlossener Programmierer und LED mit Vorwiderstand bei IO16 (Erweiterter schematischer Aufbau auf der Grundlage des Datenblattes von AZ-Delivery).
![Realer Aufbau mit zwei Steckboards.](http://www.kramann.info/05_esp32AV/01_Bauanleitung/01_Elektronik_und_Software/02_Blinkende_LED/ziel2e.png)
Bild 0-7: Realer Aufbau mit zwei Steckboards.
![](http://www.kramann.info/techne/img/layout/intern.gif)
zu 6.: ESP32-CAM via USB-Seriell-Umsetzer und USB-Mini-Datenkabel mit PC oder Laptop verbinden
Nach dem Verbinden von ESP32-CAM und PC sollte die Arduino-IDE gestartet werden. Da der ESP32 kein Standard-Board von Arduino ist, wird es nicht automatisch erkannt, sondern man muss die richtigen Einstellungen für das Kompilieren und spätere Flashen bei "Werkzeuge" von Hand vornehmen. Folgender Screenshot von "Werkzeuge" zeigt die richtigen Einstellungen:
![Einstellungen bei Werkzeuge.](http://www.kramann.info/05_esp32AV/01_Bauanleitung/01_Elektronik_und_Software/02_Blinkende_LED/ziel2f.png)
Bild 0-8: Einstellungen bei Werkzeuge.
..das sind insbesondere:
|
zu 7.: Quelltext in einen neuen Sketch übernehmen, speichern, kompilieren und auf das Board flashen
|
Damit das Flashen funktioniert, muss IO0 mit GND verbunden sein ("Jaumper for BOOT-mode") und einmal kurz der Reset-Knopf gedrückt werden.
![Während des Flashens muss IO0 mit GND verbunden sein (a), beim normalen Betrieb getrennt(b).](http://www.kramann.info/05_esp32AV/01_Bauanleitung/01_Elektronik_und_Software/02_Blinkende_LED/jumper.png)
Bild 0-9: Während des Flashens muss IO0 mit GND verbunden sein (a), beim normalen Betrieb getrennt(b).
Außerdem muss während des "Connecting"-Vorgangs kurz die Reset-Taste auf dem Board betätigt werden.
![Connecting-Vorgang.](http://www.kramann.info/05_esp32AV/01_Bauanleitung/01_Elektronik_und_Software/02_Blinkende_LED/connecting.png)
Bild 0-10: Connecting-Vorgang.
Die Reset-Taste ist wenn das Board auf dem Steckbrett sitzt gerade so eben mit dem Fingernagel zwischen Steckboard und ESP32 zu erreichen.
#define AUSGANG 16 void setup() { pinMode(AUSGANG, OUTPUT); } void loop() { //Blinken mit einem Hertz (1Hz) digitalWrite(AUSGANG, HIGH); delay(500); digitalWrite(AUSGANG, LOW); delay(500); }
Code 0-2: Quelltext des Blink-Programms, das IO16 als Ausgang verwendet.
![Konsolenbereich in der IDE nach erfolgreichem Übertragungsvorgang.](http://www.kramann.info/05_esp32AV/01_Bauanleitung/01_Elektronik_und_Software/02_Blinkende_LED/flash.png)
Bild 0-11: Konsolenbereich in der IDE nach erfolgreichem Übertragungsvorgang.
|
Statt die USB-Verbindung zu kappen, ist es besser die rote +5-Volt-Leitung zwischen esp32cam und USB-Seriellumsetzer zu trennen.