ESPTOP 10 Digital Wejścia i wyniki cyfrowe za pomocą Arduino IDE

ESPTOP 10 Digital Wejścia i wyniki cyfrowe za pomocą Arduino IDE

ESP32 to płyta mikrokontrolera z wieloma pinami wyjściowymi wejściowymi. ESP32, jak Arduino, może odczytać i kontrolować zarówno cyfrowe wejście, jak i wyjście cyfrowe. Więc tutaj w tym artykule omówimy, jak kontrolować wyjście ESP32 i jak odczytać cyfrowe dane wejściowe z zewnętrznych urządzeń peryferyjnych.

Jak zainstalować ESP32 w Arduino IDE

Zanim przejdziemy dalej do naszego głównego tematu, chciałbym przypomnieć o zainstalowaniu Arduino Ide na komputerze i jeśli płyta ESP32 nie jest zainstalowana w Arduino IDE, to jest przewodnik, jak zainstalować ESP32 w Arduino IDE.

Cyfrowe styki wyjściowe wejściowe w ESP32

Tablice ESP32 są wyposażone w sumę 48 Piny, które wykonują różne funkcje, nie wszystkie piny są fizycznie narażone na płytach ESP32. Niektóre szpilki nie są dostępne do użytku.

ESP32 występuje w dwóch wariantach, jeden z 36 szpilki i drugi z 30 szpilki. Różnica sześciu pinów tutaj wynika z pinów SPI, które są zintegrowane do komunikacji SPI i nie mogą być używane w żadnym innym celu.

Poniższy obraz Pinout to płyta 30 -pinowa ESP32. Większość z tych pinów jest podobna do innych wersji, takich jak 36 pin ESP32. Jednak 36 -pinowa wersja ESP32 ma 6 specjalnych zintegrowanych pinów SPI, które nie są zalecane do używania ich jako GPIO.

Poniższa tabela ilustruje status wyjścia wejściowego pinów płyty ESP32:

Pin GPIO WEJŚCIE WYJŚCIE Opis
GPIO 0 Podjechał OK Wyjście PWM przy rozruchu
GPIO 1 Pin TX OK DEBUGUJ WYJĄTKU W BOOT
GPIO 2 OK OK Na pokładzie LED
GPIO 3 OK Pin Rx Wysoko w rozruchu
GPIO 4 OK OK -
GPIO 5 OK OK Wyjście PWM przy rozruchu
GPIO 6 - - SPI Flash Pin
GPIO 7 - - SPI Flash Pin
GPIO 8 - - SPI Flash Pin
GPIO 9 - - SPI Flash Pin
GPIO 10 - - SPI Flash Pin
GPIO 11 - - SPI Flash Pin
GPIO 12 OK OK Upoważnienie rozruchu przy wysokim pociągnięciu
GPIO 13 OK OK -
GPIO 14 OK OK Wyjście PWM przy rozruchu
GPIO 15 OK OK Wyjście PWM przy rozruchu
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 Tylko dane wejściowe
GPIO 35 OK Tylko dane wejściowe
GPIO 36 OK Tylko dane wejściowe
GPIO 39 OK Tylko dane wejściowe

Tutaj OK oznacza, że ​​odpowiedni pin może być używany jako wejście lub wyjście. Wszystkie szpilki GPIO ESP32 mogą być używane zarówno jako wejście, jak i wyjście. Tylko piny SPI od 6 do 11 nie mogą być używane jako wejście lub wyjście. Piny GPIO 34, 35, 36 i 39 są tylko wprowadzane.

Jak kontrolować wyniki cyfrowe za pomocą cyfrowych pinów w ESP32

Ponieważ programujemy ESP32 w Arduino IDE, będziemy używać tych samych funkcji do deklarowania pinu jak wyjście, jak na płycie Arduino.

Aby skonfigurować dowolny cyfrowy PIN, musimy zadeklarować go jako wyjściowe za pomocą pinmode () funkcjonować.

Poniżej położona będzie:

Pinmode (GPIO, wyjściowe);

Tutaj za pomocą powyższej funkcji zadeklarowaliśmy teraz PIN GPIO jako wyjściowe do kontrolowania wyjścia cyfrowego, którego użyjemy DigitalWrite () funkcjonować.

DigitalWrite (GPIO, stan);

Ta funkcja przyjmuje dwa argumenty, jeden to numer pin GPIO, a drugi stanowi stan tego styku, który ma zostać zdefiniowany. Stan może być niski lub wysoki.

