单片机技术网|技术阅读
登录|注册

您现在的位置是:单片机技术网 > 技术阅读 > 学习RTOS的几个段位,你属于哪个段位?

学习RTOS的几个段位,你属于哪个段位?

莫问收获,但问耕耘。

——曾国藩


本文来和大家分享一下我在RTOS打怪升级路上经历的几个段位,仅供参考。


青铜段位 | 玩起来RTOS



这个段位,我把它总结为:玩起来RTOS。

2018年,我参加了RT-Thread组织的大学生雄鹰计划,和众多对RT-Thread感兴趣的学生一起学习内核,每周学习一章内容并完成作业。

这是我第一次接触RTOS内核,得益于RT-Thread的板级支持做得实在是太好了,无需任何移植,随便找块stm32板子就能跑起来RT-Thread,有训练营的教程、官方详细的文档,就这样开始了内核的学习。

在这个过程中主要是参考教程、文档来玩起来RTOS,创建线程、使用信号量、使用邮箱等等RTOS内核基本操作,并记录了一本足足有26468字的RT-Thread内核学习笔记。




黄金段位 | 知道RTOS有哪些东西 



这个段位,我把它总结为:知道RTOS有哪些东西。

2019年,我参加了华为的IoT训练营,第一次接触LiteOS和小熊派IoT开发板,本着系统学习一下stm32cubemx的想法,就开始了边学习边写博客记录的过程,出完这套教程后,发现LiteOS教程稀缺,何不再趁热打铁,出一套LiteOS的教程呢?

说干就干!这一干,可谓是对自己的一次挑战。

官方没有任何细致的使用文档,代码里的注释也多是版权信息,这可咋整?只能从源码下手了。

凭借着学习RT-Thread的经验,开始啃源码,做实验,然后在教程里写出每个模块有哪些API可用,这些API如何使用,并在每篇文章中给出一个使用示例。

从内核的基本模块写到AT框架、SAL框架这些组件,再写到MQTT、LWM2M、COAP这些上云组件,历时3个多月,每天都在研究。

这次经历对我的成长挺大,以前是没有教学文档、视频就寸步难行,无从下手,之后发现其实一个RTOS里面就是那些东西,用起来都差不多的,如果具备一个RTOS的经验,再去玩其它的RTOS,很好上手。

所以,还在观望RTOS的小伙伴,不用纠结学哪个RTOS好,如果不是项目要求必须使用某一种,学哪个都是一样的。


铂金段位 | 知道RTOS是怎么干活的




这个段位,我把它总结为:知道RTOS怎么干活。2020年,我开始了RTOS内核的学习,选择了代码写的比较简洁粗暴的TencentOS-tiny操作系统。这次主要是分析研究源码,主要是学习研究系统中任务、信号量、消息队列如何实现,在系统中以怎样的形式存在,在提供给用户的API中究竟做了什么。在做嵌入式项目的时候,不像开发桌面软件、开发APP那样,基本上写代码会调用API,调用库就可以,嵌入式设备中的资源都是非常有限的,如果只是一通调用而自己没有清楚的认知,做出来的产品就像是空中楼阁,看似功能非常炫酷,然而,可靠吗?面临各种各样断电、断网、信号不好、操作失误的情况,是否可以处理好这些异常呢?就拿我自己来说,写几个任务helloworld一下,再写两个任务之间使用信号量同步,再写几个任务使用信号量之间通信,根本莫得问题。可是一旦用RTOS做起项目来,设计到任务如何分配,如何同步,如何通信,就歇菜了,好好的RTOS程序,最后所有的逻辑都是在main任务里写……还不如裸机呢。


钻石段位 | 知道如何用RTOS干活



这一阶段,我把它总结为:知道如何用RTOS干活。这个阶段是我准备接下来要达到的目标,建立在清楚的知道RTOS内部如何运作的基础上,可以合理的设计安排任务,合理的设计任务间如何同步运行,合理的设计任务间如何通信获取数据。因为我一直在学校的原因,做项目都比较任性,可能觉得想玩,好玩,灵感闪现就去做了,也没有约束,没有做过实际落地产品的经历,这方面也是我一直所欠缺的。有心的读者可以从我平常发的文章看出来,文章深度和从业好多年的大佬根本没法比,所以我会经常转载一些大佬的深度好文,一方面自己学习,另一方面分享给公众号的每位读者。我一直很敬佩曾国藩,考了7次才中秀才,却以笨功夫成功打通科举之路,进入翰林院,一生崇尚笨拙,以扎实而非机巧取胜,很好的诠释了:莫问收获,但问耕耘。在机会还没到来之前,先不断学习提升自己吧~机会是留给有准备的人的,暂且就分享这些,与公众号各位读者,共勉。

推荐好文  点击蓝色字体即可跳转


☞ 

☞