Crate max6675_hal
source ·Expand description
§max6675-hal
An embedded-hal driver for the MAX6675 digital thermocouple converter.
§Usage
This example code will change depending on which HAL device driver you’re
using. An arduino-hal
project’s SPI isn’t like that of an esp32-hal
project.
However, you only need to focus on your device’s SPI implementation!
(thanks, embedded-hal
1.0 ☺️)
Your SPI settings should use MSB (most significant bit) first, target a clock speed of at least 4mhz, and utilize SPI Mode 1.
ⓘ
// first, define what pins you're connecting to
let so_pin = pins.("your miso pin").into_pull_up_input();
let cs_pin = pins.("your cs pin").into_output();
let sck_pin = pins.("your sck/clock pin").into_output();
// you may need a mosi pin for your device's SPI, though the max6675 doesn't use one.
// if so, just pick some pin that you're not using ☺️
let dummy_mosi = pins.("some pin you're not using").into_output();
let (spi, _) = device-hal::spi::Spi::new(
sck_pin, dummy_mosi, so_pin, cs_pin,
device-hal::spi::Settings {
// pick some settings that roughly align like so:
data_order: MostSignificantFirst,
clock: 4MhzClockSpeed,
mode: embedded_hal::spi::MODE_1,
}
);
let mut max = Max6675::new(spi)?; // your spi and chip select here
let temp = max.read_celsius()? // ayo! we got the temperature
§Note
This crate re-exports a Temperature type from another crate, simmer
.
You can change and play with the temperatures in various ways, so feel free
to check out its docs for more info.
Re-exports§
pub use error::Max6675Error;
Modules§
Structs§
- Max6675
Enums§
- A Temperature type from
simmer
. A value that’s one of many common temperature units.