Struct esp_ward::peripherals::bme280::Bme280Sensor

source ·
pub struct Bme280Sensor {
    pub inner: BME280<I2C<'static, I2C0>>,
    pub delay: Delay,
}
Expand description

A sensor instance for the BME280 that provides access to temperature, humidity, and pressure readings.

Fields§

§inner: BME280<I2C<'static, I2C0>>

The internal BME280 driver from the bme280 crate used over I2C.

§delay: Delay

A delay provider for timing-dependent operations.

Trait Implementations§

source§

impl HumiditySensor for Bme280Sensor

source§

fn get_humidity(&mut self) -> Result<f32, PeripheralError>

Reads the current relative humidity from the BME280 sensor.

§Returns

Returns an Ok(f32) representing the relative humidity in percentage if the read is successful, or Err(PeripheralError::ReadError) if the humidity cannot be read.

source§

impl I2cPeriph for Bme280Sensor

source§

fn create_on_i2c( bus: I2C<'static, I2C0>, delay: Delay ) -> Result<Self::Returnable, PeripheralError>

Creates a new instance of the BME280 sensor using the provided I2C bus.

§Arguments
  • bus - The I2C bus to use for communication with the sensor.
  • delay - A delay provider for timing-dependent operations.
§Returns

Returns an Ok(Bme280Sensor) if the sensor is successfully initialized, or Err(PeripheralError::InitializationFailed) if the sensor cannot be initialized.

§

type Returnable = Bme280Sensor

source§

impl PressureSensor for Bme280Sensor

source§

fn get_pressure(&mut self) -> Result<f32, PeripheralError>

Reads the current atmospheric pressure from the BME280 sensor.

§Returns

Returns an Ok(f32) representing the pressure in hPa (hectopascals) if the read is successful, or Err(PeripheralError::ReadError) if the pressure cannot be read.

source§

impl TemperatureSensor for Bme280Sensor

source§

fn get_temperature(&mut self) -> Result<f32, PeripheralError>

Reads the current temperature from the BME280 sensor.

§Returns

Returns an Ok(f32) representing the temperature in degrees Celsius if the read is successful, or Err(PeripheralError::ReadError) if the temperature cannot be read.

source§

impl UnifiedData for Bme280Sensor

source§

fn read(&mut self, _delay: Delay) -> Result<Self::Output, PeripheralError>

Reads the current relative humidity, temperature and pressure from the BME280 sensor.

§Returns

Returns an Ok((f32, f32, f32)) representing the relative humidity(percentage), temperature(celsious) and pressure(hPa) if the read is successful, or Err(PeripheralError::ReadError) if the data from sensor cannot be read.

§

type Output = (f32, f32, f32)

Auto Trait Implementations§

§

impl Freeze for Bme280Sensor

§

impl RefUnwindSafe for Bme280Sensor

§

impl Send for Bme280Sensor

§

impl Sync for Bme280Sensor

§

impl Unpin for Bme280Sensor

§

impl !UnwindSafe for Bme280Sensor

Blanket Implementations§

§

impl<T> Any for T
where T: 'static + ?Sized,

§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Az for T

source§

fn az<Dst>(self) -> Dst
where T: Cast<Dst>,

Casts the value.
§

impl<T> Borrow<T> for T
where T: ?Sized,

§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
§

impl<T> BorrowMut<T> for T
where T: ?Sized,

§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<Src, Dst> CastFrom<Src> for Dst
where Src: Cast<Dst>,

source§

fn cast_from(src: Src) -> Dst

Casts the value.
source§

impl<T> CheckedAs for T

source§

fn checked_as<Dst>(self) -> Option<Dst>
where T: CheckedCast<Dst>,

Casts the value.
source§

impl<Src, Dst> CheckedCastFrom<Src> for Dst
where Src: CheckedCast<Dst>,

source§

fn checked_cast_from(src: Src) -> Option<Dst>

Casts the value.
§

impl<T> From<T> for T

§

fn from(t: T) -> T

Returns the argument unchanged.

§

impl<T, U> Into<U> for T
where U: From<T>,

§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of [From]<T> for U chooses to do.

source§

impl<T> OverflowingAs for T

source§

fn overflowing_as<Dst>(self) -> (Dst, bool)
where T: OverflowingCast<Dst>,

Casts the value.
source§

impl<Src, Dst> OverflowingCastFrom<Src> for Dst
where Src: OverflowingCast<Dst>,

source§

fn overflowing_cast_from(src: Src) -> (Dst, bool)

Casts the value.
source§

impl<T> SaturatingAs for T

source§

fn saturating_as<Dst>(self) -> Dst
where T: SaturatingCast<Dst>,

Casts the value.
source§

impl<Src, Dst> SaturatingCastFrom<Src> for Dst
where Src: SaturatingCast<Dst>,

source§

fn saturating_cast_from(src: Src) -> Dst

Casts the value.
§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
source§

impl<T> UnwrappedAs for T

source§

fn unwrapped_as<Dst>(self) -> Dst
where T: UnwrappedCast<Dst>,

Casts the value.
source§

impl<Src, Dst> UnwrappedCastFrom<Src> for Dst
where Src: UnwrappedCast<Dst>,

source§

fn unwrapped_cast_from(src: Src) -> Dst

Casts the value.
source§

impl<T> WrappingAs for T

source§

fn wrapping_as<Dst>(self) -> Dst
where T: WrappingCast<Dst>,

Casts the value.
source§

impl<Src, Dst> WrappingCastFrom<Src> for Dst
where Src: WrappingCast<Dst>,

source§

fn wrapping_cast_from(src: Src) -> Dst

Casts the value.