为啥要学FreeRTOS
相信很多嵌入式入门学习都是从51开始接触,然后再玩STM32,通常这样的单片机都是裸机编程,所有的函数实现都放在main主函数中,这样写的好处就是代码量少,量产成本相对较低,可能对于初学者没什么概念哦,初学者学习的开发板都是非常丰富的资源,但是实际项目中很多资源都很紧凑的,毕竟家里没点矿,浪费的都是RMB呀。当做的项目越来越大,越来越复制,裸机开发就不能很好的实现相关需求,所有就会引用RTOS(实时操作系统)来减低编程难度,实现多任务管理,这是引用RTOS的主要原因,其次学习RTOS能有更好的职业规划,也有更多的选择机会;当选择了嵌入式这行就意味着要时刻为将来做准备,业余看书学习都是很必要的。
FreeRTOS的特点
1、使用免费,允许商用,说明大家都可以白嫖,自然用的人就比较多
2、系统简单,文件量少,通常系统占用4~9k字节空间
3、抢占式内核,高优先级优先执行
4、源码主要使用C来编写,可移植性高
5、任务与任务、任务与中断间的通信方式包括:信息量、信息队列、事件标志组、任务通知
6、可以避免优先级反转问题
FreeRTOS主要源码分析
port.c : 针对不同硬件平台的接口
heap_4.c : 内存管理相关
croutine.c : 协程相关
event_groups.c : 事件标志组相关
list.c : 列表,FreeRTOS的一种基础数据结构
queue.c : 队列相关
tasks.c : 任务创建、挂起、恢复、调度相关
FreeRTOSConfig.h:该文件中通过各种宏定义的方式来配置FreeRTOS需要使用哪些资源
--END--
-
嵌入式
+关注
关注
5096文章
19227浏览量
308697 -
STM32
+关注
关注
2275文章
10932浏览量
358279 -
main
+关注
关注
0文章
38浏览量
6217
发布评论请先 登录
相关推荐
STM32F207 + FreeRTOS + USB HOST加了 FreeRTOS就怪怪的原因?
Stm32f4时钟系统初步认识 精选资料分享
嵌入式操作系统FreeRTOS的相关资料分享
FreeRTOS源码介绍
厘米的认识教学设计
单片机C语言教程第二课-初步认识51芯片

什么是操作系统?FreeRTOS中文实用教程让你快速入门FreeRTOS

51单片机初步认识——硬件资源

初入FreeRTOS

FreeRTOS学习(1)——FreeRTOS移植

FreeRTOS系列第8篇---FreeRTOS内存管理

评论