曾道人强烈推荐一肖一码中特|曾道人 118

单片机要这么学?八条谨记!

2019年03月01日 14:03:58 供稿:网络

怎么学单片机?也常看到有人说学了好几个月可就是没有什么进展。当然,受限于每个人受到的教育水平不同和个人理解能力的差异,学习起来会有快慢之分,但笔者感觉最重的就是学习方法。一个好的学习方法,能让你事半功倍,这里说说笔者自己学习单片机的方法。

01

万事开头难

要勇敢迈出第一步

开始的时候,不要老是给自己找借口,说KEIL不会建项目啦、没有实验板啦之类的。遇到困难要一件件攻克,不会建项目,就先学它,这方面网上教程很多,随便找找看一下,做几次就懂了。

然后可以参考别的人程序,抄过来也无所谓,写一个最简单的,让它运行起来,先培养一下自己的感觉,知道写程序是怎么一回事,无论?#21019;?#31243;序还是小程序,要做的工序不会差多少,总?#23186;?#20010;项目,再配置一下项目,然后建个程序,加入项目中,再?#21019;?#30721;、编译、生成HEX,刷进单片机中、运行。

必须熟悉这一套工序。个人认为,一块学习板还是必要的,写好程序在上面运行一下看结果,学习效会好很多,仿真器就看个人需要了。单片机是注重理论和?#23548;?#30340;,光看书不动手,是学不会的。

02

知识点用到才学

不用的暂?#20493;?#19968;边

厚厚的一本书,看着人头都晕了,学了后面的,前面的估计也快忘光了,所以,最好结合?#23548;?#31243;序,用到的时候才去看,不必说非要把书从第一页看起,看完它才来写程序。比如你写流水灯,完全就没必要看中断的知识,专心把流水灯学好就是了,这是把整本书化整为零,一小点一小点的?#23567;?/p>

03

程序不要光看不写

一定要自己写一次

最开始的时候,啥都不懂,可以抄人家的程序过来,看看每一句是干什么用的,达到什么目的,运行后有什么后果,看明白了之后,就要自己写一次,你会发现,原来看明白别人的程序很容易,但到自己写的时候却一句也写不出来,这就是差距。当你自己能写出来的时候,说明你就真的懂了。

04

学会掌握

调试程序的方法

不少人写程序,把代码写好了,然后一运行,不是自己想要的结果,就晕了,然后跑到论坛上发个帖子,把程序一贴,问:为什么我的程序不能正常运行?然后就等别人来给自己分析。这是一种很不好的行为,应该自己学会发现问题和学会如何解决问题。

这就需要学习调试程序的方法,比如KEIL里,可以下断点啦,查看寄存器内容等等,这些都是调试程序的手段,当你发现你写的程序运行结果和你想象中不一样的时候,你可以单步,也可以下断点,然后跟踪,查看各相关寄存器内容,看看程序运行过中是不是有什么偏差,?#39029;?#24433;响结果的地方,改正过来。这一个过程非常重要,通过程序的排错,你可以学到的知识是书上得不到的。

05

找到解决问题思路

?#26085;?#21040;代码更重要

我们用单片机来控制周边器件,达到我们想到的目的,这是一个题目,而如何写出一个程序,来控制器件按你想要的结果去运作,这个就是解题的思路。要写程序,就得?#26085;?#21040;解决问题的思路,你学会?#39029;?#36825;个解题思路,比你找到代码更为重要。

不少人很?#19981;?#25214;人家的代码,有的人甚至有了代码就直接复制到自己的程序中,可以说,这不是一种学习的态度,无助于你编程水平的提高。

笔者几乎不怎么看人家的代码,多数时候是看别人的思路,有方框图最好,没有的话文字说明也可以,要从代码中看出别人处理问题的思路,是相当困难的,特别是大型的程序,看起来是非常的累人,所以现在我也明白了,以前读书时说的程序流程?#24049;?#37325;要。当你知道一个问题怎么去解决了,那么剩下的只是你?#25165;?#20195;码去完成,这就已经不是什么问题了。

06

开动脑筋

运用多种方法优化程序

想想用各种不同方法来实现同一功能。这是一个练习和提高的过程,一个问题,你解决了,那么你再想想,能不能换?#20013;?#27861;,也可以实现同一功能,或者说,你写出来的代码,能不能再精简一点,让程序执行效率更高,这个过程,就是一个进步的过程。很多知识和经验的获得,并不是直?#26377;?#22312;书让你看就可以得到的,需要自己去?#23548;?#24320;动脑筋,经验才能得到积累,编程水平才能有所提高。

07

看别人的代码

学习人家的思路

这个在学习初期是很有用,通过看别人的代码,特别是有多年编程经验的人写出的具有一定水平的代码,可以使自己编程水平得到迅速的提高,同时,也可以结合别人的编程手法,与自己的想法融合在一起,写出更高水平的代码,从中得到进步。但要注意,切忌将学习变成抄袭,更不是抄袭完了就认为自己学会了,这样做只会使你退步。

08

尝试编写

综合应用的程序

从流水灯学起,到动态扫描,再到中断,那么,你可以试试写一下时钟这种综合性应用的程序,不要小看时钟,要写好它不是一件容易的事情,它包括了单片机大部分的知识,比如有按键(IO读取)、动态扫描(IO输出)、中断等,如何协调好各功能模块正常工作,才是编程者需要学习的地方,当你单独写一个功能的时候,比如按键读取,你可能感觉很容易。

因为你的程序啥也不做,只是读按键。但把它和其它功能混合在一起,如何在整个程序运行中使每一部分都正常工作,这就不是写一个按键读取这么容易的事情,功能模块之间有可能会互相影响,比如你需要让数码管既能显示,又要去处理按键读取,怎么使这两部分都正常工作,这就是一个协调过程。当你有了这个处理协调能力,你就算是入门了。

声明:本文为转载类文章,如涉及版权问题,请及时联系我们删除(QQ: 2737591964,不便之处,敬请谅解!

本文链接:http://www.bpucd.tw/tech/detail.aspx?id=35905

中国传动网

官方微信

扫一扫,中国传动网信息随手掌控

直驱与传动

官方微信

扫一扫,直驱与传动信息随手掌控

伺服与运动控制

官方微信

扫一扫,伺服与运动控制信息随手掌控

联系我们

广告联系:0755-82048561
展会合作:0755-83736589
?#21448;就?#31295;:0755-82048562

网站简介|会员服务|联系方式|帮助信息|版权信息|网站地图|友情链接|法律支持|意见反馈

版权所有 2006-2016 中国传动网(ChuanDong.com)

  • 经营许可证
    粤B2-20150019

  • 粤ICP备
    14004826号

  • 不良信息
    举报中心

  • 网络110
    报警服务

网?#31350;头认?/p>

0755-82949061

网站问题?#22836;?/p>

2737591964

曾道人强烈推荐一肖一码中特 快乐扑克计划 甘肃十一选五怎么玩 456网络棋牌游戏害人 捕鸟达人安卓 大邱庄二手房 弗罗西诺内对都灵 美因茨vs弗赖堡 红警共和国之辉 广西快三走势图-百度 夜市人生客服