• Система автоматизации с открытым исходным кодом на базе esp8266/esp32 микроконтроллеров и приложения IoT Manager. Наша группа в Telegram

Делюсь опытом Мигнуть синим светодиодом

Нужно объяснять как и почему это работает?

  • Не надо, не интересно.

    Голосов: 2 20.0%
  • Не надо, я и так знаю.

    Голосов: 2 20.0%
  • Давай, валяй.

    Голосов: 2 20.0%
  • Да уж будь добёр.

    Голосов: 4 40.0%

  • Всего проголосовало
    10

ivy

New member
Для начинающего разработчика мигание светодиода от микроконтроллера - это большое достижение.

Для опытного разработчика - это уже просто святое - мигнуть диодом на каждом новом контроллере :)

После правильной распайки ESP8266 и прошивки NodeMCU хочется чем-нибудь мигнуть. Тривиально приделать диод с резистором к свободному GPIO и скострячить мигательный цикл. Я так и сделал сначала :)

Но для тех, у кого "нет паяльника" и кто обзавелся дев-бордом со всей развеской, пркручивание еще пары компонентов может обернуться "занозой". Вот для них есть идея заставить мигать встроенный синий светодиод на ESP-12E (ведь девборы приходят именно с этим вариантом ESP8266).

Код:
myio = 4 -- GPIO 2
gpio.mode(myio, gpio.OUTPUT)
state = gpio.HIGH
tmr.alarm(0, 1000, 1, function()
  state = (state == gpio.HIGH) ? gpio.LOW : gpio.HIGH
  gpio.write(myio, state)
end)
Диод горит, когда GPIO закорочено на землю.
 

Сергей_Ф

Moderator
Команда форума
Диод горит, когда GPIO закорочено на землю.
Странная фраза. Правильно сказать, что светодиод светится, когда на GPIO низкий уровень.
Потому, что так подключён - один вывод через резистор на +питания, а другой на GPIO. Поэтому при высоком уровне на GPIO тока через светодиод нет, а при низком - есть.
 
Последнее редактирование:

RiZZaK

New member
Странная фраза. Правильно сказать, что светодиод светится, когда на GPIO низкий уровень.
Потому, что так подключён - один вывод через резистор на +питания, а другой на GPIO. Поэтому при высоком уровне на GPIO тока через светодиод нет, а при низком - есть.
А как подключить чтобы был ток при высоком уровне и не было при низком.
Дело в том что я тоже испытываю такое неудобство с nodeMCU, управляю двигателем через pwm но почему то при 1023 двигатель стоит на месте а при 0 крутит на полную.
 

Сергей_Ф

Moderator
Команда форума
@RiZZaK а в чем неудобство? Программно можно инвертировать сигнал - у=(1023 - х). Задаёте х, а подаёте на выход у.
Но если уж ничего не хочется переделывать в программе, то инвертируйте подключение - один провод на землю (0), другой на GPIO.
 

wcat

New member
Hi,All!
Помнится, понадобилось в одном из проектов мигнуть светодиодом. Ничтоже сумнящеся отправил "моргалку" на встроенный светодиод, а он на этой ESP-шке оказался подключен к TxD, по которому у меня шла отладочная информация...
Так что обращаю внимание других на эти "грабли" :)
 

pvvx

Активный участник сообщества
Для начинающего разработчика мигание светодиода от микроконтроллера - это большое достижение.
Минимальный курс для проекта "мигаем светодиодом" описан в первых двух уроках тут:
Department of Computer Science and Technology – Raspberry Pi: Baking Pi – Operating Systems Development
 

nikolz

Well-known member
Hi,All!
Помнится, понадобилось в одном из проектов мигнуть светодиодом. Ничтоже сумнящеся отправил "моргалку" на встроенный светодиод, а он на этой ESP-шке оказался подключен к TxD, по которому у меня шла отладочная информация...
Так что обращаю внимание других на эти "грабли" :)
это не грабли. Надо схему смотреть.
Так что обращаю внимание, что надо изучать сначала документацию , а потом ставить эксперименты.
-----------------
Зеркало не виновато, ...
 
Сверху Снизу