如果想让任务以绝对时间执行,比如每3000毫秒执行一次,要求精度很高分毫不差。此时用vTaskDelay(3000)就不能实现了。需要用到以下函数:
vTaskDelayUntil(&xLastWakeTime, xFrequency)//本函数会自动更新xLastWakeTime为最后一次唤醒的时间,只需第一次使用时赋值。
xTaskGetTickCount():1ms增加1,是uint32_t类型,49天才会复位
审核编辑:刘清
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。
举报投诉
-
FreeRTOS
+关注
关注
12文章
473浏览量
61347
原文标题:FreeRTOS任务以绝对时间运行
文章出处:【微信号:硬件会,微信公众号:硬件会】欢迎添加关注!文章转载请注明出处。
发布评论请先 登录
相关推荐
freertos任务创建,每一个任务分配的内存是多大才好,怎么计算呢?
小白刚刚接触freertos,想问一下就创建任务而言,每一个任务分配的内存是多大才好,怎么计算呢?
另外,每个任务的执行周期怎么确定?在
发表于 04-23 06:39
为什么CubeMX设计的FreeRTOS工程只能正常运行3个任务?
用CubeMX4.20设计的FreeRTOS工程有六个任务,出一个任务优先级较低外,另外几个都是较高优先级。发现只有3个任务是正常运行的,还
发表于 04-19 08:23
请问freertos测试外部1KHz频率,会不会让系统负荷加重?
请问我现在测试频率有1khz,采用输入捕获的模式,就是意味着1ms就进中断,中断中,释放信号量进行同步,任务就会读取该频率,意味着任务会每1ms读取频率值,这会不会时间太短了, 其他任务
发表于 04-18 08:12
FreeRTOS的任务无故进入挂起状态的原因?
请教大家一个问题,我子啊使用FreeRTOS的时候创建了一个以太网的任务,任务在使用的过程中被无故挂起,请问一下出现这种现象有哪几种原因呢?
发表于 04-09 07:20
STM32H743间隔几秒读写TF卡,长时间运行后不定时卡死的原因?怎么处理?
STM32H743,采用轮询读写SD卡的方式,用的是freertos操作系统,长时间运行,间隔几秒读写一次TF卡会卡死在HAL_StatusTypeDef HAL_SD_WriteBlocks
发表于 04-03 07:39
FreeRTOS中的任务管理
任务是 FreeRTOS 中最基本的调度单元,它是一段可执行的代码,可以独立运行。FreeRTOS 中的任务是基于优先级的抢占式调度,优先级
FreeRTOS任务与协程介绍
FreeRTOS 中应用既可以使用任务,也可以使用协程(Co-Routine),或者两者混合使用。但是任务和协程使用不同的API函数,因此不能通过队列(或信号量)将数据从任务发送给协程
FreeRTOS任务创建到闪存LED的基本应用程序
: NuMaker-PFM-M487
此代码是 FreeRTOS 任务创建到闪存LED 的基本应用程序 。
您可以在下列时间下载样本代码http://www.nuvoton.com/resources-downlo.12141
发表于 08-22 06:28
FreeRTOS任务通知简介
任务通知简介 任务通知在 FreeRTOS 中是一个可选的功能,要使用任务通知的话就需要将宏configUSE_TASK_NOTIFICATIONS 定义为 1。
FreeRTOS中的空闲任务是什么
空闲任务是 FreeRTOS 必不可少的一个任务,其他 RTOS 类系统也有空闲任务,比如 uC/OS。看名字就知道,空闲任务是处理器空闲的
RA FreeRTOS任务创建
随着嵌入式应用程序变得越来越复杂,单片机裸机开发已经无法满足工程师对于复杂程序的需求。于是具有多任务调度和实时响应特性的RTOS便越来越受工程师们青睐。瑞萨RA系列MCU兼容FreeRTOS系统
评论