Страница 1 из 1

Для обзора блок мультиплексор TCA9548A

Добавлено: 28.11.2021{, 13:10}
KeyArduino
Приветствую господа офицеры! Я автор канала "Ключ к Arduino". Разработайте пожалуйста блок для мультиплексора TCA9548A, много пользователей обращаются ко мне с просьбой сделать обучающее видео по подключению устройств по шине I2C с одинаковым адресом, а это если нет возможности на самом модуле перемычками сменить адрес, можно сделать только через модуль мультиплексора TCA9548A, а блока по нему нет.
Заранее благодарен.
Автор канала "Ключ к Arduino" Дмитрий Бахирев

Для обзора блок мультиплексор TCA9548A

Добавлено: 28.11.2021{, 14:30}
AlexCrane
KeyArduino, Сам блок создать не проблема. Проблема в том что многие датчики, дисплеи инициализируются в секции setup, а вот этот момент отловить не реально, ведь перед этим нужно переключиться на нужный порт...
Или комплектом к блоку для TCA еще писать комплект блоков для всех датчиков, можно, но не очень хочется... :D

Или я может что не правильно понимаю....

Протестируй
TCA9548A_test.flp
(820.54 КБ) 54 скачивания

Для обзора блок мультиплексор TCA9548A

Добавлено: 28.11.2021{, 15:01}
KeyArduino
AlexCrane писал(а):
28.11.2021{, 14:30}
писать комплект блоков для всех датчиков

А отдельный блок инициализации не получится сделать, как дополнительный, можно с возможностью вбивания модулей в рукопашную самим пользователем, ну что то в этом роде, что бы решить проблему.
А данный блок что Вы скинули, что он умеет, с какими модулями работать?

Для обзора блок мультиплексор TCA9548A

Добавлено: 28.11.2021{, 15:23}
AlexCrane
KeyArduino, Перед каждой строчкой инициализации I2C датчика (типа HTU.begin илиHTU.init и пр.) вставить вручную в секцию setup строку mux_193016837.set_port((4)); где 193016837 - номер дается при компиляции, 4 - номер порта куда подключен датчик.

Блок умеет переключать порты на TCA9548A

Для обзора блок мультиплексор TCA9548A

Добавлено: 28.11.2021{, 16:13}
KeyArduino
Спасибо за помощь, но начинающим ардуинщикам, а их основная масса этот способ будет затруднителен, для многих код это что то страшное

Для обзора блок мультиплексор TCA9548A

Добавлено: 28.11.2021{, 17:41}
ecoins
А еще можно использовать контроллеры с несколькими i2c - например ESP32, STM32, Arduino DUE и пр.
Или использовать сенсоры с SPI, например BME280.

Для обзора блок мультиплексор TCA9548A

Добавлено: 28.11.2021{, 18:09}
Naladchik
KeyArduino писал(а):
28.11.2021{, 16:13}
для многих код это что то страшное
Скорее всего это именно тот случай, когда без ручной правки кода никак.

Для обзора блок мультиплексор TCA9548A

Добавлено: 28.11.2021{, 20:39}
Vuktor
AlexCrane писал(а):
28.11.2021{, 15:23}
Перед каждой строчкой инициализации I2C датчика (типа HTU.begin илиHTU.init и пр.) вставить вручную в секцию setup строку mux_193016837.set_port((4)); где 193016837 - номер дается при компиляции, 4 - номер порта куда подключен датчик.
А вот тут можно поподробнее (для тех кому не так повезло)

Для обзора блок мультиплексор TCA9548A

Добавлено: 29.11.2021{, 09:11}
Sancho
Vuktor писал(а):
28.11.2021{, 20:39}
AlexCrane писал(а):
28.11.2021{, 15:23}
Перед каждой строчкой инициализации I2C датчика (типа HTU.begin илиHTU.init и пр.) вставить вручную в секцию setup строку mux_193016837.set_port((4)); где 193016837 - номер дается при компиляции, 4 - номер порта куда подключен датчик.
А вот тут можно поподробнее (для тех кому не так повезло)
Думаю, AlexCrane, Александр, имеет ввиду добавить указанную строчку, чтобы переключить в данный момент, перед посылкой строк инициализации, выход мк к нужной шине I2C.
Т.е., к примеру, переключаемся на порт 4, инициализируем микруху с адресом хх, переключаемся на порт 5 и инициализируем мс с таким же адресом, но, возможно, даже с другими настройками и т.д. в setup.
Также мс хороша тем, что согласовывает разные уровни сигналов.
СпойлерПоказать
2021-11-29_09-02-11.png
Но кому нужно 8 каналов по I2C ? - посмотреть бы на задумку! Есть ведь на 2 или 4. 43А и 46А соответственно.

