zoukankan      html  css  js  c++  java
  • 020

    零.为什么写?

    在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,才有动力看完,也不那么容易放弃。

     

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

     

  • 相关阅读:
    Codeforces Gym100971 K.Palindromization-回文串 (IX Samara Regional Intercollegiate Programming Contest Russia, Samara, March 13)
    Codeforces Gym100971 G.Repair-思维题(切矩形板子) (IX Samara Regional Intercollegiate Programming Contest Russia, Samara, March 13)
    Codeforces Gym100971 F.Two Points (IX Samara Regional Intercollegiate Programming Contest Russia, Samara, March 13)
    Codeforces Gym101502 E.The Architect Omar-find()函数
    Codeforces Round #368 (Div. 2) A , B , C
    hdu 5663 Hillan and the girl 莫比乌斯反演
    bzoj 2301: [HAOI2011]Problem b 莫比乌斯反演
    bzoj 1101 zap 莫比乌斯
    51nod 1289 大鱼吃小鱼 栈
    LightOJ 1245 数学
  • 原文地址:https://www.cnblogs.com/Peong/p/11754216.html
Copyright © 2011-2022 走看看