#driver #adc #i2c-driver #embedded-hal-driver #adc122u04 #adc122c04

no-std ads122x04

Platform-agnostic driver for the ADS122C04 and ADS122U04 analog to digital converters

3 releases (breaking)

0.3.0 Nov 29, 2023
0.2.0 Nov 10, 2023
0.1.0 Sep 7, 2023

#1560 in Embedded development

Apache-2.0

27KB
623 lines

Texas Instruments ADS122x04 Rust Driver

crates.io Docs Rust

A platform agnostic rust driver for the ADS122U04 (UART) and ADS122C04 (I2C) ADC from Texas Instruments.

To use this driver, consult the I2C example below:

use ads122x04::{interface::*, registers::*, ADS122x04, Error as ADS122x04Error};

{
    let mut adc = ADS122x04::new_i2c(address, i2c);
    adc.reset();
    adc.calibrate_offset();
    adc.set_input_mux(Mux::Ain1Ain0);
    adc.set_conversion_mode(ConversionMode::Continuous);
    adc.set_current_level(CurrentSource::Off);
    adc.set_current_route_1(CurrentRoute::Ain3);
    adc.start();
    let measurement = adc.get_voltage();
}

TODO:

  • test UART
  • implement CRC

Products That Use This Library

Dependencies

~71KB