This crate is a no_std
driver for the
MCP23017 and
MCP23008
16-Bit/8-Bit I2C I/O Expanders.
Include this library as a dependency in your Cargo.toml
:
[dependencies]
mcp230xx = "0.1"
Use embedded-hal implementation to get I2C handle and then create mcp23017 handle:
use mcp230xx::*;
let pin = Mcp23017::A0;
let mut u = Mcp230xx<I2C, Mcp23017>::default(i2c).unwrap();
u.set_direction(pin, Direction::Output).unwrap();
u.set_gpio(pin, Level::High).unwrap();
assert!(u.gpio(pin).unwrap());
API Docs available on docs.rs
Thise crate has evolved from mcp23017.
Minimum supported Rust version (MSRV) is 1.62.0.