Skip to main content

rsiot/components/cmp_esp_speed/
config.rs

1use std::time::Duration;
2
3use esp_idf_svc::hal::gpio::AnyIOPin;
4
5use crate::message::MsgDataBound;
6
7/// Конфигурация компонента измерения скорости
8pub struct Config<TMsg>
9where
10    TMsg: MsgDataBound,
11{
12    /// Пин, к которому подключен датчик скорости
13    pub pin_speed: AnyIOPin<'static>,
14
15    /// Опциональный пин, к которому подключен индикатор состояния
16    pub pin_led: Option<AnyIOPin<'static>>,
17
18    /// Время между измерениями скорости
19    pub period: Duration,
20
21    /// Частота в герцах
22    pub fn_output: fn(f64) -> TMsg,
23}