Можно ли связываться с двумя устройствами, которые имеют только подчиненный интерфейс I2C, друг с другом? Датчик ATtiny841 и HDC1080
Я новичок в этом мире разработчиков электроники, и сейчас я взаимодействую между одним микроконтроллером, таблицей ATtiny841 ATtiny841, и хочу получить данные от датчика температуры / влажности HDC1080. Лист данных HDC1080. Я читал документацию о протоколе I2C и я. увидел, что мне нужно одно ведущее устройство для связи с ведомыми устройствами.
Проблема заключается в том, что ATtiny841 в спецификации указывает, что имеет только подчиненный интерфейс I2C, а HDC1080 имеет такое же состояние. Я обнаружил, что библиотеки используют связь I2C на обоих аппаратных средствах (библиотека ATtiny841 wireS для связи I2C и библиотека HDC1080, которая работает с Arduino).
Я хочу знать, возможно ли обмениваться данными между этими компонентами, чтобы глубже проникнуть внутрь этих библиотек, если условие "только подчиненный" имеет только проблемы с программным обеспечением или для выполнения работы требуется электроника.
Пожалуйста, прости мой плохой английский, и я надеюсь получить помощь с этой идеей, с уважением.
1 ответ
Возможно, "только ведомый" означает, что ATtiny841 TWI не может генерировать тактовый сигнал для шины I2C/TWI.
Возможно, эту проблему можно решить с помощью программного обеспечения, но тогда я бы порекомендовал побить весь интерфейс I2C, чтобы вам не приходилось смешивать существующую аппаратную обработку TWI с дополнительными программными компонентами, а все контролировать под управлением программного обеспечения.
Возможно, вам даже не нужно писать свой собственный I2C с побитовым битом, так как уже есть пара реализаций. Вот один для примера.