找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 4072|回复: 36
打印 上一主题 下一主题
收起左侧

如何學好單片機

  [复制链接]
跳转到指定楼层
楼主
ID:109479 发表于 2016-3-18 11:38 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
學好單片機怎麼那麼難
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

沙发
ID:97249 发表于 2016-3-18 13:03 | 只看该作者
慢慢来,有志者事竟成
回复

使用道具 举报

板凳
ID:72781 发表于 2016-3-18 16:55 | 只看该作者
额。看不懂繁体字唉
回复

使用道具 举报

地板
ID:79544 发表于 2016-3-18 16:57 | 只看该作者
不难啊,多看视频教程,多动手写程序,多做实验。事半功倍!
回复

使用道具 举报

5#
ID:107114 发表于 2016-3-18 19:37 | 只看该作者
其实认真学也不难,,楼主加油。。。
回复

使用道具 举报

6#
ID:109592 发表于 2016-3-18 20:09 | 只看该作者
多看书,多动手,多练习
回复

使用道具 举报

7#
ID:109598 发表于 2016-3-18 21:07 | 只看该作者
看教程啊,网上一堆
回复

使用道具 举报

8#
ID:104472 发表于 2016-3-19 11:56 | 只看该作者
去繁就简,你先用简体字吧,这样学起来也就快多了
回复

使用道具 举报

9#
ID:109656 发表于 2016-3-19 12:57 来自手机 | 只看该作者
多看书啊,网上学习
回复

使用道具 举报

10#
ID:109707 发表于 2016-3-19 17:01 | 只看该作者
看看c51方面的书籍,买个开发板,多练习
回复

使用道具 举报

11#
ID:109742 发表于 2016-3-19 20:54 | 只看该作者
好好学,肯定能学好
回复

使用道具 举报

12#
ID:109750 发表于 2016-3-19 23:29 | 只看该作者
郭天祥十天学会单片机
回复

使用道具 举报

13#
ID:109833 发表于 2016-3-21 09:47 | 只看该作者
我已刚注册本论坛,也不知怎么能学会单片机,还是多多看单片机教程和视频吧。
回复

使用道具 举报

14#
ID:110047 发表于 2016-3-21 20:16 来自手机 | 只看该作者
实践与理论相结合,多动手!
回复

使用道具 举报

15#
ID:110047 发表于 2016-3-21 20:28 来自手机 | 只看该作者
如果有视频就好学了
回复

使用道具 举报

16#
ID:110104 发表于 2016-3-22 01:11 | 只看该作者
学单片机主要还是实际动手操作
回复

使用道具 举报

17#
ID:1 发表于 2016-3-22 15:39 | 只看该作者
我建议你去看看这个 单片机教程:http://www.51hei.com/bbs/mcu-xuexi-1.html
回复

使用道具 举报

18#
ID:96682 发表于 2016-3-27 12:40 | 只看该作者
高手都是松香烟中熏出来的,书堆里泡出来的,孤寂中熬过来的.....,哎,越陷越深也不及别人的皮毛!
LZ,还是想清楚了再跳进坑里来吧!
回复

使用道具 举报

19#
ID:110987 发表于 2016-3-27 12:48 | 只看该作者
买一本郭天祥的书和实验板,从0开始就好,加油
回复

使用道具 举报

20#
ID:111003 发表于 2016-3-27 14:11 | 只看该作者
我也是,正在学系啊
回复

使用道具 举报

21#
ID:111015 发表于 2016-3-27 15:39 | 只看该作者
我的有本书叫作《爱上单片机》还不错
回复

使用道具 举报

22#
ID:111019 发表于 2016-3-27 15:53 | 只看该作者
1、熟悉单片机的原理,结构;
2、学好数电,模电,为设计电路打好基础;
3、熟练使用C语言,多学习别人的程序;
4、对操作系统原理有一定的了解;
5、Protel至少要有点基础;
6、要实际动手调试电路的能力。

学习单片机的步骤

当前的单片机种类很多,但是 51 是最基础的,因此单片机的学习最好也是从 51 开始,不仅容易上手,而且相当实用。然而 51 单片机毕竟过于基础,后来的很多单片机在功能上都有很大的扩展,因此按照我们实验室多数人的路线接下来大多数人会学习 AVR 单片机, AVR 单片机在功能上较 51 有很大提升,集成了 A/D 、快速 PWM 等很多实用的功能,而且和很多大型的单片机在功能上有很多类似之处,因此如果以后还想掌握其他单片机 AVR 无疑是一个很好的跳板。

