Microchip MCP23008 GPIO (I2C)
Summary
I2C-controlled GPIO expander with 8 channels, configurable as inputs or outputs with optional pull-up resistors and inversion.
Description
The **MCP23008** component provides 8 GPIO channels accessible over I2C. Each channel can be individually configured as a digital input or output, with optional pull-up resistors and inverted logic. This component is useful for expanding the number of digital I/O pins on a microcontroller and controlling LEDs, buttons, or other digital devices.
Diagram:
Categories
- File:TArduinoI2CCategory.png Category I2C – Components controlled via I2C bus.
- File:TArduinoDigitalCategory.png Category Digital – Components handling digital logic signals.
Properties
- Address – I2C address of the MCP23008 device.
Channel Properties
Each channel (Channel[0] to Channel[7]) has the following properties:
- Auto Config – Automatically configure channel at startup.
- Initial Value – Default digital value (boolean).
- Is Output – Configure the channel as digital output (otherwise input).
- Is Pull Up – Enable internal pull-up resistor for the channel.
- Is Inverted – Inverts the logical output of the channel.
Pins
Channel | Digital Input | Digital Output |
---|---|---|
Channel[0] | In (Digital) | Out |
Channel[1] | In (Digital) | Out |
Channel[2] | In (Digital) | Out |
Channel[3] | In (Digital) | Out |
Channel[4] | In (Digital) | Out |
Channel[5] | In (Digital) | Out |
Channel[6] | In (Digital) | Out |
Channel[7] | In (Digital) | Out |
I2C Pins
- Out (I2C) – I2C communication pin.