Jak wyjaśniono wcześniej, możemy użyć wszystkich pinów ESP32 jako wyjścia GPIO 6 do 11 (SPI Flash) i GPIO 34, 35, 36 i 39 (Tylko dane wejściowe).

Jak odczytać dane wejściowe w ESP32

Czytanie danych wejściowych z cyfrowych pinów jest podobne do kontrolowania wyjścia szpilki. Najpierw musimy zadeklarować pin jako wejście za pomocą pinmode () funkcjonować. Poniżej znajduje się składnia definiująca pin jako wejście:

pinmode (GPIO, wejście);

Po ustawieniu pinu jako wejściowym następnym krokiem jest zdefiniowanie DigitalRead () funkcja, aby uzyskać dane z tego pinu. W ten sposób możesz zdefiniować pin jako cyfrowe dane wejściowe.

DigitalRead (GPIO);

Wszystkie szpilki GPIO mogą być używane jako wejście, z wyjątkiem pinów flash SPI z 6 do 11.

Notatka: SPI Flash Pins 6 do 11 brakuje w 30 -pinowej wersji płyty ESP32.

Jak kontrolować diodę LED przy użyciu cyfrowego odczytu i zapisu ESP32

Teraz, aby wyczyścić koncepcję odczytu cyfrowego i pisania w ESP32, weźmiemy przykład diody LED. Aby kontrolować diodę LED, będziemy używać przycisku.

ESP32 będzie cyfrowo odczytać dane z pushbutton i będzie kontrolował diodę LED za pomocą polecenia cyfrowego zapisu.

Wymagany sprzęt

Poniżej znajduje się lista wymaganych komponentów:

  • ESP32
  • PROWADZONY
  • 2x 220 Ohm rezystor
  • Naciśnij przycisk
  • Tablica chleba
  • Przewody zworki

Schematyczny

Następujący obraz ilustruje połączenie ESP32 z LED i Pushbutton. LED jest podłączony do GPIO 14, a wyjście Pushbutton jest podłączone do GPIO Pin 15.

Kod do sterowania cyfrowymi wejściami/wyjściami ESP32

Otwórz Arduino IDE i wybierz płytę ESP32 i port COM, teraz prześlij dany kod.

const int push_button = 15; /*Pin GPIO 15 dla przycisku*/
const int led_pin = 14; /*Pin GPIO 14 dla LED*/
int button_state = 0;
void setup ()
Seryjny.rozpocząć (115200);
pinmode (push_button, input); /*Ustaw pinek pushbutton jako cyfrowe wejście*/
pinmode (LED_PIN, wyjście); /*Ustaw LED jako wyjście cyfrowe*/

void Loop ()
Button_state = DigitalRead (push_button); /*Funkcja, aby sprawdzić stan pushbutton*/
Seryjny.println (button_state);
if (button_state == high) /*Sprawdź status przycisku za pomocą, jeśli warunek* /
DigitalWrite (LED_PIN, High); /*Jeśli stan jest wysoki, włącz LED*/
w przeciwnym razie
DigitalWrite (LED_PIN, niski); /*Else LED pozostaje wyłączony*/

Tutaj, w powyższym kodzie, zaczęliśmy od zainicjowania pinu GPIO dla LED i Pushbutton. Następnie zadeklarowaliśmy LED jako wyjściowe i przyciski jako dane wejściowe do odczytu danych.

Aby przechowywać dane odczytu z przycisku nacisku, zdefiniowana jest zmienna i w końcu wydrukowaliśmy wynik na monitor szeregowych.

Wyjście

Na sprzęcie widzimy, że dioda LED jest wyłączona.

Teraz naciśnięcie płyty Pushbutton ESP32 przyjmuje dane wejściowe z PushButton i ustaw stan wyjściowy LED na wysoki poziom. Teraz dioda LED się włączy.

Możemy również zobaczyć cyfrowe odczytane dane z pchania na monitorze szeregowym IDE.

Wniosek

Płytki ESP32 mają wiele cyfrowych pinów do wejścia i wyjścia. Tutaj w tym artykule omówiliśmy te piny i kontrolowaliśmy diodę LED za pomocą przycisku. Wspominaliśmy również, że istnieją pewne piny, które można użyć tylko jako wejście, podczas gdy niektóre szpilki, takie jak SPI Flash od 6 do 11 (36 wersji ESP32 płyty) nie mogą być używane ani jako wejście, ani wyjście.