pub struct Mma8x5x<I2C, IC, MODE> { /* private fields */ }
Expand description
MMA8x5x device driver
Implementations
sourceimpl<E, I2C, IC, MODE> Mma8x5x<I2C, IC, MODE>where
I2C: WriteRead<Error = E> + Write<Error = E>,
impl<E, I2C, IC, MODE> Mma8x5x<I2C, IC, MODE>where
I2C: WriteRead<Error = E> + Write<Error = E>,
sourceimpl<E, I2C, IC> Mma8x5x<I2C, IC, Standby>where
I2C: WriteRead<Error = E> + Write<Error = E>,
impl<E, I2C, IC> Mma8x5x<I2C, IC, Standby>where
I2C: WriteRead<Error = E> + Write<Error = E>,
sourcepub fn set_scale(&mut self, scale: GScale) -> Result<(), Error<E>>
pub fn set_scale(&mut self, scale: GScale) -> Result<(), Error<E>>
Set G scale: +/-2g, +/-4g, +/-8g
sourcepub fn set_read_mode(&mut self, mode: ReadMode) -> Result<(), Error<E>>
pub fn set_read_mode(&mut self, mode: ReadMode) -> Result<(), Error<E>>
Set read mode (Normal/Fast)
sourcepub fn set_offset_correction(
&mut self,
x: i8,
y: i8,
z: i8
) -> Result<(), Error<E>>
pub fn set_offset_correction(
&mut self,
x: i8,
y: i8,
z: i8
) -> Result<(), Error<E>>
Set offset correction.
The resolution is 1.96/LSB. The offset compensation range is +/-250mg.
sourcepub fn set_data_rate(&mut self, rate: OutputDataRate) -> Result<(), Error<E>>
pub fn set_data_rate(&mut self, rate: OutputDataRate) -> Result<(), Error<E>>
Set output data rate in WAKE mode
sourcepub fn set_wake_power_mode(
&mut self,
power_mode: PowerMode
) -> Result<(), Error<E>>
pub fn set_wake_power_mode(
&mut self,
power_mode: PowerMode
) -> Result<(), Error<E>>
Set power mode in WAKE mode
sourcepub fn enable_self_test(&mut self) -> Result<(), Error<E>>
pub fn enable_self_test(&mut self) -> Result<(), Error<E>>
Enable self-test mode
sourcepub fn disable_self_test(&mut self) -> Result<(), Error<E>>
pub fn disable_self_test(&mut self) -> Result<(), Error<E>>
Disable self-test mode
sourceimpl<E, I2C, IC> Mma8x5x<I2C, IC, Standby>where
I2C: WriteRead<Error = E> + Write<Error = E>,
impl<E, I2C, IC> Mma8x5x<I2C, IC, Standby>where
I2C: WriteRead<Error = E> + Write<Error = E>,
Auto-sleep/wake configuration
sourcepub fn set_sleep_power_mode(
&mut self,
power_mode: PowerMode
) -> Result<(), Error<E>>
pub fn set_sleep_power_mode(
&mut self,
power_mode: PowerMode
) -> Result<(), Error<E>>
Set power mode in sleep mode
sourcepub fn enable_auto_sleep(&mut self) -> Result<(), Error<E>>
pub fn enable_auto_sleep(&mut self) -> Result<(), Error<E>>
Enable auto-sleep mode
sourcepub fn disable_auto_sleep(&mut self) -> Result<(), Error<E>>
pub fn disable_auto_sleep(&mut self) -> Result<(), Error<E>>
Disable auto-sleep mode
sourcepub fn set_auto_sleep_data_rate(
&mut self,
rate: AutoSleepDataRate
) -> Result<(), Error<E>>
pub fn set_auto_sleep_data_rate(
&mut self,
rate: AutoSleepDataRate
) -> Result<(), Error<E>>
Set sampling rate used in auto-sleep mode
sourceimpl<E, I2C, IC> Mma8x5x<I2C, IC, Standby>where
I2C: WriteRead<Error = E> + Write<Error = E>,
impl<E, I2C, IC> Mma8x5x<I2C, IC, Standby>where
I2C: WriteRead<Error = E> + Write<Error = E>,
Interrupt configuration
sourcepub fn set_interrupt_pin_polarity(
&mut self,
polarity: InterruptPinPolarity
) -> Result<(), Error<E>>
pub fn set_interrupt_pin_polarity(
&mut self,
polarity: InterruptPinPolarity
) -> Result<(), Error<E>>
Set interrupt pin polarity
sourcepub fn set_interrupt_pin_configuration(
&mut self,
configuration: InterruptPinConfiguration
) -> Result<(), Error<E>>
pub fn set_interrupt_pin_configuration(
&mut self,
configuration: InterruptPinConfiguration
) -> Result<(), Error<E>>
Set interrupt pin configuration
sourcepub fn set_enabled_interrupts(
&mut self,
enabled: EnabledInterrupts
) -> Result<(), Error<E>>
pub fn set_enabled_interrupts(
&mut self,
enabled: EnabledInterrupts
) -> Result<(), Error<E>>
Set enabled interrupts
sourcepub fn set_interrupt_pin_routes(
&mut self,
routes: InterruptPinRoutes
) -> Result<(), Error<E>>
pub fn set_interrupt_pin_routes(
&mut self,
routes: InterruptPinRoutes
) -> Result<(), Error<E>>
Set interrupt source pin routes
sourcepub fn set_wake_interrupts(
&mut self,
interrupts: WakeInterrupts
) -> Result<(), Error<E>>
pub fn set_wake_interrupts(
&mut self,
interrupts: WakeInterrupts
) -> Result<(), Error<E>>
Set interrupts that wake the device
sourceimpl<E, I2C, IC> Mma8x5x<I2C, IC, Standby>where
I2C: WriteRead<Error = E> + Write<Error = E>,
impl<E, I2C, IC> Mma8x5x<I2C, IC, Standby>where
I2C: WriteRead<Error = E> + Write<Error = E>,
Portrait/landscape detection configuration
sourcepub fn enable_portrait_landscape_detection(&mut self) -> Result<(), Error<E>>
pub fn enable_portrait_landscape_detection(&mut self) -> Result<(), Error<E>>
Enable portrait/landscape detection
sourcepub fn disable_portrait_landscape_detection(&mut self) -> Result<(), Error<E>>
pub fn disable_portrait_landscape_detection(&mut self) -> Result<(), Error<E>>
Disable portrait/landscape detection
sourcepub fn set_debounce_counter_mode(
&mut self,
mode: DebounceCounterMode
) -> Result<(), Error<E>>
pub fn set_debounce_counter_mode(
&mut self,
mode: DebounceCounterMode
) -> Result<(), Error<E>>
Set portrait/landscape debounce counter mode
sourceimpl<E, I2C, IC> Mma8x5x<I2C, IC, Standby>where
I2C: WriteRead<Error = E> + Write<Error = E>,
impl<E, I2C, IC> Mma8x5x<I2C, IC, Standby>where
I2C: WriteRead<Error = E> + Write<Error = E>,
sourcepub fn into_active(
self
) -> Result<Mma8x5x<I2C, IC, Active>, ModeChangeError<E, Self>>
pub fn into_active(
self
) -> Result<Mma8x5x<I2C, IC, Active>, ModeChangeError<E, Self>>
Change mode to active
sourceimpl<E, I2C, IC> Mma8x5x<I2C, IC, Active>where
I2C: WriteRead<Error = E> + Write<Error = E>,
impl<E, I2C, IC> Mma8x5x<I2C, IC, Active>where
I2C: WriteRead<Error = E> + Write<Error = E>,
sourcepub fn into_standby(
self
) -> Result<Mma8x5x<I2C, IC, Standby>, ModeChangeError<E, Self>>
pub fn into_standby(
self
) -> Result<Mma8x5x<I2C, IC, Standby>, ModeChangeError<E, Self>>
Change mode to standby
sourceimpl<E, I2C> Mma8x5x<I2C, Mma8451, Active>where
I2C: WriteRead<Error = E> + Write<Error = E>,
impl<E, I2C> Mma8x5x<I2C, Mma8451, Active>where
I2C: WriteRead<Error = E> + Write<Error = E>,
sourcepub fn read_unscaled(&mut self) -> Result<UnscaledMeasurement, Error<E>>
pub fn read_unscaled(&mut self) -> Result<UnscaledMeasurement, Error<E>>
Read unscaled acceleration sensor data.
Note: The values are only valid when in active mode or during self-test
sourcepub fn read(&mut self) -> Result<Measurement, Error<E>>
pub fn read(&mut self) -> Result<Measurement, Error<E>>
Read acceleration sensor data scaled to G.
Note: The values are only valid when in active mode or during self-test
sourceimpl<E, I2C> Mma8x5x<I2C, Mma8452, Active>where
I2C: WriteRead<Error = E> + Write<Error = E>,
impl<E, I2C> Mma8x5x<I2C, Mma8452, Active>where
I2C: WriteRead<Error = E> + Write<Error = E>,
sourcepub fn read_unscaled(&mut self) -> Result<UnscaledMeasurement, Error<E>>
pub fn read_unscaled(&mut self) -> Result<UnscaledMeasurement, Error<E>>
Read unscaled acceleration sensor data.
Note: The values are only valid when in active mode or during self-test
sourcepub fn read(&mut self) -> Result<Measurement, Error<E>>
pub fn read(&mut self) -> Result<Measurement, Error<E>>
Read acceleration sensor data scaled to G.
Note: The values are only valid when in active mode or during self-test
sourceimpl<E, I2C> Mma8x5x<I2C, Mma8453, Active>where
I2C: WriteRead<Error = E> + Write<Error = E>,
impl<E, I2C> Mma8x5x<I2C, Mma8453, Active>where
I2C: WriteRead<Error = E> + Write<Error = E>,
sourcepub fn read_unscaled(&mut self) -> Result<UnscaledMeasurement, Error<E>>
pub fn read_unscaled(&mut self) -> Result<UnscaledMeasurement, Error<E>>
Read unscaled acceleration sensor data.
Note: The values are only valid when in active mode or during self-test
sourcepub fn read(&mut self) -> Result<Measurement, Error<E>>
pub fn read(&mut self) -> Result<Measurement, Error<E>>
Read acceleration sensor data scaled to G.
Note: The values are only valid when in active mode or during self-test
sourceimpl<E, I2C> Mma8x5x<I2C, Mma8652, Active>where
I2C: WriteRead<Error = E> + Write<Error = E>,
impl<E, I2C> Mma8x5x<I2C, Mma8652, Active>where
I2C: WriteRead<Error = E> + Write<Error = E>,
sourcepub fn read_unscaled(&mut self) -> Result<UnscaledMeasurement, Error<E>>
pub fn read_unscaled(&mut self) -> Result<UnscaledMeasurement, Error<E>>
Read unscaled acceleration sensor data.
Note: The values are only valid when in active mode or during self-test
sourcepub fn read(&mut self) -> Result<Measurement, Error<E>>
pub fn read(&mut self) -> Result<Measurement, Error<E>>
Read acceleration sensor data scaled to G.
Note: The values are only valid when in active mode or during self-test
sourceimpl<E, I2C> Mma8x5x<I2C, Mma8653, Active>where
I2C: WriteRead<Error = E> + Write<Error = E>,
impl<E, I2C> Mma8x5x<I2C, Mma8653, Active>where
I2C: WriteRead<Error = E> + Write<Error = E>,
sourcepub fn read_unscaled(&mut self) -> Result<UnscaledMeasurement, Error<E>>
pub fn read_unscaled(&mut self) -> Result<UnscaledMeasurement, Error<E>>
Read unscaled acceleration sensor data.
Note: The values are only valid when in active mode or during self-test
sourcepub fn read(&mut self) -> Result<Measurement, Error<E>>
pub fn read(&mut self) -> Result<Measurement, Error<E>>
Read acceleration sensor data scaled to G.
Note: The values are only valid when in active mode or during self-test
sourceimpl<E, I2C, IC, MODE> Mma8x5x<I2C, IC, MODE>where
I2C: WriteRead<Error = E> + Write<Error = E>,
impl<E, I2C, IC, MODE> Mma8x5x<I2C, IC, MODE>where
I2C: WriteRead<Error = E> + Write<Error = E>,
sourcepub fn system_mode(&mut self) -> Result<SystemMode, Error<E>>
pub fn system_mode(&mut self) -> Result<SystemMode, Error<E>>
Read current system mode
sourcepub fn data_status(&mut self) -> Result<DataStatus, Error<E>>
pub fn data_status(&mut self) -> Result<DataStatus, Error<E>>
Read current data status
sourcepub fn portrait_landscape_status(
&mut self
) -> Result<PortraitLandscapeStatus, Error<E>>
pub fn portrait_landscape_status(
&mut self
) -> Result<PortraitLandscapeStatus, Error<E>>
Read current portrait/landscape status
sourcepub fn interrupt_status(&mut self) -> Result<InterruptStatus, Error<E>>
pub fn interrupt_status(&mut self) -> Result<InterruptStatus, Error<E>>
Read current interrupt status
sourceimpl<I2C> Mma8x5x<I2C, Mma8451, Standby>
impl<I2C> Mma8x5x<I2C, Mma8451, Standby>
sourcepub fn new_mma8451(i2c: I2C, address: SlaveAddr) -> Self
pub fn new_mma8451(i2c: I2C, address: SlaveAddr) -> Self
Create new instance of the MMA8451 device.
sourceimpl<I2C> Mma8x5x<I2C, Mma8452, Standby>
impl<I2C> Mma8x5x<I2C, Mma8452, Standby>
sourcepub fn new_mma8452(i2c: I2C, address: SlaveAddr) -> Self
pub fn new_mma8452(i2c: I2C, address: SlaveAddr) -> Self
Create new instance of the MMA8452 device.
sourceimpl<I2C> Mma8x5x<I2C, Mma8453, Standby>
impl<I2C> Mma8x5x<I2C, Mma8453, Standby>
sourcepub fn new_mma8453(i2c: I2C, address: SlaveAddr) -> Self
pub fn new_mma8453(i2c: I2C, address: SlaveAddr) -> Self
Create new instance of the MMA8453 device.
Trait Implementations
Auto Trait Implementations
impl<I2C, IC, MODE> RefUnwindSafe for Mma8x5x<I2C, IC, MODE>where
I2C: RefUnwindSafe,
IC: RefUnwindSafe,
MODE: RefUnwindSafe,
impl<I2C, IC, MODE> Send for Mma8x5x<I2C, IC, MODE>where
I2C: Send,
IC: Send,
MODE: Send,
impl<I2C, IC, MODE> Sync for Mma8x5x<I2C, IC, MODE>where
I2C: Sync,
IC: Sync,
MODE: Sync,
impl<I2C, IC, MODE> Unpin for Mma8x5x<I2C, IC, MODE>where
I2C: Unpin,
IC: Unpin,
MODE: Unpin,
impl<I2C, IC, MODE> UnwindSafe for Mma8x5x<I2C, IC, MODE>where
I2C: UnwindSafe,
IC: UnwindSafe,
MODE: UnwindSafe,
Blanket Implementations
sourceimpl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more