Как подключить несколько MCP23017 к Arduino?

Я работаю над проектом и пытаюсь понять, как подключить несколько расширителей ввода-вывода MCP23017 к одному Arduino. Все руководства, которые я нашел в поисках информации, только объясняют, как подключить один чип MCP или как обращаться к нескольким чипам MCP. Кажется, никто не объясняет, как соединить их физически. Кстати, я говорю о версии чипа I2C.

, 👍1


1 ответ


Лучший ответ:

3

Если вы знаете, как соединить одну микросхему, вы знаете, как соединить много микросхем. Один или восемь — это одно и то же.

Все выводы SCL подключаются к выводу SCL платы Arduino. Все контакты SDA подключаются к SDA на Arduino.

Просто убедитесь, что каждому чипу присвоен уникальный адрес с помощью контактов A0-A2, как подробно описано в техническое описание.

,

От одного до восьми — то же самое, десять — это слишком много с тремя битами адреса., @Jot

Вы также можете адресовать их все одним и тем же адресом и использовать контакты A0-A2 в качестве выбора микросхемы. Например, отдельные контакты должны быть подключены к A0, а A1, A2 — к Gnd. Держите A0 высоко в коде. Когда вы хотите поговорить с устройством, установите низкий уровень A0 для этого устройства, используйте адрес I2C для A0-A1-A2 = 0, затем верните A0 для этого устройства обратно на высокий уровень. Следующее устройство, используйте следующую линию A0 и так далее. Вы можете расширить еще дальше, с A1/A2 = 0,0, и 0,1, и 1,0, и 1,1, с 32 линиями выбора ведомых устройств (запитанных даже от 4 сдвиговых регистров, всего 3 линии управления, необходимые для загрузить сдвиговые регистры)., @CrossRoads