查看原文
其他

【经验】bug菌谈单片机编程"十层功力",你练到了第几层?

bug菌 最后一个bug 2022-07-15

1、聊一聊


     一首太多回忆的歌曲,或许下一个路口又会遇见。
     今天主要是跟大家聊聊单片机编程几个阶段,大家可以参考定位和树立目标,下面来看看你练到了哪层功力?欢迎大家留言分享讨论。

2、单片机编程十层功力

1

点灯大师
    在这个阶段的小伙伴大部分是在入门单片机编程,如果说"Hello world!"是编程的开始,那么"点灯"算是踏入嵌入式领域大门的第一步。
     在此阶段开发板算是一个非常不错的选择,轻松点亮一盏LED灯不管是玩单片机还是玩Linux都是非常有成就感的。
     然而有一部分小伙伴似乎就在此止步了,总感觉后面的知识很难,自己也很迷茫,也不知道单片机是不是自己所热爱的。
     每天就看着led闪呀闪,最多加个按键控制一下,日复一日点灯就成了停滞不前的借口!

2

固件烧录攻城狮
     此阶段的小伙伴应该熟悉了MCU的外设功能,照着开发板的学习视频或者书籍努力的往高级例程学习。
    每个例程都只是把视频或者书籍看一遍,示例程序烧录一遍,然后欣赏一下实验效果,似乎就告诉自己学会了,继续下一个例程。
    然而一旦要把一些功能结合起来或者需要移植一下,又或者是换一个开发板,根本就不知道从何下手。
    这样就让自己陷入无尽的苦恼和迷茫中,在网上搜索相关学习方法又是各种劝退,更是雪上加霜。
   

3

白嫖客
    此阶段的小伙伴大部分都能够根据例程在不同平台上移植使用,也能够修改一些程序来实现自己想要的效果。
    不过一旦需要徒手写个程序就不知道该如何下手了,遇到问题请教他人也是类似于"这个程序是不是修改一下引脚就可以使用了?","能不能帮我搭个框架?我往里面填代码就行了"等等之类的。

4

记流水账
    如果把编程类比与写文章,那么处于这个阶段的小伙伴就是在“记流水账",开发一个功能没有任何设计可言,建立好工程就直接开始敲代码。
     敲三行删两行;
     全局变量随便定int a,b,c,d......;
     局部变量满天飞;
     代码一口气写到底,一个函数写上好几页;
     if_else一个套一个,最后把自己都绕晕倒了。
     。。。。。。

5

仿真小能手
    这种境界的小伙伴开始能够独立完成相应的项目,也有一定的软件设计基础和思路,但对代码的全局把控能力不够,一旦遇到程序bug便不知道从何开始排查,只能老老实实插个仿真器一步一步的调试!

6

吹水先生

    这类小伙伴知识面应该相对比较广,对软件设计等等方面都有所涉及,基础技术知识也算扎实。

    交流起来倒是头头是道,"这个XXX就那么回事","只要XXX改一下就行了","当时我就是这样解决的,不知道你这个什么情况"等等,对一些具体的技术细节就支支吾吾,让倾听者更是迷迷糊糊,说不清道不明。


7

bug粉碎机

      能够把握已有项目,并且可以熟练的在已有程序中增加需求和解决问题,不过一旦需要他自己设计一个系统便不知道该如何下手。

    这类小伙伴大部分都是维护相关项目,代码的转化率比较低,并且不善于总结归纳。


8

百科全书

    一般这类小伙伴积累了一定的开发经验,并且拥有自己总结的一套解决问题的方案集,能够对问题、需求进行抽象归类从而独立设计软件方案并加以实现。

     同时也具备较强的分析和解决问题能力,基本上可以抛开仿真器,通过系统日志数据、源码以及故障现象即可定位问题!


9

技术尖兵

     这类小伙伴能够在满足需求的基础上对代码进行进一步优化设计,包括可移植性,可扩展性等,来进一步降低后期维护成本。

     能够在已有技术上进行优化革新,突破常规设计,使得性能得到大幅度提升;进一步压榨已有硬件,达到产品的最底成本,比如精度和稳定性的大幅度提高;识别算法的灵敏度和正确性的提升等。

     能够掌握行业内的尖端技术实现,并且做好技术产品攻关。


10

技术专家

    理论与实践更好的结合,能够洞察领域内的潮流技术和发展方向,关注学术理论研究进展,一旦有技术从理论到了产品便能够迅速掌握关键实现点,并带领团队进行研发工作,让产品脱颖而出,更加富有竞争力!


3、最后小结

    本文到这里就结束了,这里主要是例举了bug菌了解到的几种技术水平阶段,希望能够对迷茫的小伙伴有所帮助!欢迎大家留言分享讨论。

    好了,这里是公众号:“最后一个bug”,一个为大家打造的技术知识提升基地。

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

【收藏】【看门狗软件设计】"喂狗"真那么简单吗?

【C进阶】这种地方别再强制类型转化了,来告诉你个小技巧!

【MCU】一种单片机节省内存的方法(补充)

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存