
16-битный модуль расширения портов ввода-вывода MCP23017 (I2C, 2.7–5.5 В)
# 16-битный модуль расширения портов ввода-вывода MCP23017 (I2C, 2.7–5.5 В) Модуль на базе микросхемы MCP23017 от Microchip представляет собой 16-битный двунаправленный расширитель портов ввода-вывода
- Артикул:
- 2410
# 16-битный модуль расширения портов ввода-вывода MCP23017 (I2C, 2.7–5.5 В)
Модуль на базе микросхемы MCP23017 от Microchip представляет собой 16-битный двунаправленный расширитель портов ввода-вывода (GPIO) с интерфейсом I2C. Модуль позволяет добавить 16 полноценных цифровых контактов к микроконтроллерам (Arduino, ESP32, STM32, Raspberry Pi), задействуя всего два сигнальных провода шины I2C (SDA и SCL). Каждый из 16 выводов можно независимо настроить как вход (с возможностью включения подтягивающего резистора), выход или источник прерывания. Благодаря трем адресам аппаратной подтяжки к одной шине I2C можно параллельно подключить до 8 таких модулей, получив суммарно до 128 дополнительных портов.
---
### Технические характеристики
| Параметр | Значение |
| --- | --- |
| Основной чип | Microchip MCP23017 |
| Количество портов ввода-вывода | 16 свободных цифровых контактов (два 8-битных порта GPA и GPB) |
| Интерфейс связи | I2C (поддержка частот 100 кГц, 400 кГц и до 1.7 МГц) |
| I2C-адресация | Настраиваемая перемычками/пинами (A0, A1, A2): от 0x20 до 0x27 (до 8 устройств на шине) |
| Напряжение питания (VCC) | 2.7 – 5.5 В DC |
| Максимальный ток на один пин | До 25 мА (направление/источник тока для прямого подключения LED и реле) |
| Суммарный ток микросхемы | До 125 мА (Port A + Port B) |
| Выходы прерываний | 2 независимых настраиваемых пина (`INTA` и `INTB`) |
| Ток в режиме ожидания (Standby) | До 1 мкА (ультранизкое потребление) |
| Рабочая температура | -40 °C … +85 °C |
---
### Назначение контактов (Pinout)
- VCC: Питание модуля (+2.7 В – +5.5 В DC).
- GND: Общий провод (земля).
- SCL: Тактовая линия шины I2C.
- SDA: Линия данных шины I2C.
- RESET: Вход аппаратного сброса (Active LOW, при нормальной работе подтягивается к VCC).
- A0, A1, A2: Пины выбора аппаратного I2C-адреса (подключаются к GND или VCC).
- INTA / INTB: Выходы прерываний для портов A и B (настраиваются отдельно или объединяются).
- GPA0 – GPA7: 8 цифровых портов ввода-вывода группы A.
- GPB0 – GPB7: 8 цифровых портов ввода-вывода группы B.
---
### Область применения
- Управление светодиодными матрицами и индикаторами: Подключение большого количества светодиодов, 7-сегментных индикаторов и кнопочных матриц.
- Считывание состояния датчиков и клавиатур: Опрос матричных клавиатур, конечных выключателей (концевиков), герконов и кнопочных панелей.
- Управление релейными блоками: Коммутация многоканальных силовых плат реле в системах автоматики и «Умного дома».
- Расширение возможностей Raspberry Pi и ESP8266: Добавление недостающих GPIO на платах с ограниченным количеством свободных выводов.
---
### Преимущества
- 1. Экономия пинов микроконтроллера
- Предоставляет 16 полноценных портов ввода-вывода, расходуя только 2 вывода шины I2C.
- 2. Гибкая настройка каждого пина
- Поддержка программируемых подтягивающих резисторов (Pull-Up 100 кОм), инверсии полярности входящих данных и режима генерации прерываний.
- 3. Аппаратные прерывания (`INTA`/`INTB`)
- Избавляют контроллер от необходимости постоянно опрашивать шину I2C — чип сам выдает сигнал при изменении состояния на любом из входов.
4. Высокая нагрузочная способность (до 25 мА): Позволяет напрямую управлять светодиодами, оптопарами и маломощными реле без промежуточных транзисторных ключей.
5. Масштабируемость: Наличие контактов адресации `A0–A2` дает возможность собрать систему со 128 каналами всего на одной шине I2C.



