9.物联网操作系统之软件定时器

一。软件定时器概念及应用

1.软件定时器定义

就是软件实现定时器。

2.FreeRTOS软件定时器介绍

如上图所示,Times的左边为设置定时器时间,设置方式可以为任务设置或者中断设置;Times的右边为定时器的定时相应,使用CalBack相应。

FreeRTOS软件定时器工作原理

软件定时器可以参考一下手机的闹钟。单次响应与多次响应。

二。软件定时器函数应用

1.功能需求

  • 使用软件定时器功能完成闹钟功能设计

  • 当闹钟到达时,可根据执行动作,触发相关的led亮灭

2.API

(1)xTimerCreate()创建一个定时器

(2)xTimerStart()启动定时器

(3) xTimerReset()重启软件定时器

(4)pvTimerGetTimerID()获取软件定时器标识符值

(5)xTimerChangePeriod()修改软件定时器周期值

3.功能设计

如上图所示,需要三个部分,用户在串口端设置时钟参数,RTC作为定时器的核心,并驱动GPIO

(1)串口命令定义

1.设置实时时钟 参数头:年-月-日,小时:分钟:秒 realtime:2019-2-19,16:31:00

2.设置闹钟参数 参数头:小时:分钟:秒,是否重复,操作LED动作 alarmtime:16:32:40,0,0

(2)功能业务划分

1.实时时钟:RTC功能开发

2.命令参数配置:串口解析功能开发

3.软件定时功能:软件定时器

4.多任务消息同步:消息队列

4.功能实现

(1)Cubemx配置

1.配置RTC

2.配置串口

3.创建任务

4.创建消息队列

(2)实时时钟读写操作

1.设置实时时钟

2.读取实时时钟

(3)命令解析任务

1.使能串口接收中断

2.串口中断发送消息队列

3.解析命令字符串

4.解析实时时钟字符串

5.解析闹钟字符串

6.计算闹钟与实时时钟间隔

(3)软件定时器回调函数

1.定时器打印实时时钟

2.闹钟回调函数

(4)LED处理任务

LED处理任务

5.功能现象

相关推荐
高翔·权衡之境6 小时前
技术演进的底层驱动——能源、信息、材料的三角博弈
嵌入式硬件·物联网·软件工程·能源·信息与通信
高翔·权衡之境7 小时前
差错控制——噪声中如何保真?
网络·驱动开发·嵌入式硬件·物联网·软件工程·信息与通信
TDengine (老段)11 小时前
TDengine 时序数据库在城市燃气场景的落地实践
大数据·数据库·人工智能·物联网·时序数据库·tdengine·涛思数据
2601_9567436821 小时前
物联网应用开发的协议选型与平台架构:一个工程视角的深度拆解
物联网·软件工程
雅斯驰1 天前
AES-128加密+滚动码认证:ATA5702W如何防御中继攻击与信号重放
运维·单片机·嵌入式硬件·物联网·自动化
b55t4ck1 天前
Draytek vigo3910 工业路由器固件解密及其CVE-2024-23721漏洞分析
网络·物联网·网络安全
HiWooiot20181 天前
工厂局域网远程监测方案介绍(数字化转型解决方案)
物联网
电子科技圈1 天前
四大“门派”围攻边缘及端侧AI SoC市场“光明顶”
人工智能·嵌入式硬件·mcu·物联网·网络安全·音视频·语音识别
互联网志1 天前
高校科技成果转化深度融入产业发展脉络
大数据·人工智能·物联网
BT-BOX1 天前
Multisim 14.3 安装与汉化指南(附下载链接)
嵌入式硬件·物联网