-
Notifications
You must be signed in to change notification settings - Fork 7
Library to use MCP23017 I/O Expander chip with STM32 via i2c interface
License
ruda/mcp23017
Folders and files
| Name | Name | Last commit message | Last commit date | |
|---|---|---|---|---|
Repository files navigation
MCP23017 library for STM32.
Library to use MCP23017 I/O Expander chip with STM32 via i2c interface.
.---------.
GPB0<->|1 \_/ 28|<->GPA7
GPB1<->| |<->GPA6
GPB2<->| M |<->GPA5
GPB3<->| C |<->GPA4
GPB4<->| P |<->GPA3
GPB5<->| 2 |<->GPA2
GPB6<->| 3 |<->GPA1
GPB7<->| 0 |<->GPA0
VDD-->| 1 |-->INTA
VSS-->| 7 |-->INTB
NC---| |-->~RESET
SCL-->| |<--A2
SDA<->| |<--A1
NC---|14 15|<--A0
'---------'
Example: Read bits from GPA then copy bits to GPB.
#include "mcp23017.h"
MCP23017_HandleTypeDef hmcp;
mcp23017_init(&hmcp, &hi2c1, MCP23017_ADDRESS_20);
mcp23017_iodir(&hmcp, MCP23017_PORTA, MCP23017_IODIR_ALL_INPUT);
mcp23017_iodir(&hmcp, MCP23017_PORTB, MCP23017_IODIR_ALL_OUTPUT);
while (1) {
mcp23017_read_gpio(&hmcp, MCP23017_PORTA);
hmcp.gpio[MCP23017_PORTB] = hmcp.gpio[MCP23017_PORTA];
mcp23017_write_gpio(&hmcp, MCP23017_PORTB);
}
About
Library to use MCP23017 I/O Expander chip with STM32 via i2c interface
Resources
License
Stars
Watchers
Forks
Releases
No releases published
Packages 0
No packages published