Реле с активным низким уровнем и контакты ESP8266 GPIO
Я использую ESP8266, в частности ESP-12-E:
У меня есть реле SRD-05VDC-SL-C, подключенное к контакту GPIO 4.
Он подключен в нормально разомкнутом состоянии (моё устройство должно быть подключено к верхнему и среднему контактам, считая сверху вниз на рисунке ниже):
В моем коде Arduino, когда я выдаю:
pinMode(4, OUTPUT);
Похоже, это переводит контакт в НИЗКИЙ уровень, который является активным состоянием реле, подает на него питание, которое включает мое устройство еще до того, как мой управляющий код успеет запуститься. Я хочу получить вывод для вывода, но оставить его плавающим.
Как мне настроить вывод вывода, но оставить его «плавающим» из кода или оставить его высоким/плавающим, чтобы мне приходилось явно выдавать:
digitalWrite(4, LOW);
Прежде чем будет отправлен сигнал low для активации моего реле?
Надеюсь, это имеет смысл!
@, 👍2
Обсуждение1 ответ
Ответ благодаря Trevor_G был:
используйте digitalWrite(4, HIGH); перед pinMode(4, OUTPUT);
Да, это действительно помогло, @madu
- Как заставить 5-вольтовое реле работать с NodeMCU
- NodeMCU - использовать кнопку flash в качестве входного сигнала в loop()
- Esp8266 Vin контакт
- Правильный PIN для активации беспроводного реле с ESP8266 ESP-01
- Управление реле 5В с помощью Wemos D1 R1
- Какие входные контакты я могу использовать на ESP8266 NodeMCU
- ESP 12 непригодных контактов
- Какие контакты GPIO лучше всего использовать для моего проекта?
GPIO4 имеет НИЗКИЙ уровень во время сброса (и, следовательно, загрузки), поэтому реле с активным низким уровнем ошибочно щелкнет при включении, если оно подключено к GPIO4. используйте GPIO 3 или, может быть, 2 или 16. вы также можете установить
pinMode(n, INPUT_PULLUP)
, чтобы зафиксировать его в плавающем состоянии до тех пор, пока это не понадобится., @dandavisRenegadeAndy, Спасибо большое, нигде не нашел этого решения, спасибо вам огромное, мою задачу решило, счастья вам,, @Никита Чаузов