UCOSIII软件定时器

本文深入探讨了UCOSIII操作系统中的软件定时器功能,详细解析了其工作原理、配置方法以及在单片机应用中的重要作用。通过实例展示了如何使用函数创建和管理软件定时器,为嵌入式系统设计提供了关键技术支持。
摘要由CSDN通过智能技术生成
在学习单片机的时候会使用定时器来做很多定时任务,这个定时器是单片机自带的,也就是硬件定时器,在UCOSIII中提供了软件定时器

定时器的工作模式
定时器其实就是一个递减技术器,当计数器递减到0的时候就会触发一个动作,这个动作就是回调函数,当定时器完成技术时就会自动调用这个回调函数。因此我们可以使用这个回调函数来完成一些设计。比如,定时10秒后打开某个外设等等,在毁掉函数中应该避免任何可以阻塞或者删除定时任务的函数。如果要是用定时器的话需要江红OS_CFG_TMR_DEL_EN定义为1.定时器的分辨率有我们定义的的系统节拍率OS_CFG_TICK_RATE_HZ决定,比如我们定义为200,系统时钟周期就是5ms,定时器的最小分辨率很定就是5ms。但是定时器的实际分辨率是通过宏OS_CFG_TMR_TASK_RATE_HZ定义的,这个值绝对不能大于OS_CFG_TICK_RATE_HZ。比如我们定义OS_CFG_TMR_TASK_RATE_HZ为100,则定时器的时间分辨率为10ms。有关UCOSIII定时器函数都在os_tmr.c文件中。

创建一个定时器
如果我们要使用定时器,肯定需要创建一个定时器,使用OSTmrCreate()函数来创建一个定时器,这个函数也用来确定定时器的运行模式
p_tmr : 指向定时器的指针,宏 OS_TMR 是一个结构体。
p_name: 定时器名称 。
dly: 初始化定时器的延迟值 。
period: 重复周期。
opt: 定时器运行选项 ,这里有两个模式可以选择。
     OS_OPT_TMR_ONE_SHOT 单次定时器
     OS_OPT_TMR_PERIODIC 周期定时器
p_callback: 指向回调函数的名字。
p_callback_arg: 回调函数的参。
p_err: 调用此函数以后返回的错误码。

单次定时器
使用OST没人Create()函数创建定时器吧参数opt设置为OS_OPT_TMR_
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值