在线咨询
eetop公众号 创芯大讲堂 创芯人才网
切换到宽版

EETOP 创芯网论坛 (原名:电子顶级开发网)

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

快捷导航
搜帖子
芯片精品文章合集(500篇!)    创芯人才网--重磅上线啦!
查看: 8223|回复: 39

[转贴] (转贴)学习单片机不可欠缺的八大步骤

[复制链接]
发表于 2013-12-23 22:33:39 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?注册

x
原帖地址:http://www.21ic.com/app/MCU/201211/152694.htm
625560_1354500785RRG0.png

学习使用单片机就是理解单片机硬件结构,以及内部资源的应用,在汇编或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接口、各种工业总线的硬件与软件设计是非常重要的,因为这是当前产品开发的发展方向。

  到此为止,相当于学会15招降龙十八掌,但还不到打遍天下无敌手的境界。即使如此,也算是单片机大虾了。

发表于 2013-12-24 11:44:48 | 显示全部楼层
学习了
发表于 2013-12-24 20:57:18 | 显示全部楼层
我已经退出单片几江湖多年,现在投身模拟领域
 楼主| 发表于 2013-12-25 09:46:57 | 显示全部楼层
回复 3# ramanujancn


   原来您是这篇文章的作者啊....好厉害....:另外,我已经表明是转贴,并贴上原帖网址....话说您的这篇文章被转了好几次...我找了好几次才找到源网址....呵呵
发表于 2013-12-25 23:19:54 | 显示全部楼层
过于片面吧,个人觉得把微机原理学好就行了。
 楼主| 发表于 2013-12-26 08:42:08 | 显示全部楼层
回复 5# zjz0319

      上文将单片机具体实现的功能分为八大类,是十分恰当的.如果学会实现这八种功能,基本上算是能够开发系统级的单片机应用了。       微原还是比较理论的知识,主要讲的是计算机或者硬件如何执行汇编代码,和偏向工程实践的单片机开发是属于不同的方向,不能不说微原里面有学习单片机不可缺少的知识,但是单片机绝不是仅仅包括微机原理。      从您考虑问题的角度出发,学习单片机至少要掌握:模电 数点 C编程或汇编编程 这三各方面的知识,如果要学的好一点:还需要学习微原 学一点数字信号处理 另外需要重大量的工程实践中获得经验和教训。
      单片机的学习也不仅仅是学习理论知识,他要设计电路图的设计,PCB的设计,焊接电路,软硬件调试,等等等等,不一而足。单片机是一个系统级的大工程,麻雀虽小五脏俱全,因此仅仅掌握一门微原就想搞定单片机学习的所有问题,这是不现实的。。。。
      ...呵呵,个人简介,仅供参考。
发表于 2013-12-26 22:38:55 | 显示全部楼层
不好意思,我不是作者。不过我混了单片几很多年了。
 楼主| 发表于 2013-12-27 08:41:44 | 显示全部楼层
回复 7# ramanujancn


   那也算是大神了...能否将写点您的经验贴出来分享分享....?
发表于 2013-12-27 21:58:18 | 显示全部楼层
好,我找个时间写点心得体会贴出来回馈大家!
发表于 2014-1-6 17:24:50 | 显示全部楼层
到第八步可以过度到fpga或者arm了,单片机的速度还是劣势,但是胜在方案性价比
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

站长推荐 上一条 /1 下一条

关闭

小黑屋| 关于我们| 联系我们| 在线咨询| 隐私声明| EETOP 创芯网
( 京ICP备:10050787号 京公网安备:11010502037710 )

GMT+8, 2024-3-29 13:04 , Processed in 0.029049 second(s), 7 queries , Gzip On, Redis On.

eetop公众号 创芯大讲堂 创芯人才网
快速回复 返回顶部 返回列表