- 1、本文档共43页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第3章51单片机对中断的控制.PDF
第 3 章 51 单片机对中断的控制
中断的概念很容易理解,例如我们在看书的时候,电话铃突然响了,这时我们在书中
夹一个书签,然后去接电话,接完电话以后,根据书签的指示,重新开始阅读。可以说这
个电话铃响是一个中断源,中断了我们的阅读。当中断任务完成以后,继续进行阅读,这
51
就是一个中断响应的过程。单片机处理的方式与此是非常类似的,本章就来学习 单片机
如何处理这一过程。
3.1 流水灯汇编程序的改进
51
也许很多读者疑惑不解,本章明明学习的是 单片机的中断,为什么还要再去讨论
流水灯呢?因为中断程序的执行,还是在流水灯的基础上实现的。另外,在本章给大家提
供一组更灵巧的流水灯编程方法。而本节中非常重要的一点是讲解软件仿真的方法。无论
是单片机编程,还是其他软件类的编程,软件仿真将会帮助我们快捷地调试出程序。
3.1.1 流水灯程序改进的思路
3-1 2
流水灯程序是按如图 所示的顺序执行的,第 章的关于流水灯的编程也是根据这
2
个图编写出来的。程序虽然直观,但是代码就显得有点臃肿,可以说,第 章的流水灯是
重复性的引用相同的语句,这样的代码效率是非常低的。那么怎样写出优质的程序呢?
图3-1 流水灯执行流程
3-2 P1 0
如图 所示,从中能不能找出 口数值变化的规律呢?按照箭头的指示,在图中
P1 FEH 7FH
是在不断地向左移动,而 的状态从 变化至 ,每次都是执行向右移动一位,右
0
边最高位重新返回到第 位,这种移动方法称之为循环右移。
3-3 P1
如图 所示,归纳了 端口的变化情况,经过此循环左移,程序完成了一次流水,
让这个过程不断的重复下去,就可以实现流水灯功能了。
C
非常幸运的是,汇编语言和 语言都有关于左移的程序语句来供我们使用,那么怎样
第3 章 51 单片机对中断的控制
3-4
来完成整个过程呢?请看流程图,如图 所示。
P1 16
P1.7 P1.6 P1.5 P1.4 P1.3 P1.2 P1.1 P1.0 值( 进制)
1 1 1 1 1 1 1 0 FEH
1 1 1 1 1 1 0 1 FDH
1 1 1 1 1 0 1 1 FBH
1 1 1 1 0 1 1 1 F7H
1 1 1 0 1 1 1 1 EFH
文档评论(0)