CN / EN
文档反馈
感谢关注汇顶文档,期待您的宝贵建议!
感谢您的反馈,祝您愉快!
无匹配项 共计114个匹配页面

TIMER驱动API描述

TIMER驱动的API主要如下:

表 386 TIM驱动的APIs
API类别 API名称 描述

初始化

hal_timer_base_init()

初始化TIMER外设,配置计数初值等参数。

hal_timer_base_deinit()

反初始化TIMER外设。

hal_timer_base_msp_init()

初始化TIMER外设所使用的NVIC中断。

hal_timer_base_msp_deinit()

反初始化TIMER外设所使用的NVIC中断。

IO操作

hal_timer_base_start()

启动计数,轮询方式。

hal_timer_base_stop()

停止计数,轮询方式。

hal_timer_base_start_it()

启动计数,中断方式。

hal_timer_base_stop_it()

停止计数,中断方式。

控制

hal_timer_set_config()

配置计数器参数。

中断处理及回调函数

hal_timer_irq_handler()

中断处理函数。

hal_timer_period_elapsed_callback()

计数完成的中断回调函数。

状态及错误

hal_timer_get_state()

获取驱动运行状态。

下面章节将对各API进行详细描述。

hal_timer_base_init

表 387 hal_timer_base_init接口
函数原型

hal_status_t hal_timer_base_init(timer_handle_t *p_timer)

功能说明

根据timer_init_t中的指定参数初始化TIMER时间基单元,并初始化相关的句柄。

输入参数

p_timer:指向timer_handle_t结构体变量的指针,该结构体变量包含指定的TIMER模块的配置信息。

返回值

HAL状态。

备注

hal_timer_base_deinit

表 388 hal_timer_base_deinit接口
函数原型

hal_status_t hal_timer_base_deinit(timer_handle_t *p_timer)

功能说明

反初始化TIMER外设。

输入参数

p_timer:指向timer_handle_t结构体变量的指针,该结构体变量包含指定的TIMER模块的配置信息。

返回值

HAL状态。

备注

hal_timer_base_msp_init

表 389 hal_timer_base_msp_init接口
函数原型

void hal_timer_base_msp_init(timer_handle_t *p_timer)

功能说明

初始化TIMER所使用的NVIC中断配置。

输入参数

p_timer:指向timer_handle_t结构体变量的指针,该结构体变量包含指定的TIMER模块的配置信息。

返回值

备注

该函数为weak类型的空函数,开发者需重写该API完成NVIC中断的初始化。

hal_timer_base_msp_deinit

表 390 hal_timer_base_msp_deinit接口
函数原型

void hal_timer_base_msp_deinit(timer_handle_t *p_timer)

功能说明

反初始化TIMER的NVIC中断配置。

输入参数

p_timer:指向timer_handle_t结构体变量的指针,该结构体变量包含指定的TIMER模块的配置信息。

返回值

备注

该函数为weak类型的空函数,开发者需重写该API完成NVIC中断的反初始化。

hal_timer_base_start

表 391 hal_timer_base_start接口
函数原型

hal_status_t hal_timer_base_start(timer_handle_t *p_timer)

功能说明

使能TIMER外设,开始计数,轮询方式。

输入参数

p_timer:指向timer_handle_t结构体变量的指针,该结构体变量包含指定的TIMER模块的配置信息。

返回值

HAL状态。

备注

该API未使能TIMER中断,开发者需调用hal_timer_get_state()获取计数状态。

hal_timer_base_stop

表 392 hal_timer_base_stop接口
函数原型

hal_status_t hal_timer_base_stop(timer_handle_t *p_timer)

功能说明

禁用TIMER外设,停止轮询方式下的计数。

输入参数

p_timer:指向timer_handle_t结构体变量的指针,该结构体变量包含指定的TIMER模块的配置信息。

返回值

HAL状态。

备注

该API未禁用TIMER中断,可与hal_timer_base_start()配合使用。

hal_timer_base_start_it

表 393 hal_timer_base_start_it接口
函数原型

hal_status_t hal_timer_base_start_it(timer_handle_t *p_timer)

功能说明

使能TIMER外设,开始计数,中断方式。

输入参数

p_timer:指向timer_handle_t结构体变量的指针,该结构体变量包含指定的TIMER模块的配置信息。

返回值

HAL状态。

备注

该API会使能TIMER中断,计数完成时会调用回调函数hal_timer_period_elapsed_callback()

hal_timer_base_stop_it

表 394 hal_timer_base_stop_it接口
函数原型

hal_status_t hal_timer_base_stop_it(timer_handle_t *p_timer)

功能说明

禁用TIMER外设,停止中断方式下的计数。

输入参数

p_timer:指向timer_handle_t结构体变量的指针,该结构体变量包含指定的TIMER模块的配置信息。

返回值

HAL状态。

备注

该API禁止TIMER中断,可与hal_timer_base_start_it()配合使用。

hal_timer_set_config

表 395 hal_timer_set_config接口
函数原型

hal_status_t hal_timer_set_config(timer_handle_t *p_timer, timer_init_t *p_structure)

功能说明

配置TIMER计数器参数。

输入参数

p_timer:指向timer_handle_t结构体变量的指针,该结构体变量包含指定的TIMER模块的配置信息。

p_structure:指向timer_init_t结构体变量的指针,该结构体变量包含指定的TIMER计数器参数。

返回值

HAL状态。

备注

该API适合在初始化TIMER之后更改计数器配置。

hal_timer_irq_handler

表 396 hal_timer_irq_handler接口
函数原型

void hal_timer_irq_handler(timer_handle_t *p_timer)

功能说明

TIMER中断处理函数。

输入参数

p_timer:指向timer_handle_t结构体变量的指针,该结构体变量包含指定的TIMER模块的配置信息。

返回值

备注

hal_timer_period_elapsed_callback

表 397 hal_timer_period_elapsed_callback接口
函数原型

void hal_timer_period_elapsed_callback(timer_handle_t *p_timer)

功能说明

TIMER外设计数完成的中断回调函数。

输入参数

p_timer:指向timer_handle_t结构体变量的指针,该结构体变量包含指定的TIMER模块的配置信息。

返回值

备注

该函数为weak类型的空函数,当开发者需要使用该回调函数时,可重写该API。

hal_timer_get_state

表 398 hal_timer_get_state接口
函数原型

hal_timer_state_t hal_tim_get_state(timer_handle_t *p_timer)

功能说明

获取TIMER运行状态。

输入参数

p_timer:指向timer_handle_t结构体变量的指针,该结构体变量包含指定的TIMER模块的配置信息。

返回值

TIM运行状态,该参数的取值可以是下面中的任意一个值:

  • HAL_TIMER_STATE_RESET
  • HAL_TIMER_STATE_READY
  • HAL_TIMER_STATE_BUSY
  • HAL_TIMER_STATE_ERROR
备注

扫描关注

打开微信,使用“扫一扫”即可关注。