I2C хаб — как подключить одинаковые I²C модули к одной шине. Управляем IMU, матрицами, NFC и RTC.

17 417
9
Амперка547 тыс
Опубликовано 23 декабря 2019, 9:00
I2C хаб — это модуль для одновременного подключения восьми устройств к одной шине: amperka.ru/product/troyka-i2c-...

Стандарт подключения Inter-Integrated Circuit или сокращённо I²C был разработан ещё в начале восьмидесятых инженерами компании Филипс. Он рассчитан на последовательное подключение 127 устройств. Вот только каждое устройство в цепочке должно иметь уникальный адрес. Это не проблема, если в устройстве используются разные модули. Но что делать, если необходимо собрать проект с несколькими одинаковыми модулями, например — систему доступа по карточкам?

У всех NFC-сканеров один прошитый адрес, поэтому подключить больше одного модуля напрямую к ардуино не получится. Поэтому понадобится расширитель портов — хаб.

Хаб работает как железнодорожная стрелка — поочерёдно переводит сигнал платы на разные пути. За это отвечает микросхема на борту платы. Одновременно обмен данными будет происходить только с одним модулем, но по сигналу с микроконтроллера — хаб переключится на следующий.

Вам не придётся задумываться об этом: реализацию переключения и переадресации мы спрятали в библиотеку. Просто подключите проводами несколько I²C устройств — всё заработает как часы.

Если вам понадобятся больше 8 одинаковых модулей одновременно, добавьте ещё один хаб. Только не забудьте поменять его собственный адрес — для этого нужно капнуть каплю припоя на одну из контактных площадок. Собственный адрес модуля изменится. Так к одной шине можно подключить до 8 хабов, а каждый из них раздаст сигнал ещё на 8 устройств. А уж 64 одинаковых модулей точно хватит всем.

Забудьте о конфликтах I²C модулей с одинаковыми адресами. Используйте несколько IMU-сенсоров для управления квадрокоптером, отслеживайте жесты с помощью группы датчиков приближения или постройте огромный дисплей на светодиодных матрицах.

#амперка #arduino #i2c
жизньигрыфильмывесельеавтотехномузыкаспортедаденьгистройкаохотаогородзнанияздоровьекреативдетское