陕理工在线会员空间(仿校内)  |   陕理工2008新生报考咨询室  |   论坛文化衫订购  |  SnutV视频分享  |  教务在线登陆

陕理工在线衮雪论坛's Archiver

ytaoke 发表于 2007-12-27 15:12

如何学好单片机

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

ytaoke 发表于 2008-1-4 16:31

.............

yzsmile 发表于 2008-3-12 10:20

51单片机已经不能满足现在系统的设计要求

一样,在学校里我也学习51单片机,现在实际工作中,高性能的单片机应用更加广泛,比如AVR系列单片机,在学好汇编的同时,加大从汇编到C语言的转变,C语言写下位机软件渐成流行趋势,刚进公司,大家都在使用汇编,而我发现了C语言其可读性,和易操作性高,转而加大学习C语言的底层语言编写,已经顺利在系统设计中用到,并取得很好的效果!

页: [1]
如意杀毒

Powered by Discuz! Archiver 6.1.0  © 2001-2007 Comsenz Inc.