ESP32 ist eine Mikrocontroller -Karte mit mehreren Eingangsausgangsnadeln. ESP32 wie Arduino kann sowohl die digitale Eingabe als auch die digitale Ausgabe lesen und steuern. Hier in diesem Artikel werden wir also mit der Steuerung der ESP32 -Ausgabe und dem Lesen digitaler Eingaben von externen Peripheriegeräten behandeln.
So installieren Sie ESP32 in Arduino IDE
Bevor wir uns weiter zu unserem Hauptthema bewegen, möchte ich Sie daran erinnern, die zu installieren Arduino ide In PC und wenn die ESP32 -Karte nicht in Arduino IDE installiert ist, dann finden Sie hier die Anleitung zur Installation von ESP32 in Arduino IDE.
Digitale Eingangsausgangsstifte in ESP32
ESP32 -Boards sind mit insgesamt insgesamt geliefert 48 Stifte, die unterschiedliche Funktionen ausführen, und nicht alle Stifte sind auf ESP32 -Boards physisch freigelegt. Einige Stifte sind nicht zur Verwendung verfügbar.
ESP32 kommt in zwei Varianten, einer kommt mit 36 Stifte und der zweite mit 30 Stifte. Die Differenz von sechs Stiften ist hier auf SPI -Stifte zurückzuführen, die für die SPI -Kommunikation integriert sind und für keinen anderen Zweck verwendet werden können.
Das folgende Pinbelegbild besteht aus einem 30 -Pin -ESP32 -Board. Die meisten dieser Stifte ähneln anderen Versionen wie dem 36 -Pin -ESP32 -Board. Die 36 -Pin.
Die folgende Tabelle zeigt den Eingangsausgangsstatus von ESP32 -Board -Stiften:
GPIO PIN | EINGANG | AUSGANG | Beschreibung |
Gpio 0 | Nach oben gezogen | OK | PWM -Ausgabe beim Start |
GPIO 1 | TX Pin | OK | Ausgabe -Debugug am Boot |
GPIO 2 | OK | OK | An Bord geführt |
GPIO 3 | OK | RX PIN | Hoch beim Kofferraum |
GPIO 4 | OK | OK | - |
GPIO 5 | OK | OK | PWM -Ausgabe beim Start |
GPIO 6 | - | - | SPI -Blitznadel |
GPIO 7 | - | - | SPI -Blitznadel |
GPIO 8 | - | - | SPI -Blitznadel |
GPIO 9 | - | - | SPI -Blitznadel |
GPIO 10 | - | - | SPI -Blitznadel |
GPIO 11 | - | - | SPI -Blitznadel |
GPIO 12 | OK | OK | Boot Fail bei High Pull |
GPIO 13 | OK | OK | - |
GPIO 14 | OK | OK | PWM -Ausgabe beim Start |
GPIO 15 | OK | OK | PWM -Ausgabe beim Start |
GPIO 16 | OK | OK | - |
GPIO 17 | OK | OK | - |
GPIO 18 | OK | OK | - |
GPIO 19 | OK | OK | - |
GPIO 21 | OK | OK | - |
GPIO 22 | OK | OK | - |
GPIO 23 | OK | OK | - |
GPIO 25 | OK | OK | - |
GPIO 26 | OK | OK | - |
GPIO 27 | OK | OK | - |
GPIO 32 | OK | OK | - |
GPIO 33 | OK | OK | - |
GPIO 34 | OK | Nur eingeben | |
GPIO 35 | OK | Nur eingeben | |
GPIO 36 | OK | Nur eingeben | |
GPIO 39 | OK | Nur eingeben |
Hier OK bedeutet, dass der entsprechende Pin als Eingang oder Ausgang verwendet werden kann. Alle GPIO -Stifte von ESP32 können sowohl als Eingang als auch als Ausgang verwendet werden. Nur SPI -Stifte 6 bis 11 können nicht als Eingang oder Ausgabe verwendet werden. GPIO -Stifte 34, 35, 36 und 39 sind nur eingegeben.
So steuern Sie digitale Ausgänge mithilfe digitaler Stifte in ESP32
Da wir ESP32 in Arduino IDE programmieren, werden wir dieselben Funktionen verwenden, um einen Pin als Ausgabe zu deklarieren.
Um einen digitalen PIN zu konfigurieren PinMode () Funktion.
Die folgende Syntax wird befolgt:
PinMode (gpio, Ausgabe);
Mit der obigen Funktion haben wir einen GPIO -Pin als Ausgabe deklariert, um die digitale Ausgabe zu steuern, die wir verwenden werden DigitalWrite () Funktion.
DigitalWrite (GPIO, Staat);
Diese Funktion nimmt zwei Argumente auf. Staat kann entweder niedrig oder hoch sein.
Wie bereits erläutert, können wir alle Stifte von ESP32 als Ausgang außerhalb verwenden GPIO 6 bis 11 (SPI Flash) und GPIO 34, 35, 36 und 39 (Nur Eingabe).
So lesen Sie digitale Eingaben in ESP32
Das Lesen eines Eingangs aus digitalen Stiften ähnelt der Steuerung eines Ausgangs eines Pin. Zuerst müssen wir einen Pin als Eingang mit dem deklarieren PinMode () Funktion. Im Folgenden finden Sie die Syntax, die einen Pin als Eingabe definiert:
PinMode (gpio, Eingabe);
Sobald der Pin als Eingang festgelegt ist, besteht der nächste Schritt darin, die zu definieren digitalread () Funktion, um Daten von diesem PIN abzurufen. So können Sie einen Pin als digitale Eingabe definieren.
digitalread (gpio);
Alle GPIO -Stifte können als Eingabe mit Ausnahme der SPI -Blitzstifte von verwendet werden 6 bis 11.
Notiz: SPI -Flash -Pins 6 bis 11 fehlen in der 30 -Pin -Version von ESP32 -Board.
So steuern Sie LED mit ESP32 Digital Read and Write
Um jetzt das Konzept des digitalen Lesens und Schreibens in ESP32 zu klären, werden wir ein Beispiel für LED nehmen. Um die LED zu steuern, werden wir einen Druckknopf verwenden.
ESP32 wird Daten aus PushButton digital lesen und eine LED mit dem Befehl Digital Write steuern.
Hardware erforderlich
Im Folgenden finden Sie die Liste der erforderlichen Komponenten:
Schematisch
Das folgende Bild zeigt die Verbindung von ESP32 mit LED und PushButton. Die LED ist bei GPIO 14 angeschlossen und der PushButton -Ausgang wird am GPIO -Pin 15 angeschlossen.
Code zur Steuerung von ESP32 Digitalen Eingängen/Ausgängen
Öffnen Sie Arduino IDE und wählen Sie den ESP32 -Board und den COM -Port aus. Laden Sie nun den angegebenen Code hoch.
const int push_button = 15; /*GPIO PIN 15 für Druckknopf*//
const int led_pin = 14; /*GPIO PIN 14 für LED*/
int button_state = 0;
void setup ()
Serie.Beginnen Sie (115200);
PinMode (push_button, input); /*Setzen Sie den Pushbutton -Pin als digitale Eingabe*/
PinMode (LED_PIN, Ausgabe); /*LED als digitale Ausgabe einstellen*/
void Loop ()
Button_state = digitalread (push_button); /*Funktion zum Überprüfen des PushButton -Zustands*/
Serie.println (button_state);
if (button_state == hoch) /*Überprüfen Sie den Druckknopfstatus mit if -Bedingung* /
DigitalWrite (LED_PIN, High); /*Wenn der Staat eine hohe LED -LED ist*/
anders
DigitalWrite (LED_PIN, LOW); /*Sonst bleibt ausgeschaltet*/
Hier im obigen Code begannen wir mit der Initialisierung des GPIO -Pin für LED und PushButton. Als nächstes deklarierten wir LED als Ausgabe und PushButton als Eingabe zum Lesen von Daten.
Zum Speichern von Lesedaten aus der Drucktaste wird eine Variable definiert, und endlich druckten wir das Ergebnis auf dem Serienmonitor.
Ausgang
Auf der Hardware können wir sehen, dass die LED ausgeschaltet ist.
Das Drücken des PushButton ESP32 -Board. Jetzt wird die LED einschalten.
Wir können auch die digitalen Daten sehen.
Abschluss
ESP32 -Boards haben mehrere digitale Stifte für Eingabe und Ausgabe. Hier in diesem Artikel haben wir diese Stifte besprochen und eine LED mit dem Druckknopf kontrolliert. Wir haben auch erwähnt, dass es bestimmte Stifte gibt, die nur als Eingabe verwendet werden können, während einige Stifte wie SPI -Flash von 6 auf 11 (36 Version ESP32 -Board) weder als Eingang noch als Ausgabe verwendet werden können.