• Уважаемые посетители сайта esp8266.ru!
    Мы отказались от размещения рекламы на страницах форума для большего комфорта пользователей.
    Вы можете оказать посильную поддержку администрации форума. Данные средства пойдут на оплату услуг облачных провайдеров для сайта esp8266.ru
  • Система автоматизации с открытым исходным кодом на базе 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, по которому у меня шла отладочная информация...
Так что обращаю внимание других на эти "грабли" :)
это не грабли. Надо схему смотреть.
Так что обращаю внимание, что надо изучать сначала документацию , а потом ставить эксперименты.
-----------------
Зеркало не виновато, ...
 
Сверху Снизу