XFusion API v1.3.0
载入中...
搜索中...
未找到
timer

创建和控制定时器和定时器回调函数。 更多...

timer 的协作图:

结构体

struct  _xf_osal_timer_attr_t
 定时器的属性结构。 更多...
 

类型定义

typedef enum _xf_osal_timer_type_t xf_osal_timer_type_t
 定时器类型。
 
typedef void * xf_osal_timer_t
 定时器句柄。
 
typedef struct _xf_osal_timer_attr_t xf_osal_timer_attr_t
 定时器的属性结构。
 
typedef void(* xf_osal_timer_func_t) (void *argument)
 定时器回调函数。
 

枚举

enum  _xf_osal_timer_type_t { XF_OSAL_TIMER_ONCE = 0 , XF_OSAL_TIMER_PERIODIC = 1 }
 定时器类型。 更多...
 

函数

xf_osal_timer_t xf_osal_timer_create (xf_osal_timer_func_t func, xf_osal_timer_type_t type, void *argument, xf_osal_timer_attr_t *attr)
 创建并初始化定时器。
 
const char * xf_osal_timer_get_name (xf_osal_timer_t timer)
 获取定时器的名称。
 
xf_err_t xf_osal_timer_start (xf_osal_timer_t timer, uint32_t ticks)
 启动或重新启动定时器。
 
xf_err_t xf_osal_timer_stop (xf_osal_timer_t timer)
 停止定时器。
 
uint32_t xf_osal_timer_is_running (xf_osal_timer_t timer)
 检查定时器是否正在运行。
 
xf_err_t xf_osal_timer_delete (xf_osal_timer_t timer)
 删除定时器。
 

详细描述

创建和控制定时器和定时器回调函数。

类型定义说明

◆ xf_osal_timer_type_t

定时器类型。

◆ xf_osal_timer_t

typedef void* xf_osal_timer_t

定时器句柄。

在文件 xf_osal_timer.h49 行定义.

◆ xf_osal_timer_attr_t

定时器的属性结构。

◆ xf_osal_timer_func_t

typedef void(* xf_osal_timer_func_t) (void *argument)

定时器回调函数。

在文件 xf_osal_timer.h64 行定义.

枚举类型说明

◆ _xf_osal_timer_type_t

定时器类型。

枚举值
XF_OSAL_TIMER_ONCE 

单次定时器

XF_OSAL_TIMER_PERIODIC 

重复定时器

在文件 xf_osal_timer.h41 行定义.

函数说明

◆ xf_osal_timer_create()

xf_osal_timer_t xf_osal_timer_create ( xf_osal_timer_func_t  func,
xf_osal_timer_type_t  type,
void *  argument,
xf_osal_timer_attr_t attr 
)

创建并初始化定时器。

注解
禁止 在中断服务函数中调用。
参数
func定时器回调函数。
type定时器类型,单次或者周期定时器。见 xf_osal_timer_type_t.
argument定时器回调函数的参数。见 xf_osal_timer_func_t.
attr定时器属性。填入 NULL 时使用默认属性。
返回
xf_osal_timer_t
  • NULL 创建失败
  • (OTHER) 定时器句柄
示例
examples/osal/timer/main/xf_main.c.

◆ xf_osal_timer_get_name()

const char * xf_osal_timer_get_name ( xf_osal_timer_t  timer)

获取定时器的名称。

注解
可以 在中断服务函数中调用。
参数
timer定时器句柄。
返回
const char* 定时器名称字符串(以 '\0' 结尾)。
示例
examples/osal/timer/main/xf_main.c.

◆ xf_osal_timer_start()

xf_err_t xf_osal_timer_start ( xf_osal_timer_t  timer,
uint32_t  ticks 
)

启动或重新启动定时器。

注解
禁止 在中断服务函数中调用。
参数
timer定时器句柄。
ticks定时的时间刻度。
返回
xf_err_t
  • XF_OK 成功
  • XF_FAIL 通用错误
  • XF_ERR_RESOURCE 定时器处于无效状态
  • XF_ERR_ISR 禁止在中断服务函数中调用
  • XF_ERR_INVALID_ARG 无效参数
示例
examples/osal/timer/main/xf_main.c.

◆ xf_osal_timer_stop()

xf_err_t xf_osal_timer_stop ( xf_osal_timer_t  timer)

停止定时器。

注解
禁止 在中断服务函数中调用。
参数
timer定时器句柄。
返回
xf_err_t
  • XF_OK 成功
  • XF_FAIL 通用错误
  • XF_ERR_RESOURCE 定时器没有运行
  • XF_ERR_ISR 禁止在中断服务函数中调用
  • XF_ERR_INVALID_ARG 无效参数
示例
examples/osal/timer/main/xf_main.c.

◆ xf_osal_timer_is_running()

uint32_t xf_osal_timer_is_running ( xf_osal_timer_t  timer)

检查定时器是否正在运行。

注解
禁止 在中断服务函数中调用。
参数
timer定时器句柄。
返回
uint32_t
  • 0 未运行或发生错误
  • 1 正在运行
示例
examples/osal/timer/main/xf_main.c.

◆ xf_osal_timer_delete()

xf_err_t xf_osal_timer_delete ( xf_osal_timer_t  timer)

删除定时器。

注解
禁止 在中断服务函数中调用。
参数
timer定时器句柄。
返回
xf_err_t
  • XF_OK 成功
  • XF_FAIL 通用错误
  • XF_ERR_RESOURCE 定时器处于无效状态
  • XF_ERR_ISR 禁止在中断服务函数中调用
  • XF_ERR_INVALID_ARG 无效参数
示例
examples/osal/timer/main/xf_main.c.