Отправлено спустя 6 минут 8 секунд:
Имхо, под такие вещи код лучше, и правильнее, писать руками.

Для обзора блок мультиплексор TCA9548A

Добавлено: 29.11.2021{, 09:31}
support
Интересные модули, заказал себе несколько, буду интегрировать. Думаю через месяц (учитываем время доставки) появится в рограмме

Для обзора блок мультиплексор TCA9548A

Добавлено: 29.11.2021{, 10:29}
aidar_i
Может кто нибудь отправит автору модуль, чтобы быстрее было.
support писал(а):
29.11.2021{, 09:31}
Интересные модули, заказал себе несколько, буду интегрировать. Думаю через месяц (учитываем время доставки) появится в рограмме

Для обзора блок мультиплексор TCA9548A

Добавлено: 01.12.2021{, 13:00}
KeyArduino
Naladchik писал(а):
28.11.2021{, 18:09}
Скорее всего это именно тот случай, когда без ручной правки кода никак.
Всё больше людей имеют фантазию и желание что нибудь сделать на ардуинке, но не имеют знаний, некоторым просто это программирование кодом не дано

Отправлено спустя 3 минуты 26 секунд:
support писал(а):
29.11.2021{, 09:31}
Интересные модули, заказал себе несколько, буду интегрировать. Думаю через месяц (учитываем время доставки) появится в рограмме
Здравствуйте Сергей! Очень рад слышать что официально модули появятся в программе, спасибо за ваши труды!

Для обзора блок мультиплексор TCA9548A

Добавлено: 01.12.2021{, 23:12}
Vuktor
Vuktor писал(а):
28.11.2021{, 20:39}
А вот тут можно поподробнее (для тех кому не так повезло)
Если у меня есть Flprog, я считаю, что мне уже повезло))

Для обзора блок мультиплексор TCA9548A

Добавлено: 09.01.2024{, 19:27}
holodaleksey
support писал(а):
29.11.2021{, 09:31}
Интересные модули, заказал себе несколько, буду интегрировать. Думаю через месяц (учитываем время доставки) появится в рограмме
Сергей, доброго времени и с началом нового года для для успешных решений!

Не получилось эти мультиплексоры в программу добавить?

Для обзора блок мультиплексор TCA9548A

Добавлено: 09.01.2024{, 21:53}
ecoins
holodaleksey писал(а):
09.01.2024{, 19:27}
Сергей, доброго времени и с началом нового года для для успешных решений!

Не получилось эти мультиплексоры в программу добавить?
И Сергей сделал, но пока в блоки не включал.
Большинство блоков устройств через i2c ecoins на основе его решений поддерживают адресацию через мультиплексор TCA9584A.
Вас какое-то конкретное устройство интересует?
С уважением, ecoins.

Для обзора блок мультиплексор TCA9548A

Добавлено: 09.01.2024{, 21:59}
holodaleksey
ecoins писал(а):
09.01.2024{, 21:53}
holodaleksey писал(а):
09.01.2024{, 19:27}
Сергей, доброго времени и с началом нового года для для успешных решений!

Не получилось эти мультиплексоры в программу добавить?
И Сергей сделал, но пока в блоки не включал.
Большинство блоков устройств через i2c ecoins на основе его решений поддерживают адресацию через мультиплексор TCA9584A.
Вас какое-то конкретное устройство интересует?
С уважением, ecoins.
О да( vl6180 или tof050, что по сути одно и тоже. 2 штуки на один esp (8266 или 32).
Пс. Скетчи от пололу и адальтфулта на 2 или 3 датчика у меня не работают.

Для обзора блок мультиплексор TCA9548A

Добавлено: 09.01.2024{, 22:30}
ecoins
holodaleksey писал(а):
09.01.2024{, 21:59}
О да( vl6180 или tof050, что по сути одно и тоже. 2 штуки на один esp (8266 или 32).
Пс. Скетчи от пололу и адальтфулта на 2 или 3 датчика у меня не работают.
Заказал дальномеры, в начале февраля должны подойти, попробуем сделать и проверить.

Для обзора блок мультиплексор TCA9548A

Добавлено: 09.01.2024{, 23:12}
holodaleksey
Купил 2 модуля, ну вот руки только сейчас дошли, один норм, а второй с самого начала через раз работал и вчера погас окончательно. Завтра за ещё одним в магаз съезжу, так что послезавтра если будет возможность железо потестить готов.
И вот здесь ещё отвечу не по теме этой ветки, а про датчики:
viewtopic.php?f=44&t=8277&p=127405#p127405