ESPTOP 10 Digitale Eingänge und digitale Ausgaben mit Arduino IDE

ESPTOP 10 Digitale Eingänge und digitale Ausgaben mit Arduino IDE

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:

  • ESP32
  • LED
  • 2x 220 Ohm Widerstand
  • Druckknopf
  • Brotbrett
  • Jumperdrähte

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.