28 #if (HAL_USE_ICU == TRUE) || defined(__DOXYGEN__)    86 #define icuStartCaptureI(icup) do {                                         \    87   icu_lld_start_capture(icup);                                              \    88   (icup)->state = ICU_WAITING;                                              \    98 #define icuStopCaptureI(icup) do {                                          \    99   icu_lld_stop_capture(icup);                                               \   100   (icup)->state = ICU_READY;                                                \   113 #define icuEnableNotificationsI(icup) icu_lld_enable_notifications(icup)   125 #define icuDisableNotificationsI(icup) icu_lld_disable_notifications(icup)   137 #define icuAreNotificationsEnabledX(icup)                                   \   138   icu_lld_are_notifications_enabled(icup)   152 #define icuGetWidthX(icup) icu_lld_get_width(icup)   166 #define icuGetPeriodX(icup) icu_lld_get_period(icup)   180 #define _icu_isr_invoke_width_cb(icup) do {                                 \   181   if (((icup)->state == ICU_ACTIVE) &&                                      \   182       ((icup)->config->width_cb != NULL))                                   \   183     (icup)->config->width_cb(icup);                                         \   194 #define _icu_isr_invoke_period_cb(icup) do {                                \   195   if (((icup)->state == ICU_ACTIVE) &&                                      \   196       ((icup)->config->period_cb != NULL))                                  \   197     (icup)->config->period_cb(icup);                                        \   198   (icup)->state = ICU_ACTIVE;                                               \   210 #define _icu_isr_invoke_overflow_cb(icup) do {                              \   211   (icup)->config->overflow_cb(icup);                                        \   212   (icup)->state = ICU_WAITING;                                              \ 
void icuObjectInit(ICUDriver *icup)
Initializes the standard part of a ICUDriver structure. 
 
PLATFORM ICU subsystem low level driver header. 
 
void icuInit(void)
ICU Driver initialization. 
 
Driver configuration structure. 
 
Structure representing an ICU driver. 
 
icustate_t
Driver state machine possible states. 
 
void icuStopCapture(ICUDriver *icup)
Stops the input capture. 
 
void icuStartCapture(ICUDriver *icup)
Starts the input capture. 
 
bool icuWaitCapture(ICUDriver *icup)
Waits for a completed capture. 
 
const ICUConfig * config
Current configuration data. 
 
void icuDisableNotifications(ICUDriver *icup)
Disables notifications. 
 
void icuStart(ICUDriver *icup, const ICUConfig *config)
Configures and activates the ICU peripheral. 
 
void icuEnableNotifications(ICUDriver *icup)
Enables notifications. 
 
void icuStop(ICUDriver *icup)
Deactivates the ICU peripheral. 
 
void(* icucallback_t)(ICUDriver *icup)
ICU notification callback type.