STM32理论 —— μCOS-Ⅲ(新)

文章目录

  • [1. 任务调度器](#1. 任务调度器)

    • [1.1 抢占式调度](#1.1 抢占式调度)
  • μCos-Ⅲ全称是Micro C OS Ⅲ,由Micriμm 公司发布的一个基于C 语言编写的第三代小型实时操作系统(RTOS);

  • RTOS 与裸机相比最大的优势在于多任务管理实时性,它提供了多任务管理和任务间通信的功能;

  • μCOS-Ⅲ与FreeRTOS的区别:μCOS-III 的源码可读性比较强,代码写的非常规范。国内资料较多;

  • RTOS 的任务调度结构 :如下图,高优先级任务能抢占低优先级任务,而中断能打断任意任务,每个任务都有自己的任务堆栈,用于保存任务的寄存器值;除非高优先级任务挂起,否则在一直运行高优先级任务过程中,低优先级任务无法被运行;

  • μCos-Ⅲ官方文档https://micrium.atlassian.net/wiki/spaceshttps://docs.silabs.com/micrium/latest/micrium-common-api/

1. 任务调度器


任务调度器就是决定当前执行哪个任务;

μCos-Ⅲ 支持2种任务调度方式

  1. 抢占式调度:针对优先级不同的任务,优先级高的任务可抢占优先级低的任务;
  2. 时间片调度:针对优先级相同的任务,当多个任务优先级相同且就绪时,调度器会根据用户设置的时间片轮流运行这些任务。时间片以一次系统时钟节拍为单位(滴答定时器的中断频率),µC/OS-III 默认设置的任务时间片为 100,则 µC/OS-III 会在当前任务运行 100 次系统时钟节拍的时间后,切换到另一个相同任务优先级的任务中运行。

1.1 抢占式调度

  1. 创建3个任务;
  2. 任务1、任务2、任务3的优先级分别设置为3、2、1(数字越小,优先级越高);

参考:

  • 正点原子;
相关推荐
清风6666662 小时前
基于STM32单片机的二维码识别物联网OneNet云仓库系统
stm32·单片机·物联网·毕业设计·课程设计
猫猫的小茶馆6 小时前
【STM32】CubeMX(十二):FreeRTOS消息队列
驱动开发·stm32·单片机·嵌入式硬件·mcu·智能硬件
李永奉11 小时前
51单片机-驱动步进电机模块教程
单片机·嵌入式硬件·51单片机
李永奉15 小时前
51单片机-实现定时器模块教程
单片机·嵌入式硬件·51单片机
IT永勇16 小时前
STM32高级定时器-输出比较模式
stm32·单片机·嵌入式开发·pwm输出·高级定时器
正在努力的小河17 小时前
GPIO子系统自主实现(简单版)
linux·单片机·嵌入式硬件
什么半岛铁盒17 小时前
处理端口和 IP 地址
网络·单片机·tcp/ip
国科安芯1 天前
高速CANFD收发器ASM1042在割草机器人轮毂电机通信系统中的适配性研究
网络·单片机·嵌入式硬件·性能优化·机器人·硬件工程
CC呢1 天前
基于单片机智能路灯控制
单片机·嵌入式硬件·智能路灯
DDUU__1 天前
STM32低功耗模式
stm32·单片机·嵌入式硬件