历史上的今天
今天是:2026年01月05日(星期一)
2023年01月05日 | 单片机编程好学吗?单片机初学者怎样看懂代码?
2023-01-05 来源:jdzj
单片机在很多人看来好像门槛很高,在某些人看来很简单。
所以,单片机编程好不好学,这取决于谁去学,有没有基础,有没有兴趣。
我自己是通过自学学会的,我个人认为相对java那些纯软件,单片机比较好学。
单片机编程只需要学习C语言,很多人也会把汇编也学了,但是实际产品开发汇编一般用的还是比较少。
反正我从来没用汇编做过项目,所以只需要学习C语言就可以了。
至于单片机嘛,入门51的单片机也很简单,就是看手册配置单片机的寄存器而已。
就像你买一个冰箱,它配一个说明书给你,教你怎么用。
学习编程的过程才是最枯燥,连续看1个月视频,敲一个月的代码,只能在屏幕前显示冷冰冰一些字符。
而单片机则有趣的多,你只要会C语言入门语句,再加一点单片机寄存器配置就能点亮电路板上的一个灯。
这个时候你会更有成就感,感觉你学的东西可以很快看到成果,很快你天马行空的脑袋就会去思考,我怎么用程序控制家里的灯打开和关闭。
有了这些想法以后,你就更有动力去学习,把自己的想法变现。
所以很多时候,我经常对学员说,只要你有兴趣,其实最后你是玩会单片机的。
就像我们玩游戏,只要有兴趣,我相信一个小学生都能玩的很好。
单片机初学者怎么看懂代码?
在看代码之前,我们首先要背下C语言的一些关键词和语句都有什么作用,这是基础,这一步没做到,不要想着能看懂代码。
那是不是知道C语言所有关键词和语句就一定能看懂代码呢?
答案肯定是不一定的,一段代码就是一个功能,如果你不了解功能的情况下看代码,你会越看越迷茫。
一般我看代码的正确流程是:
1. 先搞懂功能原理,然后思考如果是我的话,我会怎么去写,我会先尝试着用自己的思维去实现一下代码,只有写的时候你才会发现问题。
2. 抱着这些问题去研究别人的代码,看下别人的实现思路。
3. 如果有条件,可以尝试改改别人的代码,调试一下会有什么反应。
做到以上三步,基本上你就能吃透别人的代码。
学会看懂别人的代码是一项非常重要的能力,我的编程水平都是这样去提升的。
很多时候虽然你重写代码也能实现同样的功能,但是其中涉及到2个东西会直接影响整个产品的稳定性和效率。
1.代码架构
2.代码算法
代码架构决定你的程序移植性和可扩展性,同时也会影响做出来产品的稳定性。

代码算法决定你的程序执行的效率,举个例子,右移运算也能当除法去,并且执行的机器周期比除法运算短。

这两个概念主要体现在中大型的项目上,如果你的项目是51单片机级别的,基本上可以忽略,因为芯片的资源有限,你想做出好的架构,芯片的ROM都不够用。
史海拾趣
|
安防相对于通信和家电行业,由于进入门槛低,因此进入安防行业的公司比较多,竞争非常激烈,产品价格和工程造价一降再降,目前已经接近零利润。现在安防企业都说工程难接,就是接到工程也是没有什么利润可言,主要是安防企业都把眼睛盯在城 ...… 查看全部问答> |
|
目录: 第一章 微波网络基础 第二章 微波网络的综合 第三章 微波网络元件 第四章 微波耦合谐振器 第五章 微波滤波器 第六章 阻抗匹配网络 第七章 微波定向耦合器、混合电桥及功率分配器 第八章 微波铁氧体元件 第九章 微波系统分析 第十 ...… 查看全部问答> |
|
各位好! 我正在做WINCE下的背光驱动 首先 我提供给PM.EXE 我的背光支持电源管理的能力为:D0、D1、D4 并且在D0时我让背光亮,D1和D4时我都让背光关闭 相关函数: BOOL BackLightSetState(DWORD dwContex ...… 查看全部问答> |
|
strneb r2,[r3,r4] 是指r3地址+r4地址送到r2 还是r3地址所指值+r4地址所指值送到r2 ldr r0,[r1],#4 是指把 r0的值内容送到地址r1,r1的 ...… 查看全部问答> |
|
本人是大四学生,今年毕设做的题目是功率因素补偿控制器,属电气类的课题吧。但是本人学的是机械设计的,对电气这方面可以说了解很少。 下面问几个芯片的问题 很肤浅。 MAX202 芯片是干什么用的 电路用它的主要目的是什么 ...… 查看全部问答> |
|
因为要做一个智能读卡的程序,要把读到的智能卡号传到PC中去, 所以就用232串口来把进行通讯,原来没做过232方面的通讯程序, 现在比较的急,下周老板就要看程序了,请各位大虾帮忙, 如果可以的话用全套剑桥的蓝牙程序 ...… 查看全部问答> |




