51之中断定时器蜂鸣器.pdf

  1. 1、本文档共24页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多

中断

理解中断概念:

豆豆主任务是看书,中断时接电话。电话是随机打来的,①中断是随机产生

的;②接完电话后,豆豆回去继续看书;再说电话,③外部来了电话,电话处理

了这个信之后,电话自动铃响了,这说明电话这个设备处理了部分的信号,符合

条件,产生了中断请求。而非豆豆让电话响的,或控制电话响的。在电话响之前,

豆豆根本没有处理电话接受到的任何信号,中断的产生,是电话处理产生的。④

来电话了,这个中断,会产生电话铃响,这个标志位。

豆豆也就是通过电话铃响(标志位),才知道有了个中断;也就是通过电话

铃响(标志位),知道这个中断是电话。如果是门的话,那通过门铃响了,就知

道有个中断产生了,也知道这个中断是门了。

我们把能够产生中断的设备称为信号源。在单片机里面,产生中断的可能是

单片机内部的模块,也可能是单片机IO口外部输入的信号。

中断响应过程:

Cpu正常执行主程序时,突然一个时间点,中断源检测出符合中断条件的信

号,向CPU发生中断请求。CPU得到这种中断请求之后,进行中断响应,执行该

中断的中断服务程序。然后,中断返回,CPU继续执行主程序。

中断的作用:

*独立按键和外部中断按键,就是一个很明显的对比。检测独立按键时,我

们需要在主程序里面,重复的检测IO口。而有了外部中断按键,我们就不用反

复的检测扫描IO口了,因为当按键按下去的时候,单片机会产生一个中断告诉

CPU。

有了中断,定时器可以计定时器的数,CPU可以做CPU的工作。当定时器完

成工作之后,会通过中断告诉CPU,然后再由CPU来处理。同样,像电源掉电、

硬件故障等突发情况,都可以通过中断的方式,告诉CPU。

我们的很多系统都要求实时性。“想象一下,一个机床正在飞速运转,这时

有人的手被卷进去了,然后你迅速地通过电脑给单片机发一串指令。如果你的单

片机系统不能实时地处理这个指令,而是每隔一定的时间,去查询下有指令进来

了没,那可能指令进来的时候,你的查询时间还没到,所以单片机没执行指令,

直到查询时间到了,这时再去处理,人的手已经掉下来了罢了。”

我们知道,电脑是可以同时打开很多个软件的(实时多任务),就是因为有

定时器中断的存在,才实现了这一效果。每隔一定的时间,产生一个中断,然后

CPU就跳转到另一个软件中,执行另一个软件的操作。

这就是80C51内核,也就是大家手里51单片机的中断系统结构框图。

最左边是中断源,中间这些开关是中断的各种设置寄存器。

51的中断有2个优先级别,用来将每个中断进行分级,如果多个中断同时发生

的话,先处理高级的,再处理低级的中断。(不管它的自然优先级是怎么样的)

如果优先级别相同的中断,就按照自然优先级(也就是系统默认的优先级)来响

应中断。由此,51单片机能够在低级中断里面再嵌套一个高级中断。

中断源:

51单片机共有5个固定的中断源,分别是外部中断0、定时器T0中断、外部中

断1、定时器T1中断,串口中断RI/TI。

外部中断0,是由IO口P3.2输入的信号来产生的,如果外部给P3.2一个低电

平(电平触发)或下降沿(边沿触发)信号,则单片机就会产生一个外部中断0

的信号。

外部中断触发方式:

再有就是,定时器从初值计数到最大值时,定时器会溢出,这是就会产生一个定

时器中断。

还有就是,当电脑通过串口给单片机的串口引脚发送一个字符的时候,当单片机的串口模块,

接收完了这个字符,就会产生一个中断。串口模块发送完一个字符之后,也会产生一个中断。

每个中断源的自然优先级

刚才讲了,51单片机的中断系统能够通过寄存器设置来决定开启或关断某个中断源,这个

寄存器就是IE。

我们知道,寄存器就是我们编程序的时候,可以操作了。也就意味着,我们可以通过编程,

来选择开或关哪个中断源了。必须同时满足:

1.总中断EA是开启的

2.中断源开关是开启的

中断源才会向CPU发出中断请求,IE寄存器,是可以位寻址的,也就是说,我们可以通过

sbit,定义它的每个位,并进行位操作,像IO口一样,置1,或清0。

还有一个寄存器IP,用来,设置各个中断的优先级别。

接下来,我们就来分析一下,中断的响应过程:

首先是中断源发出中断请求;

一般有两种情况:

yi.如果是单片机外部输入的信号,那么我们需要对IO口进行采样,判断是否符合中断

条件,然后把该中断相应的中断标志位置1。

文档评论(0)

177****7360 + 关注
官方认证
内容提供者

中专学生

认证主体宁夏三科果农牧科技有限公司
IP属地宁夏
统一社会信用代码/组织机构代码
91640500MABW4P8P13

1亿VIP精品文档

相关文档