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(数字越小,优先级越高);

参考:

  • 正点原子;
相关推荐
三三十二14 分钟前
STM32简易示波器/逻辑分析仪设计指南
stm32·单片机·嵌入式硬件
Mapleay15 分钟前
STM32 _main 里做了什么
stm32·单片机·嵌入式硬件
平凡灵感码头22 分钟前
走进离线语音:安信可 VC‑01 智能模块全面拆解与 MCU 实战
单片机·嵌入式硬件
田甲22 分钟前
【STM32】G030单片机开启超过8个ADC通道的方法
stm32·单片机·嵌入式硬件
切糕师学AI1 小时前
节拍定时器是什么?
单片机·嵌入式硬件
切糕师学AI1 小时前
影子栈指针是什么?
嵌入式硬件·计算机体系结构
小飞侠123!2 小时前
STM32 利用内部参考电压VREFINT计算VDDA来提高精度
stm32
网易独家音乐人Mike Zhou2 小时前
【无人机】MavLink通讯协议的回调解析函数及状态机
单片机·mcu·物联网·嵌入式·无人机·iot
小何~~4 小时前
基于 STM32 和 MPU6050 的三轴倾斜角度传感器设计与实现
stm32·单片机·嵌入式硬件·mpu6050·倾斜角度传感器
君鼎4 小时前
音视频——I2S 协议详解
嵌入式硬件·音视频