020 - FreeRTOS学习路线总结

零.为什么写?

在H7-tools预售群里,有位朋友提出如何学习FreeRTOS这类的问题,便由此总结下自己的学习路线。最近又打算接触RTT,和FreeRTOS做个对比。

文章分两步来讲,学习路线学习资料

一.学习路线

1.1 学习路线是什么?

从本质上来讲,学习路线是一种思维模型,说简单点,就是一种学习套路。

这种思维不仅仅用于学习FreeRTOS,还可以迁移在其他学习方面,这仅仅是你工具箱中的一把工具而已。

1.2 怎么学?

(尽可能的收集学习资料,在第二部分中,我会按顺序给出参考资料,以及理由)

先画框架:从三个方面完成这个框架

有什么用(Why?) :

先问问自己,为什么要学FreeRTOS,相比于前后台,FreeRTOS解决了什么问题?

是什么(What?) :

给FreeRTOS下一个定义,FreeRTOS是硬实时操作系统的一种。

FreeRTOS都提供了哪些功能,这些功能或者特点,解决了哪些痛点?

怎么用(How?)

实践,可以帮你加深理解和记忆。

1.3 How Good?

结合自己的经验,学习过程是分三部分的,第一部分,就是浏览资料,跑跑例程,看看效果是什么样子,完成整个框架的搭建(配合思维导图食用,效果更加)。

第二部分,深入细节,了解各部分的代码是如何实现的。

第三部分,总结,复盘,比如:

1.一个操作系统是由哪几方面组成的?

2.操作系统是怎样实现上下文切换的?

3.信号量是怎么实现的?

4.任务切换是怎么实现的?

5.各个内存管理的优缺点是什么?

6.什么时候应该使用前后台,什么时候应该跑系统?

7.跑系统,一定优于前后台?

……

 

二.学习资料

2.1收集资料

软件

小册子:对于纯小白来讲,收集小册子,了解一些名字是什么意思,在学习FreeRTOS的过程中,就参考了邵贝贝老师的嵌入式操作系统μC/OS-II第二章,实时系统概念

FreeRTOS官网:入门文档,内核说明文档,API函数说明,源码;

开源教程:armfly/野火/原子 为各自开发板编写的FreeRTOS教程;

硬件

内核手册:一般都有官方提供

芯片手册:

开发板手册:

2.2 决定看什么资料

先看科普贴/小册子,了解基本名词概念,不至于一头雾水

有第三方教程,就看第三方教程(个人推荐armfly和原子一起看)

没第三方教程,就撸官方教程(私认为,是最直接有效的…当然……)

2.3 多久看完

给自己一个deadline,才有动力看完,也不那么容易放弃。

 

(如有不对的地方,欢迎指正和讨论)

 

posted @ 2019-10-28 18:29  Peong  阅读(924)  评论(0编辑  收藏  举报