Struct lsm303::accelerometer::Accelerometer
[−]
[src]
pub struct Accelerometer<Dev> where
Dev: I2CDevice, { /* fields omitted */ }
Interface to an LSM303 digital accelerometer.
Methods
impl Accelerometer<LinuxI2CDevice>
[src]
fn new<Path>(path: Path) -> Result<Accelerometer<LinuxI2CDevice>> where
Path: AsRef<Path>,
[src]
Path: AsRef<Path>,
Initialize the accelerometer for a Linux I2C device.
let sensor = Accelerometer::new("/dev/i2c-1");
impl<Dev> Accelerometer<Dev> where
Dev: I2CDevice,
Error: From<Dev::Error>,
Dev::Error: Send + 'static,
[src]
Dev: I2CDevice,
Error: From<Dev::Error>,
Dev::Error: Send + 'static,
fn from_i2c_device(device: Dev) -> Result<Accelerometer<Dev>>
[src]
Initialize the accelerometer, given an open I2C device.
The opening of the device is platform specific,
but initialization of the sensor is not.
Prefer to use Accelerometer::new
, unless you are using an
implementation of I2CDevice
that is not covered by this crate.
let device = LinuxI2CDevice::new("/dev/i2c-1", 0x32 >> 1)?; let sensor = Accelerometer::from_i2c_device(device)?;
fn read_acceleration(&mut self) -> Result<AccelerationVector>
[src]
Read the accelerometer, returning a vector of accelerations.
let mut sensor = Accelerometer::new("/dev/i2c-1")?; let accel = sensor.read_acceleration()?; println!("Acceleration: ({}, {}, {})", accel.x, accel.y, accel.z);
fn set_scale(&mut self, scale: Scale) -> Result<()>
[src]
Set the scale of the acceleration measurement.
let mut sensor = Accelerometer::new("/dev/i2c-1")?; sensor.set_scale(Scale::Scale4G)?;
fn set_rate(&mut self, rate: Rate) -> Result<()>
[src]
Set the rate at which acceleration is measured.
let mut sensor = Accelerometer::new("/dev/i2c-1")?; sensor.set_rate(Rate::Rate100Hz)?;
Trait Implementations
impl<Dev> Deref for Accelerometer<Dev> where
Dev: I2CDevice,
[src]
Dev: I2CDevice,
Access the underlying I2CDevice
.
Most of the methods require a mutable reference; DerefMut
is implemented as well.
type Target = Dev
The resulting type after dereferencing.
fn deref(&self) -> &Dev
[src]
Dereferences the value.
impl<Dev> DerefMut for Accelerometer<Dev> where
Dev: I2CDevice,
[src]
Dev: I2CDevice,
Access the underlying I2CDevice
.
Refer to the LSM303 datasheet if you plan on accessing the device directly.