Go to the documentation of this file.
51 #ifndef _APP_DUAL_TIM_H_
52 #define _APP_DUAL_TIM_H_
58 #if (APP_DRIVER_CHIP_TYPE == APP_DRIVER_GR5332X)
66 #ifdef HAL_DUAL_TIMER_MODULE_ENABLED
89 #if (APP_DRIVER_CHIP_TYPE == APP_DRIVER_GR5332X)
90 APP_DUAL_TIM_EVT_ACT_START,
91 APP_DUAL_TIM_EVT_IOA_ACT_C1,
92 APP_DUAL_TIM_EVT_IOA_ACT_C2,
93 APP_DUAL_TIM_EVT_ACT_PERIOD,
94 APP_DUAL_TIM_EVT_ACT_STOP,
95 APP_DUAL_TIM_EVT_IOB_ACT_C1,
96 APP_DUAL_TIM_EVT_IOB_ACT_C2,
97 APP_DUAL_TIM_EVT_IOC_ACT_C1,
98 APP_DUAL_TIM_EVT_IOC_ACT_C2
109 #ifdef APP_DRIVER_WAKEUP_CALL_FUN
128 #if (APP_DRIVER_CHIP_TYPE == APP_DRIVER_GR5332X)
138 } app_dual_tim_pin_t;
145 app_dual_tim_pin_t pin_cfg;
146 dual_timer_io_ctrl_cfg_t io_crtl_cfg;
147 } app_dual_tim_io_crtl_params_t;
158 #if (APP_DRIVER_CHIP_TYPE == APP_DRIVER_GR5332X)
159 app_dual_tim_pin_t cha_pin_cfg;
160 app_dual_tim_pin_t chb_pin_cfg;
161 app_dual_tim_pin_t chc_pin_cfg;
163 volatile bool is_cha_enable;
164 volatile bool is_chb_enable;
165 volatile bool is_chc_enable;
257 #if (APP_DRIVER_CHIP_TYPE == APP_DRIVER_GR5332X)
271 uint16_t app_dual_tim_set_onetime_reload(
app_dual_tim_id_t id, uint32_t reload_value);
286 uint16_t app_dual_tim_set_period_count(
app_dual_tim_id_t id, uint32_t count_value);
300 uint16_t app_dual_tim_io_crtl_config(
app_dual_tim_id_t id, app_dual_tim_io_crtl_params_t *io_crtl_params);
@ APP_DUAL_TIM_ID_0
DUAL TIMER module 0.
DUAL_TIM parameters structure definition.
@ APP_DUAL_TIM_EVT_ERROR
Error reported by DUAL TIMER peripheral.
uint32_t app_dual_tim_get_counter_value(app_dual_tim_id_t id)
Return the DUAL TIM counter.
uint16_t app_dual_tim_set_params(app_dual_tim_params_t *p_params, app_dual_tim_id_t id)
Set the APP DUAL TIM according to the specified parameters.
dual_timer_init_t init
DUAL_TIM Base required parameters.
dual_timer_handle_t * app_dual_tim_get_handle(app_dual_tim_id_t id)
Return the DUAL TIM handle.
app_dual_tim_id_t id
specified DUAL TIMER module ID.
void(* app_dual_tim_evt_handler_t)(app_dual_tim_evt_t *p_evt)
APP_DUAL_TIM event callback definition.
app_io_type_t
GPIO type Enumerations definition.
uint16_t app_dual_tim_set_background_reload(app_dual_tim_id_t id, uint32_t reload_value)
Set the APP DUAL TIM background reload value The background reload value contains the value from whic...
@ APP_DUAL_TIM_ID_1
DUAL TIMER module 1.
DUAL_TIMER handle Structure definition.
Header file containing functions prototypes of GPIO app library.
This file contains all the functions prototypes for the HAL module driver.
@ APP_DUAL_TIM_EVT_DONE
Interrupt done by DUAL TIMER peripheral.
DUAL TIMER init Structure definition.
DUAL_TIM device structure definition.
app_dual_tim_state_t dual_tim_state
DUAL_TIM state type Enumerations definition.
dual_timer_handle_t handle
DUAL_TIM handle definition.
uint16_t app_dual_tim_stop(app_dual_tim_id_t id)
Stops the DUAL TIM counter in interrupt mode.
uint16_t app_dual_tim_start(app_dual_tim_id_t id)
Starts the DUAL TIM counter in interrupt mode.
app_dual_tim_evt_handler_t evt_handler
APP_DUAL_TIM event callback definition.
uint16_t app_dual_tim_deinit(app_dual_tim_id_t id)
De-initialize the APP DUAL TIM DRIVER peripheral.
@ APP_DUAL_TIM_ID_MAX
Only for check parameter, not used as input parameters.
app_dual_tim_state_t
DUAL_TIM state type Enumerations definition.
Header file of app driver error code.
Header file of app driver config code.
uint16_t app_dual_tim_set_reload_value_bg_reload_value(app_dual_tim_id_t id, uint32_t reload_value, uint32_t bg_reload_value)
Set the APP DUAL TIM background reload value and current reload value The background reload value con...
dual_tim_env_t dual_tim_env
DUAL_TIM device structure definition.
uint16_t app_dual_tim_init(app_dual_tim_params_t *p_params, app_dual_tim_evt_handler_t evt_handler)
Initialize the APP DUAL TIM DRIVER according to the specified parameters in the app_dual_tim_params_t...
app_dual_tim_id_t
APP_DUAL_TIM module Enumerations definition.
app_dual_tim_evt_t
DUAL_TIM event Enumerations definition.