pub struct Distance<I2C> { /* private fields */ }Expand description
Driver for the Modulino Distance module.
Implementations§
Source§impl<I2C, E> Distance<I2C>where
I2C: I2c<Error = E>,
impl<I2C, E> Distance<I2C>where
I2C: I2c<Error = E>,
Sourcepub fn new_with_address(i2c: I2C, address: u8) -> Self
pub fn new_with_address(i2c: I2C, address: u8) -> Self
Create a new Distance instance with a custom address.
Sourcepub fn init<D: DelayNs>(&mut self, delay: &mut D) -> Result<(), E>
pub fn init<D: DelayNs>(&mut self, delay: &mut D) -> Result<(), E>
Initialize the sensor. This performs the firmware loading and tuning required by the VL53L4CD.
Sourcepub fn set_timing_budget(&mut self, budget_ms: u16) -> Result<(), E>
pub fn set_timing_budget(&mut self, budget_ms: u16) -> Result<(), E>
Set the timing budget in milliseconds.
Sourcepub fn set_inter_measurement(&mut self, period_ms: u32) -> Result<(), E>
pub fn set_inter_measurement(&mut self, period_ms: u32) -> Result<(), E>
Set the inter-measurement period in milliseconds.
Sourcepub fn start_ranging(&mut self) -> Result<(), E>
pub fn start_ranging(&mut self) -> Result<(), E>
Start continuous ranging.
Sourcepub fn stop_ranging(&mut self) -> Result<(), E>
pub fn stop_ranging(&mut self) -> Result<(), E>
Stop ranging.
Sourcepub fn data_ready(&mut self) -> Result<bool, E>
pub fn data_ready(&mut self) -> Result<bool, E>
Check if new data is ready.
Sourcepub fn clear_interrupt(&mut self) -> Result<(), E>
pub fn clear_interrupt(&mut self) -> Result<(), E>
Clear the interrupt flag.
Sourcepub fn read_distance(&mut self) -> Result<Option<u16>, E>
pub fn read_distance(&mut self) -> Result<Option<u16>, E>
Read the distance measurement.
Sourcepub fn read_range_status(&mut self) -> Result<u8, E>
pub fn read_range_status(&mut self) -> Result<u8, E>
Publicly expose range status for debugging.
Auto Trait Implementations§
impl<I2C> Freeze for Distance<I2C>where
I2C: Freeze,
impl<I2C> RefUnwindSafe for Distance<I2C>where
I2C: RefUnwindSafe,
impl<I2C> Send for Distance<I2C>where
I2C: Send,
impl<I2C> Sync for Distance<I2C>where
I2C: Sync,
impl<I2C> Unpin for Distance<I2C>where
I2C: Unpin,
impl<I2C> UnwindSafe for Distance<I2C>where
I2C: UnwindSafe,
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more