Shopping Cart  Now in your cart 0 items  
Shopping Cart:  0 items
Sub-Total:
$0.00
  1. Your cart is empty.
MCP23017 - i2c 16 input/output port expander
  • MCP23017 - I2C 16-Channel Input/Output Port Expander for Microcontrollers
  • MCP23017 - I2C 16-Channel Input/Output Port Expander for Microcontrollers

ships free
SALE

MCP23017 - i2c 16 input/output port expander

$13.89  $7.00
Save: 50% off

100% Original Products

90 Days Easy Returns View More Return Policy

Free standard home delivery on all orders

Ship to me Available In Stock

Product Details

Enhance your microcontroller's capabilities by adding 16 more pins with the MCP23017 port expander. This device uses just two I2C pins, which can be shared with other I2C devices, and in return, it provides you with 16 general-purpose pins. You have the flexibility to configure each of these 16 pins as an input, output, or input with a pull-up resistor. Moreover, you can receive an interrupt via an external pin when any input changes, eliminating the need for continuous chip polling. Operate this chip within a voltage range of 2.7 - 5.5V, suitable for both 3.3V and 5V setups. Each I/O pin can sink or source up to 20mA, making it ideal for powering LEDs and similar components. For higher power requirements, pair it with a high-power MOSFET. The DIP package allows it to easily plug into any breadboard or perfboard. You can set the I2C address by connecting the ADDR0 - 2 pins to power or ground, enabling up to 8 unique addresses. This means you can have 8 chips share a single I2C bus, giving you a total of 128 I/O pins. We've used this chip in our RGB LCD + Keypad shield to control an LCD and read a 5-way keypad, and found it to be highly reliable and easy to get started with. We even offer an Arduino library with example code for setting pin states, reading and writing from individual pins, and setting the pull-ups.

Using the MCP23017 port expander is quite straightforward. First, connect it to your microcontroller using the two I2C pins. You can share these pins with other I2C devices. Then, configure each of the 16 pins according to your needs - you can set them as inputs, outputs, or inputs with a pull-up resistor. To receive an interrupt when an input changes, connect an external pin. Make sure to operate the chip within the voltage range of 2.7 - 5.5V. When using it to power components like LEDs, note that each I/O pin can handle up to 20mA. If you need more power, use a high - power MOSFET. The DIP package makes it easy to plug into a breadboard or perfboard. To set the I2C address, connect the ADDR0 - 2 pins to power or ground. You can have up to 8 chips sharing a single I2C bus. For programming, use our provided Arduino library with example code. As for maintenance, keep the chip in a dry and clean environment. Avoid exposing it to extreme temperatures or voltages outside the specified range. If you encounter any issues, refer to the documentation or contact our support team.
We Think You May Like
Mini-tool 012
$5.00$9.48
Acrylic Piano Board with RGB LED
$17.00$32.97

CAT 5 Ethernet Cable
$1.00$2.43
Mini Thermal Receipt Printer Starter Pack
$38.00$120.86
LTP-305 LED matrix (pair) - Green
$5.00$11.09
Fuck Fuckity Fuck Fuck Lapel Pin
$9.00$18.05



Copyright (C) www.freedoshvs.com 2025 All Rights Reserved.
TOP