Timer

简要说明

Timer硬件定时器是由时钟驱动的计数器,可用来实现计时或定时产生中断的功能。计数器可以是递增或递减,每个时钟让计数器增1或减1。定时器支持自由运行和重载(reload)模式。其区别在于重载模式当计数器计数到指定值时会重新加载一个预设的值到计数器中,并可触发中断。

接口描述

csi_timer_initialize

timer_handle_t csi_timer_initialize(int32_t idx, timer_event_cb_t cb_event)
  • 功能描述:

    • 通过索引号初始化对应的Timer实例,返回timer实例的句柄。
  • 参数:

    • idx: 控制器号。

    • cb_event: 中断回调函数。

  • 返回值:

    • 成功返回实例句柄,失败返回NULL。

csi_timer_uninitialize

int32_t csi_timer_uninitialize(timer_handle_t handle)
  • 功能描述:

    • timer实例反初始化,该接口会停止timer实例正在进行的工作(如果有),并且释放相关的软硬件资源。
  • 参数:

    • handle: 实例句柄。实例句柄。
  • 返回值:

    • 错误码。

csi_timer_power_control

int32_t csi_timer_power_control(timer_handle_t handle, csi_power_stat_e state)
  • 功能描述:

    • 配置设备实例的功耗模式。
  • 参数:

    • handle: 实例句柄。

    • state: 设备实例的功耗模式,参看 csi_power_stat_e的定义。

  • 返回值:

    • 错误码。

csi_timer_config

int32_t csi_timer_config(timer_handle_t handle, timer_mode_e mode)
  • 功能描述:

    • 配置Timer实例的工作模式。
  • 参数:

    • handle: 实例句柄。

    • mode: Timer的工作模式,参考timer_mode_e的定义。

  • 返回值:

    • 错误码。

timer_mode_e:

名字 定义 备注
TIMER_MODE_FREE_RUNNING timer自由运行
TIMER_MODE_RELOAD timer重复定时运行

csi_timer_set_timeout

int32_t csi_timer_set_timeout(timer_handle_t handle, uint32_t timeout)
  • 功能描述:

    • Timer超时设置。
  • 参数:

    • handle: 实例句柄。

    • timeout: Timer超时时间,单位微秒(us)。

  • 返回值:

    • 错误码。

csi_timer_start

int32_t csi_timer_start(timer_handle_t handle)
  • 功能描述:

    • Timer计时启动。
  • 参数:

    • handle: 实例句柄。
  • 返回值:

    • 错误码。

csi_timer_stop

int32_t csi_timer_stop(timer_handle_t handle)
  • 功能描述:

    • Timer计时停止。
  • 参数:

    • handle: 实例句柄。
  • 返回值:

    • 错误码。

csi_timer_suspend

int32_t csi_timer_suspend(timer_handle_t handle)
  • 功能描述:

    • Timer计时暂停。
  • 参数:

    • handle: 实例句柄。
  • 返回值:

    • 错误码。

csi_timer_resume

int32_t csi_timer_resume(timer_handle_t handle)
  • 功能描述:

    • Timer计时恢复。
  • 参数:

    • handle: 实例句柄。
  • 返回值:

    • 错误码。

csi_timer_get_current_value

int32_t csi_timer_get_current_value(timer_handle_t handle, uint32_t *value)
  • 功能描述:

    • 获取Timer当前计时值。
  • 参数:

    • handle: 实例句柄。

    • value: 用来储存Timer当前计时值。

  • 返回值:

    • 错误码。

csi_timer_get_status

timer_status_t csi_timer_get_status(timer_handle_t handle)
  • 功能描述:

    • 获取Timer的状态。
  • 参数:

    • handle: 实例句柄。
  • 返回值:

    • Timer状态。

csi_timer_get_load_value

int32_t csi_timer_get_load_value(timer_handle_t handle, uint32_t *value)
  • 功能描述:

    • 获取Timer的Load寄存器值。
  • 参数:

    • handle: 实例句柄。

    • value: 获取出来的load寄存器值返回在value上。

  • 返回值:

    • 错误码。

results matching ""

    No results matching ""