MCP23017 IO Expander - johnosbb/Automation GitHub Wiki
MCP23017
The MCP23017 IO Expander is especially handy when working with a chip like the ESP8266 that has only limited I/O. The MCP23017 is an I2C enabled 16 I/O port chip. That means that you only need 2 pins to control the chip.
The 16 I/O lines are divided into an 8 I/O PORT A and an 8 I/O PORT B. Both can be used as input as well as output. The chip also has 2 configurable interrupts. The chip can take a Vcc from 2.7V to 5V and this is perfect for 3.3 Volt devices as the modern arduino's and the ESP8266 range.
Library pin # | Port bit | Package pin (DIP/SSOP/QFN) | Silkscreen label |
---|---|---|---|
0 | GPA0 | 21 | A0 |
1 | GPA1 | 22 | A1 |
2 | GPA2 | 23 | A2 |
3 | GPA3 | 24 | A3 |
4 | GPA4 | 25 | A4 |
5 | GPA5 | 26 | A5 |
6 | GPA6 | 27 | A6 |
7 | GPA7 | 28 | A7 |
8 | GPB0 | 1 | B0 |
9 | GPB1 | 2 | B1 |
10 | GPB2 | 3 | B2 |
11 | GPB3 | 4 | B3 |
12 | GPB4 | 5 | B4 |
13 | GPB5 | 6 | B5 |
14 | GPB6 | 7 | B6 |
15 | GPB7 | 8 | B7 |