【STM32嵌入式系统设计与开发拓展】——16_FreeRTOS操作系统

参考:链接: 正点原子

一、认识裸机和RTOS

裸机是无操作系统支持,程序直接运行在硬件上,开发者要自行处理硬件细节。早期单片机常采用,优点是性能和资源利用率高,缺点是开发难、可移植性差。RTOS 是实时操作系统,对任务响应有严格要求,如汽车制动系统。它能减轻开发负担,但会占用资源影响性能。两者各适用于不同场景

裸机特点:

1、实时性差

2、延时函数delay时候是空等待不做任何工作的

3、结构臃肿

RTOS特点:

1、实现功能划分为多个任务

2、任务调度

3、 高优先级任务抢占低优先级任务

4、每个任务都有自己的栈空间

FreeRTOS:

是一个免费的嵌入式实时操作系统

1、免费开源

2、可裁剪

3、简单

4、优先级不限

5、任务不限

6、 抢占/协程/时间片

7、主流

抢占式调度:

1、【任务设置的数值越大,优先级越高】;

2、高优先级任务不停止,低优先级任务无法执行;

3、被抢占的任务将会进入就绪态;

时间片调度:

1、同等优先级任务,轮流执行,时间片流转

2、一个时间大小,取决为滴答定时器中断周期

3、没有用完的时间片不会再使用

任务状态

资料整理

1、FreeRTOS官网:https://www.freertos.org/


二、FreeRTOS移植

1、源码获取

FreeRTOS官网:https://www.freertos.org/

2、FreeRTOS移植

链接: link

3、系统配置文件说明

三、代码分析

相关推荐
老k一步步来10 小时前
STM32 HAL库CAN通信核心函数详解,参数以及作用
stm32·单片机·嵌入式硬件
gwf21610 小时前
SSD读写速度深度解析:顺序读写vs随机读写、IOPS、延迟,你的硬盘性能到底怎么看?
git·嵌入式硬件·缓存·github·智能硬件
Freak嵌入式14 小时前
版本混乱 / 依赖缺失?uPyPi:MicroPython 版 PyPI,彻底解决库管理混乱
linux·服务器·数据库·单片机·嵌入式硬件·性能优化·依赖倒置原则
wuyk55514 小时前
77.嵌入式 C 语言中 enum 枚举的工程化实践:告别魔法数字,提升代码可维护性
c语言·开发语言·stm32·单片机·嵌入式硬件
义嘉泰14 小时前
XT25F128F-W Flash芯片全面解析
人工智能·嵌入式硬件·芯片
QH1392923188015 小时前
Keysight N9917B N9918B手持式综合微波分析仪
网络·科技·嵌入式硬件·集成测试·信息与通信
longxingiot15 小时前
轻量化单片机数传终端降低物联网开发门槛
单片机·嵌入式硬件·物联网
亿道电子Emdoor16 小时前
【Arm】MSP和PSP的区别简介
c语言·arm开发·单片机·mcu
国产HT1621B16 小时前
YL1650 LED驱动芯片详解:从原理到实战应用(附51单片机驱动代码)
stm32·单片机·嵌入式硬件·mcu·fpga开发·lcd驱动