Difference between revisions of "DIGIO-128"
Jump to navigation
Jump to search
Blwikiadmin (talk | contribs) |
Blwikiadmin (talk | contribs) |
||
Line 7: | Line 7: | ||
== Features == | == Features == | ||
+ | * Total of 128 bits of General Purpose I/O (GPIO) | ||
* (8) of [http://ww1.microchip.com/downloads/en/DeviceDoc/20001952C.pdf MCP23017] - 16 bit GPIO x 8 | * (8) of [http://ww1.microchip.com/downloads/en/DeviceDoc/20001952C.pdf MCP23017] - 16 bit GPIO x 8 | ||
− | * | + | ** I2C (Two Wire) host interface |
− | * I2C | ||
− | |||
− | |||
** 100/400 KHZ operation | ** 100/400 KHZ operation | ||
** 25mA sink/source capability per I/O | ** 25mA sink/source capability per I/O | ||
− | ** Jumper selectable terminators | + | *** Limited by current in/out of the IC |
− | + | * Jumper selectable I2C terminators | |
− | * 0.1" Pitch | + | * Single 4-pin host interface connector (Ground, Power, Clock, Data) |
+ | * (8) I/O Connectors | ||
+ | ** 20 pin, 0.1" Pitch | ||
** 16 digital I/O | ** 16 digital I/O | ||
** 2 Power | ** 2 Power | ||
** 2 Ground | ** 2 Ground | ||
** Interrupt connectors | ** Interrupt connectors | ||
− | + | *** Card uses I2Caddresses 0x20-0x27 for I/O and 0x50 for Configuration EEPROM | |
− | *** Card uses | + | * Power Connector |
− | + | ** 3.3V or 5V operation | |
* [https://www.mouser.com/datasheet/2/268/21210G-39776.pdf 24LC024] I2C Personality EEPROM | * [https://www.mouser.com/datasheet/2/268/21210G-39776.pdf 24LC024] I2C Personality EEPROM | ||
− | |||
* Compatible with Arduino, Raspberry Pi, BeagleBone Black | * Compatible with Arduino, Raspberry Pi, BeagleBone Black | ||
* 95x95mm form factor | * 95x95mm form factor |
Revision as of 12:26, 17 March 2022
Contents
Features
- Total of 128 bits of General Purpose I/O (GPIO)
- (8) of MCP23017 - 16 bit GPIO x 8
- I2C (Two Wire) host interface
- 100/400 KHZ operation
- 25mA sink/source capability per I/O
- Limited by current in/out of the IC
- Jumper selectable I2C terminators
- Single 4-pin host interface connector (Ground, Power, Clock, Data)
- (8) I/O Connectors
- 20 pin, 0.1" Pitch
- 16 digital I/O
- 2 Power
- 2 Ground
- Interrupt connectors
- Card uses I2Caddresses 0x20-0x27 for I/O and 0x50 for Configuration EEPROM
- Power Connector
- 3.3V or 5V operation
- 24LC024 I2C Personality EEPROM
- Compatible with Arduino, Raspberry Pi, BeagleBone Black
- 95x95mm form factor
- (4) 6-32 mounting holes - one on each corner
I2C Addresses
- MCP23017 parts 0x20 - 0x27
- EEPROM 24LC024 = 0x50
Connectors
P1-P4, P6-P9 - Digital I/O Connector
- 16 bits per connector
- (2) Power
- (2) Ground
P5, P10 - Interrupt Outputs
- Useful for detecting input changes or levels
- Can be ignored if not needed
- If the inputs are polled, the pins can be ignored
J1 - External Power
- Can be ignored if the card is powered through I2C connector
J2, J3 - I2C Connectors
- Daisy chained connections
- 2nd connector can be ignored
- Card can be powered through this connector(s)
J4 - I2C Terminators and EEPROM Write Enable
- SDA, SCL I2C Terminators
- Install jumper to use terminators
- WE - EEPROM Write Enable
- Install To enable writing config EEPROM
Schematics
Testing
Software Examples/Drivers
- DIGIO-128 Arduino example code
- DIGIO-128 Arduino Driver
- DIGIO-128 - 64-bit version Arduino Driver
- DIGIO-128 Micropython Driver (ESP-32)
- Raspberry Pi Example Code - Requires some knowledge of the MCP23017 (datasheet)