学习的过程

学习单片机最终要的是当然是练,我所说的学习跟课堂上的单片机学习不同,我以前也看过一些单片机教材,有些教材讲的是单片机的工作原理和内部结构,这些东西对于我们暂时并不需要,等以后开课的时候在学习好了。现在要学习的是暂时抛开内部结构原理不谈,如何能用单片机写一些简单的小程序,是从实用性的角度出发,网上有一种说法称之为先实践后理论的学习方法。

因此我的观点如下,单片机的硬件结构首先要有一个基本的了解,最起码要知道各引脚的功能、区别,能自己动手搭一个单片机的最小系统,然后就可以直接从程序入手,程序最好还是用 C 语言编程,从简单的跑马灯做起,逐渐深入,陆续可以做一些数码管、液晶、 DS1302 、 DS18B20 等电子元器件的应用,在深入就可以结合一些具体实例扩展一些中断、串口通讯等功能。还有一点要声明的是单片机里用到的 C 语言其实很有限,课堂上学习 C++ 的很大一部分内容在初期单片机编程中都用不到,因此没必要因为觉的自己的 C 语言基础不是很好而对单片机望而止步!

学习的工具

         软件方面方面, 51 单片机用的是 KEIL 软件,这个软件在学校图书馆软件下载和其他网站上都有,具体用法自己查找相关资料, AVR 的软件就比较多了,我用的是 CVAVR ,另外还有 ICCAVR 等多款编译软件,这要看个人喜好了,建议有了一定的 51 基础再学。另外就是烧写软件,烧写软件的作用就是将编译器生成的 HEX 文件烧写至单片机里,这要配合下载线实用,如果有并口的话最好用并口下载线,软件最好用广州双龙的 SLISP 软件,如果是笔记本没有并口的话则要自己买一个下载器了,名称为 USBASP ,网上电子市场有卖 20 块钱左右,软件会随光盘自带。

         硬件方面,首先是要有单片机,对于单片机有一点要注意, 51 单片机最好买 89S51 、 89S52 这两种型号,上面我所说的烧写程序是 ISP 方式,这两种单片机支持 ISP 下载,所以如果买其他型号的烧写程序可能会不太方便, AVR 单片机常用的就是 ATmega16L 其它型号的区别也不是很大,甚至有些兼容。至于单片机开发板,目前的价格都很贵,从一百到几百不等,不过像上次学校里广告的那个六十多块钱的最好还是免了,没什么作用。能买一块当然好,没有的话也不要紧,自己动手买个电路板搭一下也很方便,引出 ISP 接口,烧写程序十分容易,然后将 I/O 口引出扩展也很方便。     

学习单片机的其它几个注意点:   

1 .理论与实践并重
     对一个初学单片机的人来说,如果按教科书式的学法,上来就是一大堆指令、名词,学了半天还搞不清这些指令起什么作用,也许用不了几天就会觉得枯燥乏味以致半途而废。所以学习与实践结合是一个好方法,边学习、边演练,循序渐进,这样用不了几次就能将所用到的指令理解、吃透、扎根于脑海,甚至 “ 根深蒂固 ” 。也就是说,当你学习完几条指令后 ( 一次数量不求多,只求懂 ) ,接下去就该做实验了,通过实验,使你感受到刚才的指令产生的控制效果,眼睛看得见 ( 灯光 ) 、耳朵听得到 ( 声音 ) ,更能深刻理解指令是怎样转化成信号去实现控制的,通过实验看到自己所学的成果不仅有一种成就感也能提升你对单片机的兴趣。说句实在话,单片机与其说是学出来的,还不如说是做实验练出来的,何况做实验本身也是一种学习过程。因此边学边练的学习方法,效果特别好。
    2 .合理安排时间持之以恒
     学习单片机不能 “ 三天打鱼、两天晒网 ”   ,要有持之以恒的毅力与决 4 心。学习完几条指令后,就应及时做实验,融汇贯通,而不要等几天或几个星期之后再做实验,这样效果不好甚至前学后忘。另外要有打 “ 持久战 ”   的心理准备,不要兴趣来时学上几天,无兴趣时凉上几星期。学习单片机很重要的一点就是持之以恒。

