【翻译CMSIS_RTOS2 API v2】鸿蒙CMSIS-RTOS2接口之定时器管理

鸿蒙在CMSIS-RTOS2接口中封装了LiteOS-M的内核代码。因此当需要使用CMSIS-RTOS2接口时,只需要调用相应接口就行了。本篇文章将会记录官网API的使用方法以及使用案例,记录自己学习的想法和使用技巧会保持持续更新哟!!!

CMSIS-RTOS API v2

接口顺序将会按照小熊派官网视频讲解的顺序记录以便自己学习和使用。

软件定时器

外文名称:Timer Management
源接口地址:Timer Management
HarmonyOS_PPT:HarmonyOS内核开发-定时器管理.pdf

软件定时器可以控制函数的运行,非常便捷地控制函数的运行时长和定时服务。

结构体(数据类型)

osTimerAttr_t

所属函数:osTimerNew

数据类型属性名称描述默认值备注
const char *name定时器名称NULL
uint32_tattr_bits保留字段0U
void *cb_mem任务块指针NULL
uint32_tcb_size任务块指针大小0U

osTimerId_t

所属函数:[ osTimerStart | osTimerStop | osTimerDelete ]

所属函数返回值:osTimerNew

定时器ID,即定时器唯一标识符

osTimerFunc_t

所属函数:osTimerNew

定时器入口函数

函数可能会在当前作用域下,中断执行的任务

osTimerType_t

所属函数:osTimerNew

定时器类型

定时器类型描述
osTimerOnce定时器里面任务执行一次
osTimerPeriodic定时器里面任务循环执行

功能(函数)

osTimerNew:新建定时器

参数名称数据类型描述
funcosTimerFunc_t定时器入口函数
typeosTimerType_t定时器类型
argumentvoid *定时器入口函数的参数
attrconst osTimerAttr_t *定时器的属性
返回值osTimerId_t定时器ID

注意事项

  • 定时器只有在使用 osTimerStart 后,才能被调用
  • 可以在RTOS开始前进行调用

osTimerStart:启动定时器

参数名称数据类型描述
timer_id osTimerId_t定时器ID
ticksuint32_t指定定时器超时值
返回值osStatus_t操作结果
osStatus_t
参数名称描述
osOK操作成功
osErrorParameter定时器ID为NULL或无效
osErrorResource任务无效状态
osErrorISR任务不能被终止

osTimerStop:停止定时器

参数名称数据类型描述
timer_id osTimerId_t定时器ID
返回值osStatus_t操作结果
osStatus_t
参数名称描述
osOK操作成功
osErrorParameter定时器ID为NULL或无效
osErrorResource任务无效状态
osErrorISR任务不能被终止

osTimerDelete:删除定时器

参数名称数据类型描述
timer_id osTimerId_t定时器ID
返回值osStatus_t操作结果
osStatus_t
参数名称描述
osOK操作成功
osErrorParameter定时器ID为NULL或无效
osErrorResource任务无效状态
osErrorISR任务不能被终止

osTimerGetName:获取定时器名称

参数名称数据类型描述
timer_id osTimerId_t定时器ID
返回值String定时器名称,默认值为 " "

注意事项

  • 出错返回NULL

osTimerIsRunning:判断定时器是否运行

参数名称数据类型描述
timer_id osTimerId_t定时器ID
返回值Int0 未运行 1 运行中
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值