Microchip Technology manufactures the MCP23017, a popular integrated circuit (IC) frequently utilized to expand the input/output (I/O) capabilities of microcontrollers. This IC provides an easy way to add more digital I/O ports to a microcontroller using the I2C protocol. With the MCP23017, you can add up to 16 digital input/output pins to your microcontroller with just two I2C pins, which is quite efficient in terms of pin usage.
Read more: Embedded Interface – MCP23017In situations where the microcontroller’s built-in GPIO pins prove insufficient for the task at hand, various electronic projects commonly employ the MCP23017. For instance, it finds application in hobbyist projects, industrial automation, and DIY electronics alike.
The MCP23017 enables the connection of multiple devices on the same I2C bus by featuring configurable pull-up resistors, interrupt capabilities, and a programmable hardware address. This versatility makes it a favorite among hardware hackers and embedded systems enthusiasts.
Contents
Features
- 16-bit input/output port expander with interrupt output
- 16 bit serial interface
- Cascadable for up to 8 devices on one bus
- 25mA sink/source capability per I/O
- Supports 100kHz, 400kHz and 1.7MHz I2C™Compatible compatible modes
- The address for MCP23017 (between 0x20 and 0x27)
Pin Details
INTA and INTB
- There are two interrupt pins, INTA and INTB, that can be associated with their respective ports, or can be
logically OR’ed together so that both pins will activate if either port causes an interrupt.
(IODIRA/B)
- system master can enable the I/Os as either inputs or outputs by writing the I/O configuration bits
IOCON.BANK – The MCP23X17 can beconfigured to operate in the 8-bit or 16-bit modes via “IOCON.BANK.”
Data Sheet
- 2005-2016 http://ww1.microchip.com/downloads/en/DeviceDoc/20001952C.pdf
- 2007 http://ww1.microchip.com/downloads/en/DeviceDoc/21952b.pdf
Examples
- Interfacing a 4×4 Matrix Keypad with an 8-Bit GPIO Expander : http://ww1.microchip.com/downloads/en/AppNotes/01081a.pdf
- Expanding the number of I/O lines using Microchip MCP23008 : http://embedded-lab.com/blog/expanding-the-number-of-io-lines-using-microchip-mcp23008/
- Unique Features of the MCP23X08/17 GPIO Expanders : http://ww1.microchip.com/downloads/en/AppNotes/01043a.pdf
- MCP23008 port expander interfaced to PIC12F683: http://embedded-lab.com/blog/expanding-the-number-of-io-lines-using-microchip-mcp23008/
Reference Link
- http://www.microchip.com/wwwproducts/en/MCP23017
- https://github.com/nodemcu/nodemcu-firmware/tree/master/lua_examples
Next Topic
Embedded Interface 7 Segment (Add Soon) |
Embedded Interface ADC (Add Soon) |
Embedded Interface Button (Add Soon) |
Embedded Interface EEPROM (Add Soon) |
Embedded Interface LCD (Add Soon) |
Embedded Interface LCD HD44780 (Add Soon) |
Embedded Interface LED |
Embedded Interface MCP23017 |
Embedded Interface Motor (Add Soon) |
Embedded Interface PCF8574 and PCF8574A |
Embedded Interface RTC (Add Soon) |
Embedded Interface Switch |
Embedded Interface Touch Kypad |
Embedded Interface RGB LED (Add Soon) |