Кратковременное передёргивание GPIO16

Контроллеры на основе ESP8266
Ответить
slon-genia
Сержант
Сообщения: 102
Зарегистрирован: 21.11.2016{, 11:05}
Репутация: 2

Кратковременное передёргивание GPIO16

#1

Сообщение slon-genia » 13.01.2019{, 14:23}

Добрый день уважаемые форумчане. Столкнулся с такой проблемой. Собрал трёхканальное WI-FI реле на ESP-12E и использовал выходы GPIO12, 14, 16 как выходы подключонные к реле через ULN2003. При подаче питающего напряжения на схему происходит кратковременное срабатывание реле именно на GPIO16. На других выходах такого не происходит. Подскажите пожалуйста это апаратная проблема самого ESP или можно исправить как то програмно?

slon-genia
Сержант
Сообщения: 102
Зарегистрирован: 21.11.2016{, 11:05}
Репутация: 2

Кратковременное передёргивание GPIO16

#2

Сообщение slon-genia » 16.01.2019{, 19:35}

Не уже ли ни у кого такой проблема не возникало?

Аватара пользователя
nalnik
Подполковник
Сообщения: 1324
Зарегистрирован: 14.05.2016{, 17:12}
Репутация: 100
Откуда: Кисловодск
Имя: Александр

Кратковременное передёргивание GPIO16

#3

Сообщение nalnik » 16.01.2019{, 19:44}

slon-genia писал(а):
13.01.2019{, 14:23}
ESP-12E
У вас модуль ESP-12E или плата с этим модулем?
На NodeMcu v3 с модулем ESP-12E вывод GPIO16 соединен со светодиодом который находится на плате.
Я хочу быть добрее, но люди сами нарываются.

slon-genia
Сержант
Сообщения: 102
Зарегистрирован: 21.11.2016{, 11:05}
Репутация: 2

Кратковременное передёргивание GPIO16

#4

Сообщение slon-genia » 16.01.2019{, 20:31}

nalnik писал(а):
16.01.2019{, 19:44}
slon-genia писал(а):
13.01.2019{, 14:23}
ESP-12E
У вас модуль ESP-12E или плата с этим модулем?
На NodeMcu v3 с модулем ESP-12E вывод GPIO16 соединен со светодиодом который находится на плате.
У меня сам модуль ESP-12E. К его выходам через ULN2003 подключены реле. На выводе GPIO16 происходит срабатывание реле кратковременно после подачи напряжения питания на всю схему. На остальных выводах такого нету. Можно ли это побороть програмно, или это апаратная проблема?

Аватара пользователя
nalnik
Подполковник
Сообщения: 1324
Зарегистрирован: 14.05.2016{, 17:12}
Репутация: 100
Откуда: Кисловодск
Имя: Александр

Кратковременное передёргивание GPIO16

#5

Сообщение nalnik » 16.01.2019{, 20:50}

slon-genia писал(а):
16.01.2019{, 20:31}
У меня сам модуль ESP-12E.
Проверил сейчас на NodeMcu v3 -- так и да, светодиод загорается примерно на 0.2 секунды, при выборе этого пина в флпроге4-2-4 он серый.
Хотя для датчика DHT этот вход работает без проблем.
----
Он как то связан с кнопкой сброс на моей плате --
меняйте пин.
Последний раз редактировалось nalnik 16.01.2019{, 21:03}, всего редактировалось 1 раз.
Я хочу быть добрее, но люди сами нарываются.

slon-genia
Сержант
Сообщения: 102
Зарегистрирован: 21.11.2016{, 11:05}
Репутация: 2

Кратковременное передёргивание GPIO16

#6

Сообщение slon-genia » 16.01.2019{, 20:59}

nalnik писал(а):
16.01.2019{, 20:50}
slon-genia писал(а):
16.01.2019{, 20:31}
У меня сам модуль ESP-12E.
Проверил сейчас на NodeMcu v3 -- так и да, светодиод загорается примерно на 0.2 секунды, при выборе этого пина в флпроге4-2-4 он серый.
Хотя для датчика DHT этот вход работает без проблем.
Читал, что этот вывод используется для вывода ESp из спящего режима. Может из за этого. Ну плата уже собрана и GPIO 16 подключон к ULN2003 переделывать уже не хочу, может оставлю всё как есть и буду использовать этот канал для менее ответственных цепей, таких как освещение. Не так часто свет выключается в доме)))

