完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
单片机中断系统的优点:
1、实现实时处理。 2、实现分时操作。 3、进行故障处理。 4、待机状态的唤醒。单片机嵌入式系统的应用中,为了减少电源的功耗,当系统不处理任何事物,处于待机状态时,可以让单片机工作在休眠的低功耗方式。通常,恢复到正常工作方式往往也是利用中断信号来唤醒。 中断处理过程: 中断系统中,MCU正常情况下运行的程序称为 主程序 ,把产生申请中断信号的单元和事件称为 中断源 ,由中断源向MCU所发出的申请中断信号称为 中断请求 ,MCU接受中断申请并停止现行程序的运行而转向为中断服务称为 中断响应 ,为中断服务的程序称为 中断服务程序 ,现行程序打断的地方称为 断点 ,执行完中断处理程序后返回断点处继续执行主程序称为 中断返回 。 其中K就是断点,由于中断服务程序执行完后仍要返回主程序,因此,在执行中断处理程序之前,要将主程序中断点处的地址保存,即中断返回后要执行的命令地址,这个地址就是程序计数器PC的值。这个过程称为 保护断点 。又由于MCU在执行中断处理程序时,可能会使用和改变主程序使用过的寄存器、标志位、甚至内存单元,因此,在执行中断服务程序前,还要把有关的数据保护起来,称为 中断现场保护 。在MCU执行完中断处理程序后,又要恢复原来的数据,并返回主程序的断点处继续执行,称为 恢复现场 。 中断过程中,断点的保护和恢复操作是由单片机内部硬件自动实现,即保存和恢复计数器PC。 中断现场的保护和恢复,需要自己设计中断处理程序时编程实现。在使用中断时,要认真和仔细考虑中断现场的保护和恢复。 中断的三个概念: 中断源、 中断信号、 中断向量(中断入口地址);系统有若干个中断源,每个中断源对应一个中断向量,中断向量只是中断服务程序的一个入口地址,所有中断向量连续存放在固定区域,构成了中断向量区。 中断优先级和中断嵌套: 中断优先级的概念是针对有多个中断源同时申请中断时,MCU如何响应中断,以及响应哪个中断而提出来的。 中断优先级的确定: ▋ 某中断对应的中断向量地址越小,其中断优先级越高(硬件确定方式) ▋通过软件对中断控制器的设定,改变中断的优先级(用户可设置方式,但是AVR不支持) 一些单片机(如8051)的硬件能够自动实现中断嵌套的处理,即单片机内部的硬件电路能够识别中断的优先级,并根据优先级的高低,自动完成对高优先级中断的优先响应,实现中断的嵌套处理。 ** AVR单片机,硬件系统不支持自动实现中断嵌套的处理。如果在系统设计中,必须使用中断嵌套处理,则需要由用户编写相应的程序,通过软件设置来实现中断嵌套的功能。 中断的响应条件与中断控制: 1)、中断的屏蔽:通常存在一些特殊的标志位用于控制开放或关闭(屏蔽)MCU对中断响应处理,这些标志称为中断屏蔽标志位或中断允许控制位。注意,屏蔽中断信号,不是取消。 中断源分为:非屏蔽中断、可屏蔽中断、软件中断。**软件中断是指CPU具有相应的软件中断指令,当MCU执行这条指令时能进入软件中断服务,以完成特定的功能(通常用于调试),但是一般的单片机不具备软件中断的指令。 2)、中断控制与终端响应条件:单片机中,对应每一个中断源都有一个相应的中断标志位,该中断标志位将占据中断控制器中的一位。当单片机检测到某一中断源产生符合条件的中断信号时,其硬件会自动将该中断源对应的中断标志位置“1”,这就意味着有中断信号产生了,向MCU申请中断。 中断标志位置“1”,并不代表MCU一定响应该中断。为了合理控制中断响应,在单片机内部还有相关的用于中断控制的中断允许标志位。 最重要的一个中断允许标志位是全局中断允许标志位。当该标志位为“0”,表示禁止MCU响应所有的可屏蔽中断的响应。此时不管是否有中断产生,MCU不会响应任何中断请求。只有全局中断允许标志位为“1”,MCU才响应。 全局中断标志位为“1”,MCU响应可屏蔽中断,每个中断源对应一个各自独立的中断允许标志位。当某个中断允许标志位为“0”时,表示MCU不响应该中断的中断申请。 MCU响应一个可屏蔽中断源的中断请求的条件是:响应A中断 = 全局中断允许标志位 AND 中断A允许标志 AND 中断A标志;这些标志位全部要置“1”。 所以,只有当全局中断允许标志位为“1”(由用户软件设置),中断A允许标志位为“1”(由用户软件设置),中断A标志位为“1”(符合中断条件时由硬件自动设置或由用户软件设置)时,MCU才会响应中断A的请求信号(如果有多个中断请求信号同时存在的情况下,还要根据中断A的优先级来确定)。 |
|
|
|
只有小组成员才能发言,加入小组>>
2496 浏览 0 评论
1059浏览 2评论
678浏览 1评论
440浏览 0评论
175浏览 0评论
292浏览 0评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-10 16:34 , Processed in 1.183394 second(s), Total 80, Slave 62 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号