6 releases
0.2.4 | Apr 15, 2023 |
---|---|
0.2.3 | Mar 3, 2023 |
0.2.2 | Jan 7, 2023 |
0.2.1 | Dec 11, 2022 |
0.1.0 | Dec 6, 2022 |
#461 in Embedded development
215KB
3.5K
SLoC
AFE4404 Rust driver
This is a AFE4404 driver for Rust embedded-hal. It allows a high level interaction with the AFE.
Usage
Initialise the AFE:
let mut frontend = AFE4404::with_three_leds(i2c, 0x58u8, Frequency::new::<megahertz>(4.0));
Set the LEDs current:
frontend
.set_leds_current(&LedCurrentConfiguration::<ThreeLedsMode>::new(
ElectricCurrent::new::<milliampere>(60.0),
ElectricCurrent::new::<milliampere>(10.0),
ElectricCurrent::new::<milliampere>(10.0),
))
.expect("Cannot set leds current");
Set the TIA resistors:
frontend
.set_tia_resistors(&ResistorConfiguration::<ThreeLedsMode>::new(
ElectricalResistance::new::<kiloohm>(250.0),
ElectricalResistance::new::<kiloohm>(100.0),
))
.expect("Cannot set tia resistors");
Set the clock source:
frontend
.set_clock_source(ClockConfiguration::Internal)
.expect("Cannot set clock source");
Read the sampled values:
let sample = frontend.read();
Dependencies
~3MB
~64K SLoC