pub struct SignificantMotionConfig {
pub block_size: u16,
pub peak_to_peak_min: u16,
pub mean_crossing_rate_min: u8,
pub peak_to_peak_max: u16,
pub mean_crossing_rate_max: u8,
pub report_mode: EventReportMode,
pub interrupt_hold: u8,
}Expand description
Configuration for the BMI323 significant-motion feature.
Fields§
§block_size: u16Segment size used by the significant-motion detector.
Unit: seconds
Scaling: raw / 50
Range: 0 ..= 65535, corresponding to approximately
0.0s ..= 1310.7s
peak_to_peak_min: u16Minimum peak-to-peak acceleration magnitude.
Unit: g
Scaling: raw / 512
Range: 0 ..= 1023, corresponding to approximately
0.0g ..= 1.998g
mean_crossing_rate_min: u8Minimum mean-crossing rate in acceleration magnitude.
Unit: crossings per second
Range: 0 ..= 63
peak_to_peak_max: u16Maximum peak-to-peak acceleration magnitude.
Unit: g
Scaling: raw / 512
Range: 0 ..= 1023, corresponding to approximately
0.0g ..= 1.998g
mean_crossing_rate_max: u8Maximum mean-crossing rate in acceleration magnitude.
Unit: crossings per second
Range: 0 ..= 63
report_mode: EventReportModeEvent reporting behavior shared across feature-engine interrupts.
interrupt_hold: u8Shared feature-engine interrupt hold-time exponent.
Implementations§
Source§impl SignificantMotionConfig
impl SignificantMotionConfig
Sourcepub fn block_size_from_seconds(seconds: f32) -> u16
pub fn block_size_from_seconds(seconds: f32) -> u16
Convert a segment size in seconds to the BMI323 field encoding.
Sourcepub fn block_size_to_seconds(raw: u16) -> f32
pub fn block_size_to_seconds(raw: u16) -> f32
Convert a raw segment-size field value back to seconds.
Sourcepub fn peak_to_peak_from_g(g: f32) -> u16
pub fn peak_to_peak_from_g(g: f32) -> u16
Convert a peak-to-peak acceleration magnitude in g to the BMI323
field encoding.
Sourcepub fn peak_to_peak_to_g(raw: u16) -> f32
pub fn peak_to_peak_to_g(raw: u16) -> f32
Convert a raw peak-to-peak field value back to g.
Sourcepub fn interrupt_hold_from_millis(millis: f32) -> u8
pub fn interrupt_hold_from_millis(millis: f32) -> u8
Convert an interrupt hold time in milliseconds to the BMI323 field encoding.
Sourcepub fn interrupt_hold_to_millis(raw: u8) -> f32
pub fn interrupt_hold_to_millis(raw: u8) -> f32
Convert a raw interrupt-hold field value back to milliseconds.
Trait Implementations§
Source§impl Clone for SignificantMotionConfig
impl Clone for SignificantMotionConfig
Source§fn clone(&self) -> SignificantMotionConfig
fn clone(&self) -> SignificantMotionConfig
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more