Control1Reg

Struct Control1Reg 

Source
pub struct Control1Reg(pub u8);

Tuple Fields§

§0: u8

Implementations§

Source§

impl Control1Reg

Source

pub fn startup_boost(&self) -> bool

This bit applies higher loop gain during overdrive to enhance actuator transient response.

Source

pub fn ac_couple(&self) -> bool

This bit applies a 0.9-V common mode voltage to the IN/TRIG pin when an AC- coupling capacitor is used. This bit is only useful for analog input mode. This bit should not be asserted for PWM mode or external trigger mode. 0: Common-mode drive disabled for DC-coupling or digital inputs modes 1: Common-mode drive enabled for AC coupling

Source

pub fn drive_time(&self) -> u8

LRA Mode: Sets initial guess for LRA drive-time in LRA mode. Drive time is automatically adjusted for optimum drive in real time; however, this register should be optimized for the approximate LRA frequency. If the bit is set too low, it can affect the actuator startup time. If it is set too high, it can cause instability. Optimum drive time (ms) ≈ 0.5 × LRA Period Drive time (ms) = DRIVE_TIME[4:0] × 0.1 ms + 0.5 ms ERM Mode: Sets the sample rate for the back-EMF detection. Lower drive times cause higher peak-to-average ratios in the output signal, requiring more supply headroom. Higher drive times cause the feedback to react at a slower rate. Drive Time (ms) = DRIVE_TIME[4:0] × 0.2 ms + 1 ms

Source

pub fn set_startup_boost(&mut self, value: bool)

This bit applies higher loop gain during overdrive to enhance actuator transient response.

Source

pub fn set_ac_couple(&mut self, value: bool)

This bit applies a 0.9-V common mode voltage to the IN/TRIG pin when an AC- coupling capacitor is used. This bit is only useful for analog input mode. This bit should not be asserted for PWM mode or external trigger mode. 0: Common-mode drive disabled for DC-coupling or digital inputs modes 1: Common-mode drive enabled for AC coupling

Source

pub fn set_drive_time(&mut self, value: u8)

LRA Mode: Sets initial guess for LRA drive-time in LRA mode. Drive time is automatically adjusted for optimum drive in real time; however, this register should be optimized for the approximate LRA frequency. If the bit is set too low, it can affect the actuator startup time. If it is set too high, it can cause instability. Optimum drive time (ms) ≈ 0.5 × LRA Period Drive time (ms) = DRIVE_TIME[4:0] × 0.1 ms + 0.5 ms ERM Mode: Sets the sample rate for the back-EMF detection. Lower drive times cause higher peak-to-average ratios in the output signal, requiring more supply headroom. Higher drive times cause the feedback to react at a slower rate. Drive Time (ms) = DRIVE_TIME[4:0] × 0.2 ms + 1 ms

Trait Implementations§

Source§

impl<T> BitRange<T> for Control1Reg
where u8: BitRange<T>,

Source§

fn bit_range(&self, msb: usize, lsb: usize) -> T

Get a range of bits.
Source§

impl<T> BitRangeMut<T> for Control1Reg
where u8: BitRangeMut<T>,

Source§

fn set_bit_range(&mut self, msb: usize, lsb: usize, value: T)

Set a range of bits.
Source§

impl Debug for Control1Reg

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Bit for T
where T: BitRange<u8>,

Source§

fn bit(&self, bit: usize) -> bool

Get a single bit.
Source§

impl<T> BitMut for T
where T: BitRangeMut<u8>,

Source§

fn set_bit(&mut self, bit: usize, value: bool)

Set a single bit.
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.