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

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

3天内不再提示

stm32的任务调度方式和步骤

汽车玩家 来源:简书 作者:生若夏花_1ad0 2021-08-10 23:29 次阅读

STM32的任务调度可以有两种方式

  • 2)执行一个系统调用

任务调度的步骤总结为如下:

  • 保存程序的上下文即当前任务的寄存器,保存存储寄存器的任务堆栈的地址。

  • 根据下一个任务的任务堆栈地址依次弹出下一个任务的16个寄存器。

堆栈中的寄存器保存顺序如下,

XPSR

SP(代表MSP或PSP,在任务调度完成后,根据PSP的值定位了是哪个任务)

LR(存储函数的返回)

R12

R3

R2

R1

R0

R11

R10

R9

R8

R7

R6

R5

R4

文章整合自:简书生若夏花_1ad0

编辑:ymf

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

    关注

    30

    文章

    5028

    浏览量

    117719
  • 定时器
    +关注

    关注

    23

    文章

    3147

    浏览量

    112034
  • 函数
    +关注

    关注

    3

    文章

    3868

    浏览量

    61308
收藏 人收藏

    评论

    相关推荐

    STM32F103 FreeRTOS任务调度异常的原因?

    * pvParameters) { while(1) { Delay_Ms(500);//延时函数(无任务调度) LED_TOGGLE;//LED闪烁(取反) } } 方式2:任务
    发表于 04-16 06:24

    FreeRTOS任务调度器的三种调度算法讲解(下)

    配置如下时,调度算法就会变成不带时间片的抢占式调度
    的头像 发表于 03-21 13:46 606次阅读
    FreeRTOS<b class='flag-5'>任务</b><b class='flag-5'>调度</b>器的三种<b class='flag-5'>调度</b>算法讲解(下)

    FreeRTOS调度器中的三种调度算法实践(上)

    在优先级高于运行态任务任务进入就绪态时,调度器立即让这个高优先级的任务“抢占”运行态任务。被抢占意味着
    发表于 03-21 13:45 98次阅读
    FreeRTOS<b class='flag-5'>调度</b>器中的三种<b class='flag-5'>调度</b>算法实践(上)

    鸿蒙原生应用开发-ArkTS语言基础类库多线程CPU密集型任务TaskPool

    密集型任务可以提高CPU利用率,提升应用程序响应速度。 当进行一系列同步任务时,推荐使用Worker;而进行大量或调度点较为分散的独立任务时,不方便使用8个Worker去做负载管理,推
    发表于 03-19 14:14

    鸿蒙开发【分布式任务调度】解析

    1.FA 迁移可以打通设备间的壁垒,有助于不同能力的设备进行互助。前文以一个简单的例子介绍如何通过分布式任务调度提供的能力,实现 FA 跨设备的迁移(包括 FA 启动及状态数据的同步)。 2.FA
    的头像 发表于 01-29 18:03 358次阅读

    鸿蒙OS 分布式任务调度

    鸿蒙OS 分布式任务调度概述 在 HarmonyO S中,分布式任务调度平台对搭载 HarmonyOS 的多设备构筑的“超级虚拟终端”提供统一的组件管理能力,为应用定义统一的能力基线、
    的头像 发表于 01-29 16:50 238次阅读

    鸿蒙原生应用/元服务开发-延迟任务开发实现(二)

    : workScheduler.WorkInfo): void 延迟调度任务开始的回调 onWorkStop(work: workScheduler.WorkInfo): void 延迟调度
    发表于 01-17 17:53

    FreeRTOS中的任务管理

    任务是 FreeRTOS 中最基本的调度单元,它是一段可执行的代码,可以独立运行。FreeRTOS 中的任务是基于优先级的抢占式调度,优先级高的任务
    的头像 发表于 11-27 17:03 401次阅读

    野火stm32+UCOS+LED1(单任务)

    电子发烧友网站提供《野火stm32+UCOS+LED1(单任务).rar》资料免费下载
    发表于 11-03 11:34 7次下载
    野火<b class='flag-5'>stm32</b>+UCOS+LED1(单<b class='flag-5'>任务</b>)

    Crontab:简单实用的Python 周期任务调度工具

    任务调度工具,而且希望它尽量简单、容易使用、不需要外部依赖,最好能够容纳 Crontab 的所有基本功能
    的头像 发表于 11-01 09:40 370次阅读

    Schedule:简单实用的 Python 周期任务调度工具

    。 ** ** 2.当需要执行的定时任务有上百个的时候,Crontab的 管理就会特别不方便 。 ** 另外一个选择是 Celery,但是 Celery 的配置比较麻烦,如果你只是需要一个轻量级的调度工具,Celery
    的头像 发表于 10-30 11:18 293次阅读

    嵌入式系统中时间片的任务调度方式的优点是什么?

    嵌入式系统中时间片的任务调度方式的优点是什么
    发表于 10-20 06:48

    STM32F407 外部中断配置步骤

    介绍STM32F407外部中断配置步骤,以按键为例,实现外部中断配置,使用按键触发中断进行LED灯控制。
    的头像 发表于 07-06 14:31 1026次阅读
    <b class='flag-5'>STM32</b>F407 外部中断配置<b class='flag-5'>步骤</b>

    CDN常见的调度类型有哪些

    CDN通过调度方式,选择最优节点为终端网民提供加速服务,那么调度方式显得尤为重要。在实际运用中,一般会采用4种调度类型,分别是DNS
    的头像 发表于 06-28 15:31 1077次阅读
    CDN常见的<b class='flag-5'>调度</b>类型有哪些

    RTOS应用中的调度策略

    在RTOS中,协同调度是基于优先级的非抢占调度方法。任务按优先级排序,并且是事件驱动类型的,一旦正在运行的任务完成,或者任务主动调用OS服务
    的头像 发表于 05-29 09:19 384次阅读
    RTOS应用中的<b class='flag-5'>调度</b>策略