找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 5633|回复: 0
收起左侧

ATMEGA16(L)的中断系统使用教程(共9页)

[复制链接]
ID:302523 发表于 2018-4-5 20:40 | 显示全部楼层 |阅读模式
什么是“中断”?顾名思义中断就是中断某一工作过程去处理一些与本工作过程无关或间接相关或临时发生的事件,处理完后,则继续原工作过程。比如:你在看书,电话响了,你在书上做个记号后去接电话,接完后在原记号处继续往下看书。如有多个中断发生,依优先法则,中断还具有嵌套特性。又比如:看书时,电话响了,你在书上做个记号后去接电话,你拿起电话和对方通话,这时门铃响了,你让打电话的对方稍等一下,你去开门,并在门旁与来访者交谈,谈话结束,关好门,回到电话机旁,拿起电话,继续通话,通话完毕,挂上电话,从作记号的地方继续往下看书。由于一个人不可能同时完成多项任务,因此只好采用中断方法,一件一件地做。
类似的情况在单片机中也同样存在,通常单片机中只有一个CPU,但却要应付诸如运行程序、数据输入输出以及特殊情况处理等多项任务,为此也只能采用停下一个工作去处理另一个工作的中断方法。在单片机中, “中断”是一个很重要的概念。中断技术的进步使单片机的发展和应用大大地推进了一步。所以,中断功能的强弱已成为衡量单片机功能完善与否的重要指标。中断系统的引入解决了微处理器和外设之间数据传输速率的问题,提高了微处理器的实时性和处理能力。
只有当微处理器处于中断开放时,才能接受外部的中断申请。一个完整的中断处理过程包括中断请求、中断响应、申断处理和中断返回。 中断请求是中断源向微处理器发出的信号, 要求微处理器暂停原来执行的程序并为之服务。中断请求可以是电平信号或者脉冲信号。中断请求信号一般保持到微处理器作出响应为止。 微处理器在检测到中断请求信号之后, 将中止当前正在执行的程序, 并对断点实行保护,即将断点的地址 (PC值)推入堆栈保护,以便在中断结束时从堆栈弹出断点地址,以便继续执行中断前的任务。然后,微处理器由中断地址表获取中断入口地址,并将此地址送入程序计数器 (PC) ,从而开始执行中断服务程序。在中断服务程序里一般需要完成现场保护、开关中断、执行中断服务程序、现场恢复和中断返回等工作。

7.1  ATMEGA16(L)的中断系统

ATMEGA16(L)具有20个中断源和1 个复位中断, 在中断源中处于低地址的中断具有高的优先级。所有中断源都有独立的中断使能位,当相应的使能位和全局中断使能位(SREG 寄存器的位 I) 都置位时, 中断才可以发生, 相应的中断服务程序才会执行。 表 7-1为 ATMEGA16
(L)的中断源。
0.jpg 0.jpg
一个中断产生后,SREG 寄存器的全局中断使能位I将被清零,后续中断被屏蔽。用户可以在中断服务程序里对I置位从而开放中断。 在中断返回后,全局中断位I将重新置位。当程序计数器指向中断向量开始执行相应的中断服务程序时,对应中断标志位将被硬件清零。当一个符合条件的中断发生后,如果相应的中断使能位为0,中断标志位将挂起并一直保持到中断执行或者被软件清除。如果全局中断标志I被清零,则所有的中断都不会被执行直到I置位。然后,被挂起的各个中断按中断优先级依次被处理。

完整的pdf格式文档51黑下载地址(共9页):
第7章 ATMEGA16_L_的中断系统使用.pdf (313.01 KB, 下载次数: 35)
回复

使用道具 举报

ID:64696 发表于 2018-7-20 11:23

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

本版积分规则

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

Powered by 单片机教程网

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