• Уважаемые посетители сайта esp8266.ru!
    Мы отказались от размещения рекламы на страницах форума для большего комфорта пользователей.
    Вы можете оказать посильную поддержку администрации форума. Данные средства пойдут на оплату услуг облачных провайдеров для сайта esp8266.ru
  • Система автоматизации с открытым исходным кодом на базе esp8266/esp32 микроконтроллеров и приложения IoT Manager. Наша группа в Telegram

Несколько i2c устроиств на одной шине

enjoynering

Well-known member
добрый день.

столкнулся с проблемой. есть несколько датчиков и lcd экран подключенный к одной i2c шине (одним контактам esp). по отдельности все работают отлично. как только инициализирую больше одного ведомого, то начинатся глюки , зависания и перезагрузки. покопавшись в интернете, обнаружил что я не одинок. оказывается, что проблема в библиотеках - каждая из них заново инициализирует i2c шину вызывая wire.begin() в своем теле. переписывать библиотеки не вариант, 99% библиотек в инете так написанны (замучаешся их править). созрели два вопроса:

есть ли более элегантный способ решить проблему?
почему так происходит?
 

Юрий Ботов

Moderator
Команда форума
Закомментировать во всех библиотеках вызов wire.begin() и вызвать его самому... ДО инициализации библиотек. Или это и есть "переписывать библиотеки"?

Почему так происходит?

Из за желания использовать чужие библиотеки написанные для "помигать светодиодом".
 
Сверху Снизу