0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

FreeRTOS任务的优先级示例

工程师邓生 来源:硬件会 作者:硬件会 2022-09-15 11:13 次阅读

任务的优先级:0~24之间。数字越大,任务优先等级越高。高优先级的任务优先执行。

当高优先级的任务不进入vTaskDelay()和暂停状态时,低优先级的任务永远不会执行。

API: void vTaskPrioritySet( TaskHandle_t xTask,UBaseType_t uxNewPriority );//设置优先级,例:

86d83314-3120-11ed-ba43-dac502259ad0.png

UBaseType_t uxTaskPriorityGet( TaskHandle_t xTask );//获取任务优先级UBaseType_t uxTaskPriorityGet(NULL);//获取当前任务优先级

tastYIELD();//退让资源。任务调度器会重新评估任务,将资源分配给同等级或者更高等级任务。可以让同等级的任务轮流执行

示例如下:

86e9b152-3120-11ed-ba43-dac502259ad0.png

87028efc-3120-11ed-ba43-dac502259ad0.png



审核编辑:刘清

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • API
    API
    +关注

    关注

    2

    文章

    1522

    浏览量

    62506
  • FreeRTOS
    +关注

    关注

    12

    文章

    484

    浏览量

    62453
  • 调度器
    +关注

    关注

    0

    文章

    98

    浏览量

    5304

原文标题:Free RTOS任务的优先级

文章出处:【微信号:硬件会,微信公众号:硬件会】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    freertos中断优先级在哪设置

    FreeRTOS是一个流行的实时操作系统,它广泛应用于嵌入式系统开发。在FreeRTOS中,中断优先级是一个重要的概念,因为它决定了中断处理的顺序和响应时间。 1. 理解中断优先级
    的头像 发表于 09-02 14:17 809次阅读

    APS智能优化排产软件的优先级应用

    资源、订单需求和约束条件,自动计算出最优的生产计划。在这个过程中,订单排产的优先规则起着至关重要的作用。1.交期优先级交期优先级是订单排产中最基本的优先规则。根据
    的头像 发表于 06-26 17:43 466次阅读
    APS智能优化排产软件的<b class='flag-5'>优先级</b>应用

    请问有什么方法降低WIFI中断的优先级

    因为项目对时序输出要求比较严格,WIFI中断优先级比硬件定时器中断优先级要高,在定时器中断里面对GPIO管脚控制被延长执行,请问有什么方法降低WIFI中断的优先级
    发表于 06-19 07:37

    实时操作系统之RT-Thread及FreeRTOS

    (RTOS),它们在设计理念、内核架构、生态系统和应用领域等方面有一些区别:内核设计:FreeRTOS的内核是基于优先级的抢占式内核,任务的执行顺序由任务
    的头像 发表于 05-29 08:10 4263次阅读
    实时操作系统之RT-Thread及<b class='flag-5'>FreeRTOS</b>

    systick的中断优先级是否应该设置为最高优先级的嵌套中断?

    最近在学习ucosii有这样一个疑问,关于stm32的systick作为ucosii的基准时钟,systick的中断优先级是否应该设置为最高优先级的嵌套中断。理由是什么?各位大侠求指教!!!
    发表于 05-16 06:44

    创建了两个task如果一个优先级高 一个优先级低,高优先级的那个一直在做,什么时候会调度到低优先级的呢?

    创建了两个task如果一个优先级高一个优先级低, 我看到任务的函数都是用死循环做的,那个高优先级的那个一直在做,什么时候会调度到低优先级的呢
    发表于 05-13 07:13

    用STM32CubeMX中的FreeRTOS创建3任务无法运行的原因?

    用STM32CubeMX中的FreeRTOS 创建3任务 Task Priority =osPrioirityNoral 等级的任务,无法运行。 如果创建2个任务就可以。2个以上都不行
    发表于 05-09 07:02

    求助,关于stm32F4中断优先级0无法抢占的问题求解

    后,0优先级没有抢占到) 疑问: 优先级为0的中断不具备抢占能力吗? 注:下图是我使用0优先级以上实现了抢占的波形图: 紫色优先级3,蓝色2,黄色1,三个中断执行同样的
    发表于 04-23 07:26

    关于stm32cube中freertos优先级设置问题求解

    在用stm32cube中freertos,在配置界面里设置为12级任务优先级,但是在cube中配置每个任务优先级时还是只能选择7种
    发表于 04-22 07:25

    为什么CubeMX设计的FreeRTOS工程只能正常运行3个任务

    用CubeMX4.20设计的FreeRTOS工程有六个任务,出一个任务优先级较低外,另外几个都是较高优先级。发现只有3个
    发表于 04-19 08:23

    求助,是否可以不用pendSV中断做任务切换?

    freeRTOS任务切换我的理解是:通过SysTick中断去触发pendSV中断去做任务切换,因为pendSV中断优先级最低,所以任务切换
    发表于 04-16 07:59

    嵌入式实时操作系统优先级抢占式调度机制解析

    当抢占发生时,任务即使没有完成也会被迫放弃处理器,此时任务并没有被挂起,而是会返回就绪队列。任务在队列中的位置是由优先级决定的,它会在队列中等待到下一次被调度。
    的头像 发表于 04-05 05:22 2945次阅读
    嵌入式实时操作系统<b class='flag-5'>优先级</b>抢占式调度机制解析

    STM32F103的寄存器NVIC_IPRx抢占优先级和子优先级是怎么设置的?

    STM32F103的寄存器NVIC_IPRx有些不明白,抢占优先级和子优先级是怎么设置的? 如果,中断分组2,抢占优先级3,子优先级3 那下面这样写对吗? SCB->AIR
    发表于 03-27 07:48

    Hightec对芯片中断优先级分配时,中断号越高中断优先级越高吗?

    请问大佬,Hightec对芯片中断优先级分配时,中断号越高中断优先级越高吗?看网上的帖子说中断号越低优先级越高。
    发表于 02-27 06:13

    RTTnano的用户main函数中的优先级是多少?

    优先级任务都会被main抢占,从而导致无法执行,这样该如何优雅一点解决,目前我的解决办法就是增大任务优先级
    发表于 02-26 08:01