MegaF
Рядовой
Сообщения: 87
Зарегистрирован: 05.09.2018{, 10:09}
Репутация: 5
Имя: farad

Кратковременное передёргивание GPIO16

#7

Сообщение MegaF » 17.01.2019{, 08:05}

slon-genia писал(а):
16.01.2019{, 20:59}
nalnik писал(а):
16.01.2019{, 20:50}
Проверил сейчас на NodeMcu v3 -- так и да, светодиод загорается примерно на 0.2 секунды, при выборе этого пина в флпроге4-2-4 он серый.
Хотя для датчика DHT этот вход работает без проблем.
Читал, что этот вывод используется для вывода ESp из спящего режима. Может из за этого. Ну плата уже собрана и GPIO 16 подключон к ULN2003 переделывать уже не хочу, может оставлю всё как есть и буду использовать этот канал для менее ответственных цепей, таких как освещение. Не так часто свет выключается в доме)))
включите через RC цепочку.

Brand2
Лейтенант
Сообщения: 414
Зарегистрирован: 26.02.2018{, 21:27}
Репутация: 42
Откуда: Haifa
Имя: Alex

Кратковременное передёргивание GPIO16

#8

Сообщение Brand2 » 17.01.2019{, 20:04}

У меня тоже так происходит и на ESP-01 , ESP-012E , Wemos d1,на любых ногах,но как то не особо мешало,ну перещелкнет реле в момент включения,хотя в некоторых случаях может быть и критично.

aidar_i
Полковник
Сообщения: 3122
Зарегистрирован: 24.12.2016{, 16:55}
Репутация: 675
Откуда: Уфа
Имя: Айдар
Контактная информация:

Кратковременное передёргивание GPIO16

#9

Сообщение aidar_i » 17.01.2019{, 22:09}

Так не помогает?
Задержка включения реле.flp
(32.28 КБ) 89 скачиваний

slon-genia
Сержант
Сообщения: 102
Зарегистрирован: 21.11.2016{, 11:05}
Репутация: 2

Кратковременное передёргивание GPIO16

#10

Сообщение slon-genia » 18.01.2019{, 23:04}

Brand2 писал(а):
17.01.2019{, 20:04}
У меня тоже так происходит и на ESP-01 , ESP-012E , Wemos d1,на любых ногах,но как то не особо мешало,ну перещелкнет реле в момент включения,хотя в некоторых случаях может быть и критично.
Возможно реле используете, которые управляются низким логическим уровнем. У меня только на 16 пине. Завтра попробую сделать то что тут советовали, а именно: сначала попробую програмно а потом rs цепь.

sputnikeee
Рядовой
Сообщения: 3
Зарегистрирован: 02.04.2019{, 11:49}
Репутация: 0
Имя: Евгений

Кратковременное передёргивание GPIO16

#11

Сообщение sputnikeee » 03.04.2019{, 18:14}

Была такая же проблема, нашел решение в интернете, может кому полезно будет.

Это происходит потому что модуль срабатывает по низкому уровню сигнала, а не по высокому. Можно заменить модуль на «правильный», можно переделать этот, но проще всего добавить пару строк в код: Найти в начале кода строки:

Код: Выделить всё

pinMode(0, OUTPUT); 
pinMode(1, OUTPUT); 
pinMode(2, OUTPUT); 
pinMode(3, OUTPUT);
и заменить их на:

Код: Выделить всё

digitalWrite(0,HIGH); 
pinMode(0, OUTPUT); 
digitalWrite(1,HIGH); 
pinMode(1, OUTPUT); 
digitalWrite(2,HIGH); 
pinMode(2, OUTPUT); 
digitalWrite(3,HIGH); 
pinMode(3, OUTPUT);
0, 1, 2, 3 — это номера портов, замените на свои.
На модулях с другим количеством реле все аналогично, изменяется только количество портов вывода.

aidar_i
Полковник
Сообщения: 3122
Зарегистрирован: 24.12.2016{, 16:55}
Репутация: 675
Откуда: Уфа
Имя: Айдар
Контактная информация:

Кратковременное передёргивание GPIO16

#12

Сообщение aidar_i » 03.04.2019{, 21:18}

Может из-за этого?
Internal pull-up/-down resistors
GPIO 0-15 all have a built-in pull-up resistor, just like in an Arduino. GPIO16 has a built-in pull-down resistor.

Ответить

Вернуться в «ESP8266»