FreeRTOS软件定时器

简介:

FreeRTPS中的软件定时器,是基于FreeRTOS中时钟源(滴答)运行的,当设置好周期,周期一到就会进入,软件定时器的回调函数,在回调函数中不能使用带有阻塞的API函数

要使用软件定时器要剪切configUSE_TIMERS,开启头文件#include"timers.h",使用软件定时器要创建软件定时器任务,回调函数也需要我们自己写,他负责软件定时器的超时逻辑判断,调用软件定时器的回调函数,还有命令队列

软件定时器有一个命令队列,开启和关闭软件定时器等都由他管理,软件定时器的任务会读取他

单次和周期性:

一次性定时器:这种定时器当触发一次超时后进入一次回调函数,就不会执行了

周期性定时器:这种定时器每次超时周期都会触发一次回调函数

软件定时器的精读和分辨率不高(靠滴答定时器),没有硬件定时器精度高,硬件定时器想设置多少秒进一次中断可以通过参数调整,软件定时器只能靠滴答定时器(1ms进一次中断),但是软件定时器节约资源,

有些命令API传参中有等待时间,为什么有等待时间呢?执行命令不是一下就完成的,需要发送命令和接收命令,才执行命令,等待时间就等待完全执行命令

相关推荐
Y1rong34 分钟前
STM32之中断(二)
stm32·单片机·嵌入式硬件
Y1rong1 小时前
STM32之中断(一)
stm32·单片机·嵌入式硬件
LaoZhangGong1232 小时前
学习TCP/IP的第3步:和SYN相关的数据包
stm32·单片机·网络协议·tcp/ip·以太网
小郭团队2 小时前
2_1_七段式SVPWM (经典算法)算法理论与 MATLAB 实现详解
嵌入式硬件·算法·硬件架构·arm·dsp开发
持戒波罗蜜2 小时前
ubuntu20解决intel wifi 驱动问题
linux·驱动开发·嵌入式硬件·ubuntu
不做无法实现的梦~2 小时前
使用ros2来跑通mid360的驱动包
linux·嵌入式硬件·机器人·自动驾驶
bai5459362 小时前
STM32 CubeIDE 使用蓝牙模块实现手机控制LED灯
stm32·单片机·嵌入式硬件
gihigo19984 小时前
基于DSP28335 SCI模块控制ESP8266 WiFi模块的实现方案
单片机·嵌入式硬件
想放学的刺客4 小时前
单片机嵌入式嵌入式试题(第16期):硬件可靠性设计与复杂状态机架构设计
c语言·stm32·单片机·嵌入式硬件·物联网
qq_7391753694 小时前
stm32h743单片机驱动dac8568失效问题分析
stm32·单片机·嵌入式硬件