Im heutigen Beitrag möchte ich dir gerne zeigen, wie du eine Schaltung am für den ESP32 online erstellen und simulieren kannst. Das ist besonders vom Vorteil, wenn du noch nicht soviel Erfahrung oder einfach gerade benötigten Bauteile nicht zur Hand hast.
Für diese Simulation verwende ich Wokwi welches ich dir bereits für den Arduino im Beitrag Arduino & Raspberry Pi – Online Simulator für Schaltungen vorgestellt habe. Hier möchte ich speziell auf die Programmierung mit MicroPython eingehen und dir ein paar Schaltungen und Kniffe zeigen.
Inhaltsverzeichnis
- Was benötigt man für Wokwi?
- “Hello World!” auf dem ESP32 mit MicroPython in Wokwi
- Aufbau und Simulation einer Schaltung in Wokwi für den ESP32
- Piezo Buzzer in Wokwi in MicroPython programmieren
- Ausblick
Was benötigt man für Wokwi?
Das Onlinetool Wokwi ist kostenfrei und benötigst auch keine Anmeldung. Wenn du jedoch deine Projekte dauerhaft speichern möchtest, dann musst du dich anmelden.
Ansonsten benötigst du nur einen Browser wie dem Google Chrome oder Mozilla FireFox (für diesen Beitrag verwende ich den Chrome)
Du kannst dich via Google, GitHub oder mit deiner E-Mail & dem Passwort anmelden / registrieren.
Der einfachste Weg ist über das Google-Konto, jedoch möchte die Seite so einige Berechtigungen verlangt, habe ich mich für GitHub und der 2Faktor Authentifizierung entschieden.
Einen Mikrocontroller benötigst du nicht, da alles, was du machst, quasi online geschieht!
“Hello World!” auf dem ESP32 mit MicroPython in Wokwi
Starten wir mit einem kleinen Beispiel und geben den Text “Hello World!” auf der Kommandozeile aus. Dazu kannst du nachfolgenden Link verwenden https://wokwi.com/projects/401020964205534209.
Die Ausgabe erfolgt, wenn du im Bereich “Schaltung” auf die Play-Taste drückst. Zusätzlich läuft oben rechts noch zusätzlich ein Timer, welcher die Zeit der Ausführung anzeigt.
Das kleine Programm beendet sich sofort, jedoch läuft der Timer weiter, das ist zum Anfang meist verwirrend. Der Timer bezieht sich quasi auf die Ausführung der Simulation und nicht auf das Programm!
# Gibt die Textzeile "Hello World!" # auf der Kommandozeile aus. print("Hello World!")
Aufbau und Simulation einer Schaltung in Wokwi für den ESP32
Du kannst, wenn du nicht aufpasst, deinen ESP32 zerstören, mit Wokwi kannst du deine Schaltung aufbauen, testen, ohne dass du ein Stück Hardware in die Hand nehmen musst.
Fangen wir wieder mit einem einfachen Beispiel an und aktivieren / deaktivieren eine LED.
https://wokwi.com/projects/401022295974890497
Den Code kennst du bestimmt schon aus dem Beitrag MicroPython mit ESP32: GPIO-Pins steuern – LEDs und Taster.
# Modul zum ansteuern der GPIOs am # Mikrocontroller import machine # Modul zum einlegen einer kleinen # Pause im Code from time import sleep # LED mit dem GPIO 32 als Ausgang led = machine.Pin(32, machine.Pin.OUT) # LED aktivieren led.value(1) # einlegen einer Pause von 1 Sekunde sleep(1) # LED deaktivieren led.value(0)
Piezo Buzzer in Wokwi in MicroPython programmieren
Du kannst auch die bisher gezeigten Beispiele in Wokwi nachbauen, unter anderem die Schaltung mit dem Piezo Buzzer, dabei wird der Ton dann vom PC abgespielt.
https://wokwi.com/projects/401024173753518081
# Modul zum ansteuern der GPIOs am # Mikrocontroller import machine # Modul zum einlegen einer kleinen # Pause im Code from time import sleep # Buzzer mit dem GPIO 25 als Ausgang buzzerPin = machine.Pin(25, machine.Pin.OUT) # erzeugen eines PWM Signals buzzer = machine.PWM(buzzerPin) # setzen der Duty auf 512 buzzer.duty(512) # Frequenz des Tones 1000 Hz buzzer.freq(1000) # eine Pause von 0,5 Sekunden sleep(0.5) # PWM Signal & Pin deinitialisieren # damit wird zusätzlich der Ton deaktiviert buzzer.deinit()
Ausblick
Im oben verlinkten YouTube Video zeige ich dir einige Schaltungen und erläutere dir, wie du diese Schaltungen Schritt-für-Schritt aufbaust.
Im nächsten Beitrag möchte ich jedoch wieder zurück zum “echten” Mikrocontroller wechseln und die erläutern, wie du einen DHT11 Sensor mit MicroPython auslesen kannst.