tca9548-eh

Crates.iotca9548-eh
lib.rstca9548-eh
version0.1.0
sourcesrc
created_at2024-07-15 05:27:05.738443
updated_at2024-07-15 05:27:05.738443
descriptionAn embedded-hal focused driver for the TCA9548 I2C multiplexer
homepagehttps://github.com/NZRosto/tca9548-eh
repositoryhttps://github.com/NZRosto/tca9548-eh
max_upload_size
id1303466
size20,055
Reed Smout (NZRosto)

documentation

README

An embedded-hal focused driver for the TCA9548 I2C multiplexer.

This crate allows you to use the multiplexed I2C busses on the TCA9548 as if they were separate I2C busses.

Portable Atomic

This crate uses portable-atomic to provide platform-agnostic atomic operations. This is necessary to implement the internal shared i2c bus. You may need to enable certain features of portable-atomic to get this crate to compile on platforms that don't natively support atomic operations.

Usage

// 0x70 is used here, the actual address will vary
// depending on the configuration of the ADDR
// pins on the chip.
let mut multiplexer = Tca9548::new(i2c, 0x70).unwrap();

// This borrows the multiplexer, so the multiplexer
// cannot be dropped before it's busses.
let tca9548_eh::Busses {
    bus0,
    bus1,
    ..
} = multiplexer.split();

bus0.write(0x38, &[0x00]).unwrap();
Commit count: 0

cargo fmt