聊一聊对嵌入式开发的初始感受

    初次接触嵌入式已近一年,也有想法记录一下这段时间的感受,虽然是第一次,也不久,想留下点东西,好日后回看,即不忘初心也可鞭策自己不骄不躁,继续努力,同时也把自己在过程中遇到的问题和解决的方法分享出来,能帮助到别人更好,也当作记录,以后再遇到相应的问题也有个寻找的地方。

    此作为初篇,便谈一谈自己的浅见,必有一些片面,以后回看时也想必有一些不一样的感受。

   就我自己而言,在目前阶段以我的知识水平和能力,我觉得最重要的是解决问题的方法。遇到问题,首先看到的便是问题出现的现象,再去定位出现的位置,(嵌入式开发使用的软件就我目前所知的Keil5,是嵌入式开发所常用的,用这个软件可以很清楚的看到程序运行中各种参数的变化,和程序运行的位置,使用起来非常的方便),所有运行中的程序,掌握其运行的状态是非常重要的,幸好,很多开发环境都支持串口信息的打印,据此,便可以头痛医头,脚痛医脚,对症下药。

   第二个方面嵌入式软件的开发离不开程序软件的设计,软件的运行归根结底是对数据的操作,所以在整个过程中,一定要对数据的类型,在内存中的存储方式有清晰的认识,才能正确的操作数据而不至于出现一些莫名奇妙的错误,我对这方面确实的理解而不够深刻,后续要加强对基础的掌握,没有的话是走不远的。再者是对程序结构的把握,一定要有条理,不能出现逻辑混乱,为同一个目的,生成多余的无效代码,用更少的代码来实现自己的设计目的。

   第三个方面是时序,现在的嵌入式开发,离不开实时操作系统,有常用的Freertos,也有现在很流行的RTT_Thread,(吐槽一下RTT_Thread,软件会有一些莫名的BUG,不经意间会很让人恼火),时序是非常重要的,可以决定整个系统的运行效率,各项任务时间的分配是否合理,同一任务执行的次数是否过于频繁,目前我掌握的不太好,我感觉程序能跑起来,完全是依赖于单片机强大的性能,后面一定要改掉,对系统好好的优化。

   其他方面也就是要善用搜索,基本上遇到的问题都可以从中找到答案,忘记从哪里看到的一句话,从纷繁杂乱的信息中,找到自己所需要的有效信息,进而去解决问题,也是一种能力。

  多说无益,最后附上离开校园时铭记的一句话,以此作为勉励:

  路漫漫其修远兮,吾将上下而求索

 

 

     2021-12-20     20:30:56