3 .遇到问题耐心检查

单片机有软硬件两方面的内容,有时一个程序怎么调都不出效果,然而从理论分析却又是对的,这是就要仔细找原因了,学习单片机经常碰到很多问题,有时一两天都不能解决,这是就要有耐心,从底层找起,相信每找出一个错误都会有一个新的收获。切不可轻言放弃!!!
    4 .对只短暂学过一遍的知识,充其量只比浮光掠影稍好。因此,较好的方法是过一段时间后 (1-2 个月 ) 再重新学一遍,学过的知识要经常运用,这样反复循环几次就能彻底弄懂消化,永不忘却。
    5 .要进行适当投资购买实验器材及书籍资料
     单片机技术含金量高,一旦学会后,给你带来的效益当然也高,无论是应聘求职还是自起炉灶开厂办公司,其前景都光明无限。因此在学习时要舍得适当投资购买必要的学习、实验器材。另外还要经常去科技图书店看看,购买一些适合自己学习、提高的书籍。一本好的书籍真的很重要,可以随时翻阅,随时补充不懂或遗忘的知识。

学习使用单片机就是理解单片机硬件结构,以及内部资源的应用,在汇编或C语言中学会各种功能的初始化设置,以及实现各种功能的程序编制。
第一步:数字I/O的使用
使用按钮输入信号,发光二极管显示输出电平,就可以学习引脚的数字I/O功能,在按下某个按钮后,某发光二极管发亮,这就是数字电路中组合逻辑的功能,虽然很简单,但是可以学习一般的单片机编程思想,例如,必须设置很多寄存器对引脚进行初始化处理,才能使引脚具备有数字输入和输出输出功能。每使用单片机的一个功能,就要对控制该功能的寄存器进行设置,这就是单片机编程的特点,千万不要怕麻烦,所有的单片机都是这样。

第二步:定时器的使用   学会定时器的使用,就可以用单片机实现时序电路,时序电路的功能是强大的,在工业、家用电气设备的控制中有很多应用,例如,可以用单片机实现一个具有一个按钮的楼道灯开关,该开关在按钮按下一次后,灯亮3分钟后自动灭,当按钮连续按下两次后,灯常亮不灭,当按钮按下时间超过2s,则灯灭。数字集成电路可以实现时序电路,可编程逻辑器件(PLD)可以实现时序电路,可编程控制器(PLC)也可以实现时序电路,但是只有单片机实现起来最简单,成本最低。
定时器的使用是非常重要的,逻辑加时间控制是单片机使用的基础。

第三步:中断

单片机的特点是一段程序反复执行,程序中的每个指令的执行都需要一定的执行时间,如果程序没有执行到某指令,则该指令的动作就不会发生,这样就会耽误很多快速发生的事情,例如,按钮按下时的下降沿。要使单片机在程序正常运行过程中,对快速动作做出反应,就必须使用单片机的中断功能,该功能就是在快速动作发生后,单片机中断正常运行的程序,处理快速发生的动作,处理完成后,在返回执行正常的程序。中断功能使用中的困难是需要精确地知道什么时候不允许中断发生(屏蔽中断)、什么时候允许中断发生(开中断),需要设置哪些寄存器才能使某种中断起作用,中断开始时,程序应该干什么,中断完成后,程序应该干什么等等。
中断学会后,就可以编制更复杂结构的程序,这样的程序可以干着一件事,监视着一件事,一旦监视的事情发生,就中断正在干的事情,处理监视的事情,当然也可以监视多个事情,形象的比喻,中断功能使单片机具有吃着碗里的,看着锅里的功能。
以上三步学会,就相当于降龙十八掌武功,会了三掌了,可以勉强护身。

第四步:与PC机进行RS232通信

单片机都有USART接口,特别是MSP430系列中很多型号,都具有两个USART接口。USART接口不能直接与PC机的RS232接口连接,它们之间的逻辑电平不同,需要使用一个MAX3232芯片进行电平转换。

USART接口的使用是非常重要的,通过该接口,可以使单片机与PC机之间交换信息,虽然RS232通信并不先进,但是对于接口的学习是非常重要的。正确使用USART接口,需要学习通信协议,PC机的RS232接口编程等等知识。试想,单片机实验板上的数据显示在PC机监视器上,而PC机的键盘信号可以在单片机实验板上得到显示,将是多么有意思的事情啊!

