Rust MC4725 Driver

This is a platform agnostic Rust driver for the MCP4725, based on the embedded-hal traits.

The Device

The Microchip MCP4725 is a low-power, high accuracy, single channel, 12-bit buffered voltage output Digital-to-Analog Convertor (DAC) with non-volatile memory (EEPROM).

Datasheet: http://ww1.microchip.com/downloads/en/DeviceDoc/22039d.pdf

Status

Examples

From examples/linux_raspi.rs:

```rust extern crate linuxembeddedhal as linuxhal; extern crate mcp4725rs;

use linuxhal::{Delay, I2cdev}; use mcp4725rs::MCP4725;

fn main() { println!("Hello, MCP4725!"); println!(); println!("Generating sawtooth wave signal on DAC output...");

let dev = I2cdev::new("/dev/i2c-1").unwrap();
let address = 0x60;

let mut dac = MCP4725::new(dev, address, Delay).unwrap();

loop {
    for dac_code in 0..4096 {
        dac.set_dac_value(dac_code);
    }
}

} ```

Build the example on Raspberry PI

cargo build --examples

License

Licensed under either of