实验四

点击此处下载实验四代码(提取码:yay2)

核心作用

掌握 LiteOS-M 软件定时器的创建、启动、停止、删除等接口使用,理解软件定时器与系统 Tick 的依赖关系,验证周期性和一次性两种定时器模式的工作机制,实现运行时动态控制定时器的嵌入式开发能力。

实验原理

LiteOS-M 软件定时器基于系统 Tick 实现,由内核统一管理,不依赖硬件定时器,通过 Tick 中断驱动定时器队列,支持周期性(LOS_SWTMR_MODE_PERIOD)和一次性(LOS_SWTMR_MODE_ONCE)两种模式。

定时器生命周期为:创建(LOS_SwtmrCreate)分配 ID 并指定回调函数、间隔和模式→启动(LOS_SwtmrStart)加入定时队列→Tick 中断检测到期并执行回调→停止 / 删除(LOS_SwtmrStop/LOS_SwtmrDelete)回收资源。

实验通过 Shell 自定义命令(exp4)动态控制定时器,在回调函数中输出 Tick 值和触发次数,验证定时器触发与 Tick 的同步性,以及动态修改周期的实现逻辑(删除重建)。