timer#
本章介绍LuatOS的timer库使用方式
简介#
timer库使用的是mcu的硬件定时器,通过timer库可以创建硬件定时器
硬件准备#
任意LuatOS-SOC开发板一块
软件部分#
接口文档可参考:timer库
硬阻塞#
硬阻塞指定时长,阻塞期间没有任何luat代码会执行,包括底层消息处理机制
代码如下
PROJECT = "TIMER"
VERSION = "1.0.0"
-- 初始化看门狗,超时时长为10S
wdt.init(10000)
-- 打印阻塞开始前的ticks
log.info("ticks", mcu.ticks())
-- 阻塞延迟5000ms, 绝大部分项目不会也不应该使用该方法
-- 本demo只是为了演示API方法的可用性
-- mdelay会阻塞整个lua vm的运行, 在阻塞的时长内,任何中断都不会响应,包括uart
timer.mdelay(5000)
-- 打印阻塞结束后的ticks
log.info("ticks", mcu.ticks())
-- 循环喂狗
while true do
wdt.feed()
end
日志如下
I/user.ticks 22
I/user.ticks 5023