十年老司机的单片机模块化编程
本课程为免费课程
本课程讲解单片机C语言模块化编程思维,利用结构体、枚举、指针、函数指针等将外设进行封装,方便程序的阅读、修改与移植。
课程主要内容
点击“了解更多”,即可免费观看视频
单片机编程好学吗?单片机初学者怎样看懂代码?
单片机在很多人看来好像门槛很高,在某些人看来很简单。
所以,单片机编程好不好学,这取决于谁去学,有没有基础,有没有兴趣。
我自己是通过自学学会的,我个人认为相对java那些纯软件,单片机比较好学。
单片机编程只需要学习C语言,很多人也会把汇编也学了,但是实际产品开发汇编一般用的还是比较少。
反正我从来没用汇编做过项目,所以只需要学习C语言就可以了。
至于单片机嘛,入门51的单片机也很简单,就是看手册配置单片机的寄存器而已。
就像你买一个冰箱,它配一个说明书给你,教你怎么用。
学习编程的过程才是最枯燥,连续看1个月视频,敲一个月的代码,只能在屏幕前显示冷冰冰一些字符。
而单片机则有趣得多,你只要会C语言入门语句,再加一点单片机寄存器配置就能点亮电路板上的一个灯。
这个时候你会更有成就感,感觉你学的东西可以很快看到成果,很快你天马行空的脑袋就会去思考,我怎么用程序控制家里的灯打开和关闭。
有了这些想法以后,你就更有动力去学习,把自己的想法变现。
所以很多时候,我经常对学员说,只要你有兴趣,其实最后你是玩会单片机的 。
就像我们玩游戏,只要有兴趣,我相信一个小学生都能玩得很好。
单片机初学者怎么看懂代码?
在看代码之前,我们首先要背下C语言的一些关键词和语句都有什么作用,这是基础,这一步没做到,不要想着能看懂代码。
那是不是知道C语言所有关键词和语句就一定能看懂代码呢?
答案肯定是不一定的,一段代码就是一个功能,如果你不了解功能的情况下看代码,你会越看越迷茫。
一般我看代码的正确流程是:
1. 先搞懂功能原理,然后思考如果是我的话,我会怎么去写,我会先尝试着用自己的思维去实现一下代码,只有写的时候你才会发现问题。
2. 抱着这些问题去研究别人的代码,看下别人的实现思路。
3. 如果有条件,可以尝试改改别人的代码,调试一下会有什么反应。
做到以上三步,基本上你就能吃透别人的代码。
学会看懂别人的代码是一项非常重要的能力,我的编程水平都是这样去提升的。
很多时候虽然你重写代码也能实现同样的功能,但是其中涉及到2个东西会直接影响整个产品的稳定性和效率。
1.代码架构
2.代码算法
代码架构 决定你的程序移植性和可扩展性,同时也会影响做出来产品的稳定性。
关于程序架构这块,一般需要经过大量的实际项目沉淀,才能知道实际产品开发当中的痛点,才会理解架构的重要性。
所以我在19年录制了一套专门针对单片机C语言的程序架构,架构采取模块化编程,内核文件负责任务调度,并提供任务创建和管理接口。
还有就是队列算法,回调函数等等,通过使用c语言高级语法的一些技巧来解决产品可扩展性和移植性的问题。
这个教程也是无偿给大家看的,需要的找无际单片机编程领取。
如果对大家有帮助的话,就给我来个鼓励(赞)就行了,不然下次没什么动力分享这些有价值的东西了,浪费时间又没好处对吧?哈哈哈。
代码算法 决定你的程序执行的效率,举个例子,右移运算也能当除法去,并且执行的机器周期比除法运算短。
这两个概念主要体现在中大型的项目上,如果你的项目是51单片机级别的,基本上可以忽略,因为芯片的资源有限,你想做出好的架构,芯片的ROM都不够用。
相关问答
单片机 为什么还在用 C 语言编程?单片机为什么还在用C语言编程?答案是:C语言是最适合单片机编程的高级语言。这个问题的意思应该是:现在有很多很好用的高级语言,如java,python,VC等等,为...单片...
开发 单片机 学什么语言好?单片机是一种可编程器件,单片机的出现使硬件设计变得更为简单,产品的功能也更强大,而程序就是单片机的灵魂。目前功能稍微复杂一点的电子产品,都是以单片机为...
单片机 、光耦那么针对粮食储藏的特殊性,我们选择了粮仓内的温度和湿度作为主要监测参数,把粮虫发生情况作为辅助参数。整个监测系统由上位管理主机(HOST)、USB/...
...AT89 C 52 单片机 芯片为核心,研究和设计了可以应用于水】作业帮[最佳回答]Thetemperaturecontrollerisakindoftemperaturecontroldevice,ituserneedtemperatureandthe...
51 单片机模块化 编程怎么建立头文件?51单片机模块化编程中建立头文件的步骤:创建一个新的文本文件(通常以.h为后缀名)。在文件中包含必要的库和宏定义。声明函数原型和全局变量,以便在其他模...
单片机 技术现在还在流行吗?题主为什么这么问呢?现如今,你身边的哪个电子产品没有单片机的身影,你洗澡用的热水器,你做饭用的电饭煲,你常常抱在手中玩的手机,你出行开的汽车等等,内部...工...
单片机 拓扑结构是什么[最佳回答]问题一:什么叫总线型单片机和非总线型单片机总线型,是局域网所有的pc都在一条线上,但是不能同时收发数据,非总线型的有星型等等!问题二:什么是集成...
树莓派和 单片机 的区别?树莓派和单片机的主要有以下三个区别:一、主体不同1、树莓派:是为学习计算机编程教育而设计,只有信用卡大小的微型电脑,其系统基于Linux。2、单片机:是一...
单片机 ,什么是串行口,什么是并行口? - 小葵的杂货铺 的回...串口数据是按1位为单位传输数据的口,51单片机是P3.0、P3.1组成串口。并口是以1字节为单位传输数据的口,51单片机一般以P0口扩展并口。两种接口都是...
c 语言三大精华是什么?C语言的三大精华通常指的是指针、结构体和位操作。指针提供了对内存地址的直接操作能力,使得C语言能够高效地管理内存资源,是实现动态数据结构和函数间复杂数...