[−][src]Struct embedded_ccs811::Ccs811
CCS811 device driver
Convenience wrapper arount Ccs811Awake
which handles waking up the device on each operation.
Methods
impl<I2C, NWAKE, WAKEDELAY> Ccs811<I2C, NWAKE, WAKEDELAY, Boot>
[src]
pub fn new(
i2c: I2C,
address: SlaveAddr,
n_wake_pin: NWAKE,
wake_delay: WAKEDELAY
) -> Self
[src]
i2c: I2C,
address: SlaveAddr,
n_wake_pin: NWAKE,
wake_delay: WAKEDELAY
) -> Self
Create new instance of the CCS811 device.
See Ccs811Awake
for the case where the nWAKE pin is not used.
impl<I2C, CommE, PinE, NWAKE, WAKEDELAY, MODE> Ccs811<I2C, NWAKE, WAKEDELAY, MODE> where
I2C: Write<Error = CommE>,
NWAKE: OutputPin<Error = PinE>,
WAKEDELAY: DelayUs<u8>,
[src]
I2C: Write<Error = CommE>,
NWAKE: OutputPin<Error = PinE>,
WAKEDELAY: DelayUs<u8>,
pub fn destroy(self) -> (I2C, NWAKE, WAKEDELAY)
[src]
Destroy driver instance, return I²C bus, nWAKE pin and wake delay instances.
Trait Implementations
impl<I2C, CommE, PinE, NWAKE, WAKEDELAY> Ccs811AppMode for Ccs811<I2C, NWAKE, WAKEDELAY, App> where
I2C: Write<Error = CommE> + WriteRead<Error = CommE>,
NWAKE: OutputPin<Error = PinE>,
WAKEDELAY: DelayUs<u8>,
[src]
I2C: Write<Error = CommE> + WriteRead<Error = CommE>,
NWAKE: OutputPin<Error = PinE>,
WAKEDELAY: DelayUs<u8>,
type Error = Error<CommE, PinE>
Error type
type ModeChangeError = ModeChangeError<Error<CommE, PinE>, Self>
Boot/App mode change error
type BootModeType = Ccs811<I2C, NWAKE, WAKEDELAY, Boot>
Boot mode type
fn set_mode(&mut self, mode: MeasurementMode) -> Result<(), Self::Error>
[src]
fn has_data_ready(&mut self) -> Result<bool, Self::Error>
[src]
fn raw_data(&mut self) -> Result<(u8, u16), Self::Error>
[src]
fn data(&mut self) -> Result<AlgorithmResult, Self::Error>
[src]
fn baseline(&mut self) -> Result<[u8; 2], Self::Error>
[src]
fn set_baseline(&mut self, baseline: [u8; 2]) -> Result<(), Self::Error>
[src]
fn set_environment(
&mut self,
humidity_percentage: f32,
temperature_celsius: f32
) -> Result<(), Self::Error>
[src]
&mut self,
humidity_percentage: f32,
temperature_celsius: f32
) -> Result<(), Self::Error>
fn set_eco2_thresholds(
&mut self,
low_to_medium: u16,
medium_to_high: u16
) -> Result<(), Self::Error>
[src]
&mut self,
low_to_medium: u16,
medium_to_high: u16
) -> Result<(), Self::Error>
fn set_interrupt_mode(&mut self, mode: InterruptMode) -> Result<(), Self::Error>
[src]
fn software_reset(self) -> Result<Self::BootModeType, Self::ModeChangeError>
[src]
impl<I2C, CommE, PinE, NWAKE, WAKEDELAY> Ccs811BootMode for Ccs811<I2C, NWAKE, WAKEDELAY, Boot> where
I2C: Write<Error = CommE> + WriteRead<Error = CommE>,
NWAKE: OutputPin<Error = PinE>,
WAKEDELAY: DelayUs<u8>,
[src]
I2C: Write<Error = CommE> + WriteRead<Error = CommE>,
NWAKE: OutputPin<Error = PinE>,
WAKEDELAY: DelayUs<u8>,
type Error = Error<CommE, PinE>
Error type
type ModeChangeError = ModeChangeError<Self::Error, Self>
Boot/App mode change error
type TargetType = Ccs811<I2C, NWAKE, WAKEDELAY, App>
Application mode type
fn start_application(self) -> Result<Self::TargetType, Self::ModeChangeError>
[src]
fn verify_application(&mut self) -> Result<(), Self::Error>
[src]
fn erase_application(&mut self) -> Result<(), Self::Error>
[src]
fn download_application<D: DelayMs<u16>>(
&mut self,
bin: &[u8],
delay: &mut D
) -> Result<(), Self::Error>
[src]
&mut self,
bin: &[u8],
delay: &mut D
) -> Result<(), Self::Error>
fn update_application<D: DelayMs<u16>>(
&mut self,
bin: &[u8],
delay: &mut D
) -> Result<(), Self::Error>
[src]
&mut self,
bin: &[u8],
delay: &mut D
) -> Result<(), Self::Error>
fn software_reset(&mut self) -> Result<(), Self::Error>
[src]
impl<I2C, CommE, PinE, NWAKE, WAKEDELAY, MODE> Ccs811Device for Ccs811<I2C, NWAKE, WAKEDELAY, MODE> where
I2C: Write<Error = CommE> + WriteRead<Error = CommE>,
NWAKE: OutputPin<Error = PinE>,
WAKEDELAY: DelayUs<u8>,
[src]
I2C: Write<Error = CommE> + WriteRead<Error = CommE>,
NWAKE: OutputPin<Error = PinE>,
WAKEDELAY: DelayUs<u8>,
type Error = Error<CommE, PinE>
Error type
fn firmware_mode(&mut self) -> Result<FirmwareMode, Self::Error>
[src]
fn has_valid_app(&mut self) -> Result<bool, Self::Error>
[src]
fn hardware_id(&mut self) -> Result<u8, Self::Error>
[src]
fn hardware_version(&mut self) -> Result<(u8, u8), Self::Error>
[src]
fn firmware_bootloader_version(&mut self) -> Result<(u8, u8, u8), Self::Error>
[src]
fn firmware_application_version(&mut self) -> Result<(u8, u8, u8), Self::Error>
[src]
impl<I2C: Debug, NWAKE: Debug, WAKEDELAY: Debug, MODE: Debug> Debug for Ccs811<I2C, NWAKE, WAKEDELAY, MODE>
[src]
Auto Trait Implementations
impl<I2C, NWAKE, WAKEDELAY, MODE> RefUnwindSafe for Ccs811<I2C, NWAKE, WAKEDELAY, MODE> where
I2C: RefUnwindSafe,
MODE: RefUnwindSafe,
NWAKE: RefUnwindSafe,
WAKEDELAY: RefUnwindSafe,
I2C: RefUnwindSafe,
MODE: RefUnwindSafe,
NWAKE: RefUnwindSafe,
WAKEDELAY: RefUnwindSafe,
impl<I2C, NWAKE, WAKEDELAY, MODE> Send for Ccs811<I2C, NWAKE, WAKEDELAY, MODE> where
I2C: Send,
MODE: Send,
NWAKE: Send,
WAKEDELAY: Send,
I2C: Send,
MODE: Send,
NWAKE: Send,
WAKEDELAY: Send,
impl<I2C, NWAKE, WAKEDELAY, MODE> Sync for Ccs811<I2C, NWAKE, WAKEDELAY, MODE> where
I2C: Sync,
MODE: Sync,
NWAKE: Sync,
WAKEDELAY: Sync,
I2C: Sync,
MODE: Sync,
NWAKE: Sync,
WAKEDELAY: Sync,
impl<I2C, NWAKE, WAKEDELAY, MODE> Unpin for Ccs811<I2C, NWAKE, WAKEDELAY, MODE> where
I2C: Unpin,
MODE: Unpin,
NWAKE: Unpin,
WAKEDELAY: Unpin,
I2C: Unpin,
MODE: Unpin,
NWAKE: Unpin,
WAKEDELAY: Unpin,
impl<I2C, NWAKE, WAKEDELAY, MODE> UnwindSafe for Ccs811<I2C, NWAKE, WAKEDELAY, MODE> where
I2C: UnwindSafe,
MODE: UnwindSafe,
NWAKE: UnwindSafe,
WAKEDELAY: UnwindSafe,
I2C: UnwindSafe,
MODE: UnwindSafe,
NWAKE: UnwindSafe,
WAKEDELAY: UnwindSafe,
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> From<T> for T
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
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>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,