2.1 Hallo, LED!

Genau wie das Ausdrucken von „Hallo, Welt!“ der erste Schritt beim Erlernen der Programmierung ist, so ist die Verwendung eines Programms zum Ansteuern einer LED die traditionelle Einführung in das Erlernen der physischen Programmierung.

Benötigte Komponenten

Für dieses Projekt benötigen wir die folgenden Komponenten.

Es ist definitiv praktisch, ein ganzes Set zu kaufen, hier ist der Link:

Name

ARTIKEL IN DIESEM KIT

LINK

ESP32 Starter Kit

320+

ESP32 Starter Kit

Sie können sie auch separat über die unten stehenden Links kaufen.

KOMPONENTENBESCHREIBUNG

KAUF-LINK

ESP32 WROOM 32E

BUY

ESP32-Kameraerweiterung

-

Steckbrett

BUY

Überbrückungsdrähte

BUY

Widerstand

BUY

LED

BUY

Verfügbare Pins

Hier ist eine Liste der verfügbaren Pins auf dem ESP32-Board für dieses Projekt.

Verfügbare Pins

IO13, IO12, IO14, IO27, IO26, IO25, IO33, IO32, IO15, IO2, IO0, IO4, IO5, IO18, IO19, IO21, IO22, IO23

Schaltplan

../../_images/circuit_2.1_led.png

Dieser Schaltkreis funktioniert nach einem einfachen Prinzip, und die Stromrichtung ist in der Abbildung dargestellt. Die LED leuchtet auf, nachdem der 220-Ohm-Strombegrenzungswiderstand eingeschaltet wurde, wenn Pin26 High-Level ausgibt. Die LED schaltet sich aus, wenn Pin26 Low-Level ausgibt.

Verdrahtung

../../_images/2.1_hello_led_bb.png

Führen Sie den Code aus

  1. Öffnen Sie die Datei 2.1_hello_led.py, die sich im Pfad esp32-starter-kit-main\micropython\codes befindet, oder kopieren und fügen Sie den Code in Thonny ein.

    # Import the necessary libraries
    import machine
    import time
    
    # Set up the LED on pin 26 as an output pin
    led = machine.Pin(26, machine.Pin.OUT)
    
    # Start an infinite loop
    while True:
        # Turn on the LED by setting its value to 1 (HIGH)
        led.value(1)
        # Wait for 1 second (1000 milliseconds) while the LED is on
        time.sleep(1)
    
        # Turn off the LED by setting its value to 0 (LOW)
        led.value(0)
        # Wait for 0.5 seconds (500 milliseconds) while the LED is off
        time.sleep(0.5)
    
  2. Verbinden Sie das ESP32 WROOM 32E mit Ihrem Computer über ein Micro-USB-Kabel.

    ../../_images/plugin_esp32.png
  3. Klicken Sie dann in der unteren rechten Ecke auf den Interpreter „MicroPython (ESP32).COMXX“.

    ../../_images/sec_inter.png
  4. Klicken Sie schließlich auf „Aktuelles Skript ausführen“ oder drücken Sie F5, um es auszuführen.

    ../../_images/quick_guide2.png
  5. Nachdem der Code ausgeführt wurde, sehen Sie das Blinken der LED.

Wie funktioniert das?

  1. Es importiert zwei Module, machine und time. Das Modul machine bietet Zugriff auf die Hardware des Mikrocontrollers auf niedriger Ebene, während das Modul time Funktionen für zeitbezogene Operationen bereitstellt.

    import machine
    import time
    
  2. Dann wird Pin26 als Ausgangspin mit der Funktion machine.Pin() und dem Argument machine.Pin.OUT eingerichtet.

    led = machine.Pin(26, machine.Pin.OUT)
    
  3. In der Schleife While True wird die LED für eine Sekunde eingeschaltet, indem der Wert des Pin26 auf 1 gesetzt wird (led.value(1)), dann wird er auf 0 gesetzt (led.value(0)), um sie für eine Sekunde auszuschalten, und so weiter in einer unendlichen Schleife.

    while True:
        # Turn on the LED by setting its value to 1 (HIGH)
        led.value(1)
        # Wait for 1 second (1000 milliseconds) while the LED is on
        time.sleep(1)
    
        # Turn off the LED by setting its value to 0 (LOW)
        led.value(0)
        # Wait for 0.5 seconds (500 milliseconds) while the LED is off
        time.sleep(0.5)
    

Mehr erfahren

In diesem Projekt haben wir die Module machine und time von MicroPython verwendet, wir können hier mehr Möglichkeiten finden, sie zu verwenden.