Expand description
Rust driver for MAX31856
Uses embedded-hal
traits and patterns from Eldruin’s driver-examples
Features:
- Modify default configuration. see
config()
- Read/write configuration. See:
send_config()
- Read Linearized thermocouple temperature in Celcius. See:
temperature()
Features in the next few versions:
- Interrupts with FAULT pin
- External temperature sensor for cold junction conversion
- Read/write fault mask registers.
- Read/write cold junction fault mask registers.
- Read/write Linearized temperature fault registers.
- Read/write cold junction temperature offset registers.
- Read cold junction temperature.
- Read Fault status.
§Usage example
extern crate max31856
extern crate linux_embedded_hal
let spi = Spidev::open("/dev/spidev0.0").unwrap();
let cs = Pin::new(25);
let fault = Pin::new(23); //Fault pin is unused
let mut sensor = Max31856::new(spi, cs, fault);
// A default configuration is set on creation. It can be edited as follows
sensor.config().average_samples(max31856::AveragingMode::FourSamples);
sensor.send_config();
println!(sensor.temperature().unwrap());
sensor.config().conversion_mode(max31856::CMode::AutomaticConversion);
sensor.send_config();
println!(sensor.temperature().unwrap());
Structs§
- Max31856
- Max31856 Precision Thermocouple to Digital Converter with Linearization
- Max31856
Options - Options that control configuration of Max31856.
Enums§
- Averaging
Mode - Thermocouple Voltage Conversion Averaging Mode
- CMode
- Conversion mode
- Error
- Errors in this crate
- Fault
Modes - Fault modes
- Noise
Rejection Mode - Noise rejection filter Modes
- OCFault
Modes - Open circuit detection modes
- OneShot
- One-Shot Modes
- Thermocouple
Type - Thermoucouple types
Constants§
- MODE
- SPI mode (CPOL = 1, CPHA = 1)