很多想学单片机的人第一句话就是怎样才能学好单片机?对于这个问题我今天就我自己是如何开始学单片机如何开始上手,如何开始熟练这个过程给大家讲一讲。
先说说单片机,一般我们现在用的比较多的的MCS-51的单片机,它的资料比较多,用的人也很多,市场也很大.就我个人的体会怎么样才能更快的学会单片机这门课.单片机这门课是一项非常重视动手实践的科目,不能总是看书,但是学习它首先必须得看书,因为从书中你需要大概了解一下,单片机的各个功能寄存器,而说明白点,我们使用单片机就是用软件去控制单片机的各个功能寄存器,再说明白点,就是控制单片机那些管脚的电平什么时候输出高,什么时候输出低,由这些高低电平的变化来控制你的系统板,实现我们需要的各个功能至于看书,只需大概了解单片机各管脚都是干什么的?能实现什么样的功能?第一次,第二次你可能看不明白,但这不要紧,因为还缺少实际的感观认识。所以我总是说,学单片机看书看两三天的就够了,看小说你一天能看五六本, 看单片机你两三天看两三遍就够了可以不用仔细的看。推荐一本书,就这一本就足够,书名是《新编MCS-51单片机应用设计》,是哈尔滨工业大学出版社出的的, 作者是张毅刚。大概了解一下书上的内容,然后实践,这是非常关键的,如果说学单片机你不实践那是不可能学会的,关于实践有两种方法你可以选择,一种方法:你自己花钱买一块单片机的学习板,不要求功能太全的,对于初学者来说你买功能非常多的那种板子上面有很多东西你这辈子都用不着,我建议有流水灯、数码管、独立键盘、矩阵键盘、AD或DA(原理一样)液晶、蜂鸣器,这就差不多了。如果上面我提到的这些,你能熟练应用,那可以说对于单片机方面的硬件你已经入门了,剩下的就是自己练习设计电路,不断的积累经验。只要过了第一关,后面的路就好走多了,万事开头难,大家可能都听过。
方法二:
你身边如果有单片机方面的高手,向他求助,让他帮你搭个简单的最小系统板。对于高手来说,做个单片机的最小系统板只需要一分钟的时间,而对于初学者可就难多了,因为只有对硬件了解了,才能熟练运用。而如果你身边没有这样的高手,又找不到可以帮助你的人,那我劝你最好是自己买上一块,毕竟自己有一块要方便的多,以后做单片机类的小实验时都能用得上,还省事。
有了单片机学习板之后你就要多练习,最好是自己有台电脑,一天少看电影,少打游戏,把学习板和电脑连好,打开调试软件坐在电脑前,先学会怎么用调试软件,然后从最简单的流水灯实验做起,等你能让那八个流水灯按照你的意愿随意流动时你已经入门了,你会发现单片机是多么迷人的东西啊,太好玩了,这不是在学习知识,而是在玩,当你编写的程序按你的意愿实现时你比做什么事都开心,你会上瘾的,真的。做电子类的人真的会上瘾。然后让数码管亮起来,这两项会了后,你已经不能自拔了,你已经开始考虑你这辈子要走哪一行了就是要这样练习,在写程序的时候你肯定会遇到很多问题,而这时你再去翻书找,或是问别人,当得到解答后你会记住一辈子的,知识必须用于现实生活中,解决实际问题,这样才能发挥它的作用,你自己好好想想,上了这么多年大学,天天上课,你在课堂上学到了什么?是不是为了期末考试而忙碌呢?考完得了90分,哈哈哈好高兴啊,下学期开学回来忘的一干二净,是不是?你学到什么了但是我告诉你单片机一旦学会,永远不会忘了。另外我再说说用汇编和C语言编程的问题。很多同学大一二就开设了C语言的课,我也上过我知道那时天天就是几乘几,几加几啊,求个阶乘啊。学完了有什么用?让你用C语言编单片机的程序你是不是就傻了?书上的东西我们必须要会运用。单片机编程用C语言或汇编语言都可以,但是我建议用C语言比较好,如果原来有C语言的基础那学起来会更好,如果没有,也可以边学单片机边学C语言,C语言也挺简单,只是一门工具而已,我劝你最好学会,将来肯定用得着,要不你以后也得学,你一点汇编都不会根本无所谓,但你一点C语言都不会那你将来会吃苦头。汇编写程序代码效率高,但相对难度较大,而且很罗嗦,尤其是遇到算法方面的问题时,根本是麻烦的不得了,现在单片机的主频在不断的提高,我们完全不需要那么高效率的代码,因为有高频率的时钟,单片机的ROM也在不断的提高,足够装得下你用C语言写的任何代码,C语言的资料又多又好找将来可移植性非常好,只需要变一个IO口写个温度传感器的程序在哪里都能用,所以我劝大家用C语言。
接下来的话,就是编程,说一下编程的学习过程,一个最好的办法就是模仿,你先找到一个别人的现成的程序能够编译生成代码,下载进去,看到现象,之后再自己写,如果有错误,对照正确的,比较一下,成功了之后,再往下学习.最烦的就是一种人,把别人的程序拿过来,直接编译,下载了之后,以为自己就会了,但是要让自己动手写的时候,又写不出来了,哪怕是抄写,也要熟悉一下的.这是一个必须的过程,最后需要达到一个什么程度呢那就是单片机最基本的定时器、中断、I/O口可以直接拿过来就写,不需要再翻书或者找别人的代码了。有的人说汇编的直接易于理解,但是你要是写100行的汇编可以,1000行以上呢? 做一个乘除法,汇编就不行了,C语言通用,移植方便,你学汇编,51单片机一套,avr单片机又是一套,msp430还不一样,但是C语言都是一样的,算法拿过来就可以了,改一下I/O口就可以用了,开发方便。
最后,给大家算一下,现在学习单片机的成本,以前我学习的时候,需要购买编程器等等,现在不用了。入门来讲,51单片机最好了,资料多,通用,简单.市场上现在比较好的有S系列的,C51系列的,STC系列的,当然了还有各个公司的增强型的.从学习的角度讲,推S系列和STC系列,可以ISP下载,我现在用的STC系列,最小开发系统:
单片机一个 8元
Max232一个 3元
串口线一根 6元(可以自制,就是3根线)
阻容元件 3元
晶 振 1元
发光二极管 2元
万能板 3元
加起来一共26元,当然了这些只是最基本的,如果自己开发的话,还需要有电烙铁、电源、焊锡等等.其他的资源,比如数码管、蜂鸣器液晶等等可以慢慢在扩充,软件呢,就更方便了,keil可以直接在网上下载,总之现在资源已经很丰富了,学习单片机已经不是什么难事了只要用心学,我相信一个月的时间应该可以差不多的了。
总结上面,只要你有信心,做事能坚持到底,有不成功不放弃的强烈意志,对于学个单片机来说就是件非常容易的事啦。
步 骤:
1.找本书大概了解一下单片机结构,大概了解就行。不用都看懂,又不让你出书的。(三天)
2.自己网上找些小电路类的资料练习设计外围电路。焊好后自己调试,熟悉过程。 (十天)
3.找学习板练习编写程序,学单片机就是练编程序,遇到不会的再问人或查书。我当初就是买了一块开发板,二十天就搞定了。
4.自己完全设计具有个人风格的电路,产品.....你已经是高手了....看到了吗?下功夫一个多月你就能成为高手,我就讲这么多了,学不学得会,下不下得了功夫就看你的了!
原地址:http://www.138dz.com/news209.html
0