mbuesch / bme280-multibus

Embedded rust driver for the Bosch BME280.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

crates.io docs.rs CI

bme280-multibus

BME280 driver with support for I2C and SPI buses.

Example

use bme280_multibus::{i2c0::Address, Bme280, Sample, Standby};

const SETTINGS: bme280_multibus::Settings = bme280_multibus::Settings {
    config: bme280_multibus::Config::RESET
        .set_standby_time(bme280_multibus::Standby::Millis1000)
        .set_filter(bme280_multibus::Filter::X16),
    ctrl_meas: bme280_multibus::CtrlMeas::RESET
        .set_osrs_t(bme280_multibus::Oversampling::X8)
        .set_osrs_p(bme280_multibus::Oversampling::X8)
        .set_mode(bme280_multibus::Mode::Normal),
    ctrl_hum: bme280_multibus::Oversampling::X8,
};

let mut bme: Bme280<_> = Bme280::from_i2c0(i2c, Address::SdoGnd)?;
bme.settings(&SETTINGS)?;
let sample: Sample = bme.sample().unwrap();

Features

  • async: Enable asynchronous implementations with embedded-hal-async. Requires a nightly toolchain.
  • serde: Implement Serialize and Deserialize for Sample.

About

Embedded rust driver for the Bosch BME280.

License:MIT License


Languages

Language:Rust 100.0%