第五步:学会A/D转换

MAP430单片机带有多通道12位A/D转换器,通过这些A/D转换器可以使单片机操作模拟量,显示和检测电压、电流等信号。学习时注意模拟地与数字地、参考电压、采样时间,转换速率,转换误差等概念。
使用A/D转换功能的简单的例子是设计一个电压表。

第六步:学会PCI、I2C接口和液晶显示器接口

这些接口的使用可以使单片机更容易连接外部设备,在扩展单片机功能方面非常重要。

第七步:学会比较、捕捉、PWM功能

这些功能可以使单片机能够控制电机,检测转速信号,实现电机调速器等控制起功能。
如果以上七步都学会,就可以设计一般的应用系统,相当于学会十招降龙十八掌,可以出手攻击了。

第八步:学习USB接口、TCP/IP接口、各种工业总线的硬件与软件设计学习USB接口、TCP/IP接口、各种工业总线的硬件与软件设计是非常重要的,因为这是当前产品开发的发展方向。
回复

使用道具 举报

23#
ID:111035 发表于 2016-3-27 17:58 | 只看该作者
单片机要学好,主要还是靠实践,有条件的就买个单片机开发板,没条件的就用PROTEUS等仿真,先照着书上的操作做,这个一定要多练,做着做着你就懂了
回复

使用道具 举报

24#
ID:111090 发表于 2016-3-28 10:07 | 只看该作者
单片机视频+开发板
回复

使用道具 举报

25#
ID:111166 发表于 2016-3-28 17:28 | 只看该作者
任何事都是从难道简单的  慢慢来
回复

使用道具 举报

26#
ID:97438 发表于 2016-3-28 21:55 | 只看该作者
先买个开发板,买本C语言的书,边看视频变看书,等看完视频,就入门了、
回复

使用道具 举报

27#
ID:111214 发表于 2016-3-28 22:47 | 只看该作者
咳咳,有条件的话可以买个开发板三十多的就行,不然自己焊接个最小系统,我是刚开学的时候社团学长帮我们买材料带我们焊的,还能练练焊接,挺好的
回复

使用道具 举报

28#
ID:111634 发表于 2016-3-31 21:58 | 只看该作者
一开始,还是先Proteus虚拟仿真,比买开发板可操作性好。建议买张志良主编的《单片机应用项目式教程——基于Keil和Proteus》(机械工业出版社)。可在PC机上,不涉及具体硬件实验设备,虚拟单片机应用电路和目标程序调试运行。既能演示观赏,又可边学边练、实验操作。电路与程序真实可靠可信可行,能直接用于或移植于实际工程项目。该书程序中每条指令均有注解,便于理解。
回复

使用道具 举报

29#
ID:111714 发表于 2016-4-1 08:55 | 只看该作者
有开发板,边做边学是最快的     
回复

使用道具 举报

30#
ID:112162 发表于 2016-4-4 14:57 | 只看该作者
啥都不说,先大致了解下单片机,用一个星期吧,然后直接做东西,做东西的时候遇到问题解决问题,这样是最快的,在实践中是最快的方法学东西的。
回复

使用道具 举报

31#
ID:112184 发表于 2016-4-4 19:41 | 只看该作者
首先你要一块单片机学习板!
回复

使用道具 举报

32#
ID:107061 发表于 2016-4-4 23:31 | 只看该作者
实践才是真理,别顾着学习书上的知识
回复

使用道具 举报

33#
ID:109616 发表于 2016-4-5 09:59 | 只看该作者
首先要有开发板
回复

使用道具 举报

34#
ID:112296 发表于 2016-4-5 11:15 | 只看该作者
首先了解单片机,然后熟悉基本知识。要多看实例。还要动手做。慢慢就好了
回复

使用道具 举报

35#
ID:112298 发表于 2016-4-5 13:24 | 只看该作者
多学,多看,多动手,看例子。
回复

使用道具 举报

36#
ID:110895 发表于 2016-4-5 14:05 | 只看该作者
多看,多学,多练!
回复

使用道具 举报

37#
ID:107781 发表于 2016-4-10 11:03 | 只看该作者
多动手制作小项目,看视频学习c语言!
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表