Можно ли общаться с двумя устройствами, у которых есть только ведомый интерфейс I2C, друг с другом? Датчик ATtiny841 и HDC1080

Я новичок в этом мире разработчиков электроники, и прямо сейчас я взаимодействую между одним микроконтроллером, ATtiny841 ATtiny841 Datasheet, и я хочу получать данные от датчика температуры / влажности HDC1080 HDC1080 Datasheet, я читал документацию по протоколу I2C и увидел, что мне нужно одно главное устройство для связи с подчиненными устройствами.

Проблема в том, что ATtiny841 говорит в таблице данных, что у него есть только подчиненный интерфейс I2C, а у HDC1080 такое же состояние. Я нашел библиотеки для использования связи I2C в обоих аппаратных средствах (библиотека WireS ATtiny841 для связи I2C и библиотека HDC1080, которая работает с Arduino).

Я хочу знать, можно ли взаимодействовать между этими компонентами, чтобы глубже проникнуть в эти библиотеки, если условие «только подчиненное устройство» имеет только проблемы с программным обеспечением или нужна электроника для выполнения работы.

Прошу прощения за мой плохой английский, и я надеюсь получить помощь с этой идеей, с уважением.


person fabocode    schedule 26.03.2017    source источник


Ответы (1)


Возможно, "только ведомый" означает, что ATtiny841 TWI не может генерировать тактовый сигнал для шины I2C / TWI.

Эту проблему, возможно, можно решить с помощью программного обеспечения, но тогда я бы рекомендовал bit-bang весь I2C интерфейс, поэтому вам не нужно смешивать существующее аппаратное обеспечение TWI с дополнительными программными компонентами, но все будет под контролем программного обеспечения.

Возможно, вам даже не нужно писать свой собственный битовый I2C, так как уже есть несколько реализаций. Вот пример в качестве примера.

person Bence Kaulics    schedule 27.03.2017