xt-sdk 文档
v1.0.3
xt-sdk 嵌入式 SDK API 参考
Toggle main menu visibility
载入中...
搜索中...
未找到
xt_hal_timer.h
浏览该文件的文档.
1
12
13
#ifndef __XT_HAL_TIMER_H__
14
#define __XT_HAL_TIMER_H__
15
16
/* ==================== [Includes] ========================================== */
17
18
#include "
xt_hal_internal.h
"
19
20
#ifdef __cplusplus
21
extern
"C"
{
22
#endif
23
30
31
/* ==================== [Defines] =========================================== */
32
33
#define XT_HAL_TIMER_INVALID_ID (0xFFFF)
34
35
#define XT_HAL_TIMER_ACTIVE_BITS_S (0)
// [0..0]
36
#define XT_HAL_TIMER_ACTIVE_BITS_W (1)
37
#define XT_HAL_TIMER_AUTO_RELOAD_BITS_S (1)
// [1..1]
38
#define XT_HAL_TIMER_AUTO_RELOAD_BITS_W (1)
39
#define XT_HAL_TIMER_DIR_BITS_S (2)
// [2..2]
40
#define XT_HAL_TIMER_DIR_BITS_W (2)
41
42
#define XT_HAL_TIMER_START (0x00 << XT_HAL_TIMER_ACTIVE_BITS_S)
43
#define XT_HAL_TIMER_STOP (0x01 << XT_HAL_TIMER_ACTIVE_BITS_S)
44
#define XT_HAL_TIMER_ONE_SHOT (0x00 << XT_HAL_TIMER_AUTO_RELOAD_BITS_S)
45
#define XT_HAL_TIMER_PERIODIC (0x01 << XT_HAL_TIMER_AUTO_RELOAD_BITS_S)
46
#define XT_HAL_TIMER_DIR_UP (0x00 << XT_HAL_TIMER_DIR_BITS_S)
47
#define XT_HAL_TIMER_DIR_DOWN (0x01 << XT_HAL_TIMER_DIR_BITS_S)
48
#define XT_HAL_TIMER_DEFAULT_MODE (XT_HAL_TIMER_PERIODIC | XT_HAL_TIMER_DIR_UP | XT_HAL_TIMER_START)
49
50
/* ==================== [Typedefs] ========================================== */
51
55
enum
xt_hal_timer_event_id
{
56
XT_HAL_TIMER_EVENT_TIMEOUT
= 0x00,
57
};
58
65
typedef
void (*
xt_hal_timer_cb_t
)(uint8_t timer_id, uint32_t event_id);
66
67
/* ==================== [Global Prototypes] ================================= */
68
85
xt_err_t
xt_hal_timer_setup
(uint8_t timer_id,
86
uint32_t mode,
87
uint32_t tick_freq_hz,
88
uint32_t tick_num,
89
xt_hal_timer_cb_t
cb);
90
97
xt_err_t
xt_hal_timer_close
(uint8_t timer_id);
98
105
xt_err_t
xt_hal_timer_start
(uint8_t timer_id);
106
113
xt_err_t
xt_hal_timer_stop
(uint8_t timer_id);
114
125
uint32_t
xt_hal_timer_get_clk_src_freq
(uint8_t timer_id);
126
135
uint32_t
xt_hal_timer_get_prescaler
(uint8_t timer_id);
136
143
uint32_t
xt_hal_timer_get_count
(uint8_t timer_id);
144
145
/* ==================== [Macros] ============================================ */
146
/* xt_hal_timer */
148
149
#ifdef __cplusplus
150
}
/* extern "C" */
151
#endif
152
153
#endif
/* __XT_HAL_TIMER_H__ */
xt_err_t
int32_t xt_err_t
错误码类型
定义
xt_error.h:38
xt_hal_timer_stop
xt_err_t xt_hal_timer_stop(uint8_t timer_id)
停止定时器
xt_hal_timer_close
xt_err_t xt_hal_timer_close(uint8_t timer_id)
关闭定时器
xt_hal_timer_start
xt_err_t xt_hal_timer_start(uint8_t timer_id)
启动定时器
xt_hal_timer_get_count
uint32_t xt_hal_timer_get_count(uint8_t timer_id)
获取定时器当前计数值
xt_hal_timer_event_id
xt_hal_timer_event_id
定时器事件 ID 枚举
定义
xt_hal_timer.h:55
xt_hal_timer_setup
xt_err_t xt_hal_timer_setup(uint8_t timer_id, uint32_t mode, uint32_t tick_freq_hz, uint32_t tick_num, xt_hal_timer_cb_t cb)
初始化定时器
xt_hal_timer_get_clk_src_freq
uint32_t xt_hal_timer_get_clk_src_freq(uint8_t timer_id)
获取定时器时钟源频率
xt_hal_timer_cb_t
void(* xt_hal_timer_cb_t)(uint8_t timer_id, uint32_t event_id)
定时器回调函数类型定义
定义
xt_hal_timer.h:65
xt_hal_timer_get_prescaler
uint32_t xt_hal_timer_get_prescaler(uint8_t timer_id)
获取定时器实际分频值
XT_HAL_TIMER_EVENT_TIMEOUT
@ XT_HAL_TIMER_EVENT_TIMEOUT
定义
xt_hal_timer.h:56
xt_hal_internal.h
XTINY HAL 内部公共头文件
platforms
components
xtiny
xt_hal
xt_hal_timer.h
生成于
, 为 xt-sdk 文档使用
1.17.0