use crate::{
interface::{ReadData, WriteData},
AccelBandwidth, AccelMode, AccelRange, Bmx055, Error,
};
impl<DI, CommE, PinE, MODE> Bmx055<DI, MODE>
where
DI: ReadData<Error = Error<CommE, PinE>> + WriteData<Error = Error<CommE, PinE>>,
{
pub fn set_accel_bw(&mut self, bw: AccelBandwidth) -> Result<(), Error<CommE, PinE>> {
let reg = self.pmu_bw_a.with_bw(bw);
self.iface.write_accel_register(reg)?;
self.pmu_bw_a = reg;
Ok(())
}
pub fn get_accel_mode(&mut self) -> AccelMode {
AccelMode::Normal
}
pub fn set_accel_range(&mut self, range: AccelRange) -> Result<(), Error<CommE, PinE>> {
let reg = self.pmu_range_a.with_range(range);
self.iface.write_accel_register(reg)?;
self.pmu_range_a = reg;
Ok(())
}
pub fn get_accel_range(&self) -> AccelRange {
self.pmu_range_a.range()
}
}