- 1、本文档共34页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
[工学]7单片机输入输出及中断系统看
3 单片机输入/输出及中断系统 一 微机的输入/输出 二 中断技术 三 MCS-51中断系统 I/O接口电路的作用 1、协调高速工作的计算机与速度较低的外设的速度匹配问题 2、提供输入/输出过程中的状态信号 3、解决计算机信号和外设信号之间的不一致 一、微机的输入/输出 1.1 输入/输出信息种类 计算机与输入/输出设备之间交换信息,有三种信息形式:数据信息、控制信息和状态信息。 DB AB RD WR INT 微型机 D IOD A IOS RD IOC WR INT I/O接口 D Ready STB I/O设备 1、端口与主存储器单元统一编址 统一编址,把主存储器的一部分地址空间分给端口,把每一个端口作为一个存储单元。 2、端口单独编址 对端口单独编址时,端口不占主存地址空间,但必需设置专门的输入/输出指令访问端口。 1.2 CPU对外设的两种编址方式 CPU与外设之间的数据传送方式通常有以下4种方式: 1、无条件传送方式、 2 、查询方式, 3 、中断方式 4 、直接存储器存取方式。 1.3 CPU与外设之间的数据传送方式 1、无条件传送方式: 已知I/O设备准备就绪,可直接进行数据传送。 例如:CPU可以DAC直接连接 硬件查询电路 DB AB 微型机 AB 数据端口 状态端口 外部设备 I/O接口 D6 先查询I/O设备当前状态,若准备就绪,则交换数据,否则循环查询状态。 2、查询传送方式 软件查询程序 INPUT:MOV DPTR,#SATUS;状态口地址 WAIT:MOVX A,@DPTR JB ACC.6,WAIT MOV DPTR,#DATA ;数据口地址 MOVX A,@DPTR 查询状态 输入/输出数据 准备就绪? Y N 先查询输入状态,决定是否进行数据传送。 3、中断传送方式 大多数时间计算机与外设并行工作,计算机不必因等待而浪费资源。当外设准备就绪,向CPU发出中断请求信号。CPU暂停当前程序,执行I/O操作。当I/O操作结束,CPU仍继续被中断的工作。 优点:1、同步工作2、实时处理3、故障处理 4.直接存储器存取方式传送 (DMA—Direct Memory Access) 用于计算机与高速外设进行大批量数据交换,由DMA控制器接管总线控制权,RAM与外设之间直接数据传输,不需CPU的介入 中断概念的引入 某人看书 执行主程序 日常事务 电话铃响 中断信号INT=0 中断请求 暂停看书 暂停执行主程序 中断响应 书中作记号 当前PC入栈 保护断点 电话谈话 执行I/O程序 中断服务 继续看书 返回主程序 中断返回 二 中断技术 2.1 中断的概念 所谓中断,是指CPU正在处理某些事务的时候,外部又发生了某一事件,请求CPU及时处理。于是,CPU暂时中断当前的工作,转而处理所发生的事件。处理完毕,再回到原来被中断的地方,继续原来的工作。 日常事务程序 中断服务程序 一.两种中断 1.可屏蔽中断 可程控“开中断/关中断”。 软件设置允许/禁止CPU响应中断。 2.非屏蔽中断 不可程控“关中断”。 有中断请求信号,CPU必须响应。 INT NMI 微型机 二.中断优先权 1.当同时有多个中断请求,先响应优先级别高的中断请求。 2.高优先级中断请求信号可中断低优先级中断服务。 三.中断源 能发出中断请求信号的各种事件。如I/O设备、定时时钟、系统故障、设定等。 日常事务 程序 中断服务程序1 中断服务 程序2 2.2 中断处理过程 一.中断响应条件 1.有中断请求信号 2. 系统处于开中断状态 3. 中断源处于当前优先级 二.中断响应过程 1.关中断:屏蔽其它中断请求信号。 2.保护断点:将断点地址压入堆栈保存,即当前PC值入栈。 3.寻找中断源:中断服务程序入口?PC,转入中断服务。 4.保护现场:将中断服务程序使用的所有寄存器内容入栈。 5.中断处理:执行中断源所要求的程序段。 6.恢复现场:恢复被使用寄存器的原有内容。 7.开中断:允许接受其它中断请求信号。 8.中断返回:执行RETI指令,栈顶内容?PC,程序跳转回断点处。 2.3 寻找中断源与确定优先级 寻找中断源:每个中断源对应一个中断服务程序。 一.软件查询方式 二.硬件查询方式 一.软件查询方式 INTS:MOV A,P1;读中断源寄存器 JB ACC.0,SV1 ;查询高级中断请求 JB ACC.1,SV2 ;查询低级中断请求 … SV1:
文档评论(0)