28#if (HAL_USE_ICU == TRUE) || defined(__DOXYGEN__)
47#if !defined(PLATFORM_ICU_USE_ICU1) || defined(__DOXYGEN__)
48#define PLATFORM_ICU_USE_ICU1 FALSE
120#if defined(ICU_DRIVER_EXT_FIELDS)
121 ICU_DRIVER_EXT_FIELDS
140#define icu_lld_get_width(icup) 0
152#define icu_lld_get_period(icup) 0
164#define icu_lld_are_notifications_enabled(icup) false
170#if (PLATFORM_ICU_USE_ICU1 == TRUE) && !defined(__DOXYGEN__)
bool icu_lld_wait_capture(ICUDriver *icup)
Waits for a completed capture.
ICUDriver ICUD1
ICUD1 driver identifier.
void icu_lld_start_capture(ICUDriver *icup)
Starts the input capture.
icumode_t
ICU driver mode.
icustate_t
Driver state machine possible states.
uint32_t icufreq_t
ICU frequency type.
void(* icucallback_t)(ICUDriver *icup)
ICU notification callback type.
void icu_lld_stop(ICUDriver *icup)
Deactivates the ICU peripheral.
void icu_lld_start(ICUDriver *icup)
Configures and activates the ICU peripheral.
void icu_lld_init(void)
Low level ICU driver initialization.
void icu_lld_disable_notifications(ICUDriver *icup)
Disables notifications.
void icu_lld_stop_capture(ICUDriver *icup)
Stops the input capture.
uint32_t icucnt_t
ICU counter type.
void icu_lld_enable_notifications(ICUDriver *icup)
Enables notifications.
Driver configuration structure.
icucallback_t period_cb
Callback for cycle period measurement.
icufreq_t frequency
Timer clock in Hz.
icucallback_t overflow_cb
Callback for timer overflow.
icumode_t mode
Driver mode.
icucallback_t width_cb
Callback for pulse width measurement.
Structure representing an ICU driver.
const ICUConfig * config
Current configuration data.
icustate_t state
Driver state.