- 1、本文档共80页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
河北工业大学单片机课第5章 输入输出和中断
中断过程 外设发出中断请求信号 CPU(有条件)响应中断 进行中断服务 (执行中断服务程序,执行响应I/O操作) 中断返回 (继续执行原程序) ? 利用DMAC(DMA控制器)实现成组、大批量的数据在内存和外设之间的快速传送。 ? DMA过程: ? 优点:速度快 ? 缺点:硬件复杂,成本增加 5.2.4 DMA传送方式 DMA过程 ?外设向DMAC发DMA申请 ? DMAC向CPU发BUSRQ ? CPU发BUSAK响应 ? DMAC发存储器地址和读写信号 ? DMA控制结束,恢复CPU对总线控制 BUS 外 设 接 口 DMAC CPU 存储器 ① ② ③ 存储器 CPU I/O接口 外 设 DMA 控制器 5.3.1 中断的定义及必要性 定义:所谓中断是指中央处理器CPU正在处理某件事的时候,外部发生了某一事件,请求CPU迅速处理,CPU暂时中断当前的工作,转入处理所发生的事件,处理完后,再回到原来被中断的地方,继续原来的工作。这样的过程称为中断。 必要性及应用 中断功能便于实现 1.分时操作 2.实时处理 3.故障处理 4.主机与外设之间的速度匹配 CPU和外设同时工作;CPU可以通过分时操作启动多个外设同时工作,统一管理。大大提高了CPU的利用率,也提高了输入、输出的速度。 当计算机用于实时控制时,中断是一个十分重要的功能。现场的各个参数、信息,需要的话可在任何时候发出中断申请,要求CPU处理;CPU就可以马上响应(若中断是开放的话)加以处理。这样的及时处理在查询的工作方式是做不到的。 计算机在运行过程中,往往会出现事先预料不到的情况,或出现一些故障:如电源突跳,存储出错,运算溢出等等。计算机就可以利用中断系统自行处理,而不必停机或报告工作人员。 ? 外设中断请求 ? 实时时钟中断请求 ? 控制对象中断源 ? 故障引起的中断 ? 人为设置的中断 5.3.2 中断源 人为设置的中断,不是随机的,故称为自愿中断。 强迫中断 引起的中断都是随机。 5.3.3 中断的分类 1. 可屏蔽中断(Maskable Interrupt) 2. 非屏蔽中断(Non Maskable Interrupt) 3. 软件中断(Software Interrupt) INT NMI MCS-51就是具有可屏蔽中断功能的一类CPU。 中断类型 中断请求信号 可屏蔽中断 INT中断请求输入线上输入 非屏蔽中断 NMI中断请求输入线上输入 软件中断 用中断指令使CPU响应中断 中断类型 CPU响应中断的方式 可屏蔽中断 开中断指令 响应 关中断指令 屏蔽INT上来的低电平中断请求 非屏蔽中断 CPU必须予以响应,不能由软件指令屏蔽 软件中断 CPU只要执行这种指令,完成相应的中断功能 5.3.4 中断系统的功能 ? 中断系统 包括中断源的产生、中断判优、中断查询、中断处理等实现这一全过程的硬件和软件。 ?中断技术 对中断全过程的分析、研究及实现的方法 中断判优 ?多中断源同时发出中断请求,CPU根据中断的优先级判断优先执行的中断请求。 ?中断嵌套 CPU正在执行主程序 CPU正在执行低级中断服务程序 CPU正在执行高级中断服务程序 CPU正在执行低级中断服务程序 挂起的中断 中断查询 ? 软件查询 ? 硬件查询 ?中断优先级链式电路 ?中断优先级编码电路 三态门 DB + 中断请求 … … A L mov DPTR,#PortI movx A,@DPTR RLC A JC ASV RLC A JC BSV …… ASV: …… BSV: …… 先查询的优先级高 硬件申请 软件查询 中断处理过程 ?中断响应条件 ? CPU处于开中断状态:51内部有中断允许触发器EA EA=0 禁止中断;EA=1 开放中断。 ? 中断响应过程 ? 中断响应:停止现行程序, 转向中断处理程序入口地址 ? 关中断 (MCS-51响应中断后,不自动关中断) ? 保护断点 (自动将断点地址压入堆栈) ? 执行中断处理程序 执行中断处理程序 ? 保护现场 保护中断服务程序中用到的寄存器和状态标志的内容 ? 中断服务 相应的中断源服务,完
文档评论(0)