ESP32: цифрові входи та виходи
Мікроконтролер ESP32 має десятки універсальних GPIO (General Purpose Input/Output), які можна налаштовувати як цифрові входи або цифрові виходи. Це дозволяє підключати кнопки, датчики, світлодіоди, реле та інші пристрої.
Теорія
- Цифровий вихід — ESP32 може встановлювати на виводі логічний рівень HIGH (1) або LOW (0). При цьому можна вмикати або вимикати світлодіоди, реле тощо.
- Цифровий вхід — ESP32 може зчитувати стан виводу: якщо на пін подається напруга 3,3 В — це логічна «1» (HIGH), якщо 0 В — логічний «0» (LOW).
- Режими pinMode:
INPUT— вхід.OUTPUT— вихід.INPUT_PULLUP— вхід з внутрішнім підтягуванням до «1» (зручно для кнопок).INPUT_PULLDOWN— вхід з внутрішнім підтягуванням до «0».
Приклад програми
Програма, яка вмикає світлодіод при натисканні кнопки:
const int buttonPin = 4; // GPIO для кнопки
const int ledPin = 2; // GPIO для світлодіода (вбудований LED на ESP32)
void setup() {
pinMode(buttonPin, INPUT_PULLUP); // кнопка з внутрішнім підтягуванням
pinMode(ledPin, OUTPUT);
}
void loop() {
int buttonState = digitalRead(buttonPin); // читаємо стан кнопки
if (buttonState == LOW) {
digitalWrite(ledPin, HIGH); // кнопка натиснута
} else {
digitalWrite(ledPin, LOW); // кнопка відпущена
}
}
Пояснення роботи
- Кнопка підключена до GPIO4, світлодіод — до GPIO2.
- Режим
INPUT_PULLUPдозволяє не ставити зовнішній резистор: пін утримується у стані HIGH, поки кнопка не замикає його на GND. - Функція
digitalRead()зчитує стан кнопки. - При натисканні кнопки ESP32 встановлює вихід
ledPinу HIGH, і світлодіод засвічується.
Висновки
Робота з цифровими входами та виходами ESP32 — це основа для створення проєктів. Кнопки та світлодіоди допоможуть розібратися з базовими принципами, які потім можна застосовувати у складніших схемах: керуванні моторами, реле чи датчиками.
Цифровий датчик температури DS18B20
Напруга живлення 3 ... 5,5 ВРобоча температура -55 ... +125 °CТочність ±0,5 °C забезп..
25.83грн.
Модуль 1 — Знайомство з Arduino: перше прошивання Blink і проєкт миготіння світлодіода
Модуль 1 — Знайомство з Arduino (курс для початківців) Мета модуля: зрозуміти, що таке Arduino, в..
Кнопка металева герметична 16мм (латунь, IP65, 3A, без фіксації)
Надійна вологозахищена кнопка без фіксації діаметром 16 мм. Виготовлена з латуні з нікелевим покритт..
82.91грн.
ESP32 чи Arduino: що обрати для вашого проєкту?
ESP32 чи Arduino: що обрати для вашого проєкту? Коротко: якщо вам потрібні Wi-Fi/Bluetooth, веб-п..
SIM800L як припаяти гребінку
Привіт друзі! Це коротка стаття під назвою SIM800L як припаяти гребінку. Модулі GSM зв'язку SIM8..





