




已阅读5页,还剩76页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
计算机接口技术庄琴生编著西安电子科技大学出版社 Name 唐启见Tel mail tangqijian0 简单回顾 1 汇编程序的作用2 由汇编源程序到执行文件的处理过程3 数制转换将十进制数0 625分别转换成二 八 十六进制数 4 8088支持的数据类型及其有效范围5 系统总线6 内存与物理地址7 8086微处理器的组成及寄存器结构 8086CPU结构示意图 相关科目 计算机文化基础C语言程序设计汇编语言程序设计单片机原理及应用DSP原理及应用PLC原理及应用ARM嵌入式开发 本书的主要内容 一 计算机接口技术概述二 总线技术三 中断接口技术四 定时器 计数器接口电路五 并行接口六 串行通信接口七 模 数 A D 与数 模 D A 转换八 DMA技术九 人机交互接口与常用标准接口 第1章计算机接口技术概述 1 1接口技术的基本概念1 2计算机与外设之间的数据传送方式1 3无条件传送接口实验习题1 1 理解微机接口的基本概念 接口的功能 接口信息及接口的编址方式 2 熟练掌握四种计算机与外设之间的数据传送方式 本章主要教学目的及要求 1 1接口技术的基本概念1 2计算机与外设之间的数据传送方式1 3无条件传送接口实验 本章主要教学内容 1 1接口技术的基本概念 在计算机系统中除了CPU以及基本硬件之外 还有各种外部设备 比如显示器 键盘 打印机 磁盘驱动器 光盘驱动器等 这些外部设备需要与CPU进行大量的信息交换 根据CPU的要求进行各种操作 进行信息交换时 由于各种原因 比如电平 时序等的不同 这些外部设备不能与CPU直接相连 它们之间的信息交换必须经过一个中间电路 也就是接口电路 外部设备多种多样 可以是机械式 电子式或其它形式的 输入 输出的信息不相同 可以是数字量 模拟量或开关量 信息传输的速度也不相同 键盘输入的速度是秒数量级 而磁盘输入的速度最高可达百兆位 秒以上 另外 与CPU进行交换的信息的来源也不相同 它们可以来自于计算机的系统硬件 比如键盘 显示器 磁盘机等 也可以来自于外部控制系统或现场采集到的信息 1 1 1接口的功能与基本结构接口 Interface 是两个部件之间的连接点或界面 计算机接口技术就是研究CPU如何与外部设备进行连接 耦合 匹配 以便实现CPU与外部设备之间高速 可靠地进行信息交换的一门技术 是计算机系统应用的关键课题之一 1 接口应具有的功能1 对外部设备的寻址功能计算机系统中往往有多种类型的外部设备 相同类型的外部设备也可能不止一台 CPU在同一时刻只能与一台外设通信 当然可以通过分时 轮询等 实现逻辑上的并行操作 2 信号转换功能外部设备的信号电平可能不是TTL电平或CMOS电平 因此需要由接口电路来完成信号电平的转换 TTL与CMOS相比 电平不同 需要有转换电路才能连接 区别是TTL电流大 速度快 功耗大 CMOS电流小 速度稍慢 功耗小 对称性好 在CMOS里也没有悬空表示高电平的说法 而是不定态 在应用中输入信号要避免悬空 3 数据缓冲功能外部设备的工作速率远远低于CPU的速率 为了提高CPU的工作效率并避免丢失数据 接口中必须有数据缓冲器 4 联络功能接口应当具备握手信号或者能够提供状态信息 CPU送来的控制信号 外部设备的工作状况以及应答信号都要通过接口与CPU以 握手联络 的方式进行交互 5 中断管理功能CPU与外设之间的通信采用中断方式 有利于提高CPU的利用率 6 可编程功能为了使接口具有较强的灵活性 可扩充性以适应多种工作方式或工作状态 接口应具有可编程的特性 2 接口电路的基本结构接口电路的基本结构如图1 1所示 在与CPU相连的一侧 接口电路通过地址总线AB 数据总线DB以及控制总线CB与CPU连接 地址总线 AB 用来提供访问接口电路的地址信息 数据总线 DB 用来与接口电路交换数据信息 状态信息和命令信息 控制总线 CB 包括IO M INTR等信号线 在与I O设备连接的一侧 接口电路通过数据线DATA 状态线STATUS 控制线CONTROL与I O设备相连 接口电路处于CPU与外部设备之间 是CPU与外部设备之间进行通信的桥梁 接口电路内部一般包括数据I O缓冲器 状态寄存器 命令控制寄存器和中断控制逻辑等部分 图1 1接口电路的基本结构 1 1 2接口信息与端口的编址方式1 CPU与外设之间的接口信息CPU与外设之间传送的信息通常包括数据信息 状态信息和控制信息 1 数据信息数据信息是最基本 也是最重要的一种信息 它包括数字量 模拟量和开关量 数字量 通常为8位 16位或32位的二进制数据或ASCII码数据 模拟量 当计算机用于控制系统或数据采集系统时 大量的现场信息 比如温度 压力 流量和速度等 是连续变化的物理量 这些物理量经过传感器被转换成电信号 再经过放大 整形等处理后得到电流或电压 这些电流或电压仍旧是模拟量 开关量 是一些只有两个状态的量 如开关的闭合与断开 继电器触点的打开与吸合等 用一位二进制数 0 或 l 表示 2 状态信息状态信息反映当前外部设备所处的工作状态 输入时 CPU常要先查询输入设备是否准备好 Ready 1 准备好了才可以输入 输出时 CPU常要查询输出设备是否空闲 Busy 0 如果输出设备不忙 Busy 0 则CPU向该外部设备输出数据 CPU根据接口电路提供的输入 输出设备的状态信息 决定是否进行数据的输入或输出 3 控制信息控制信息是控制输入 输出设备启动 停止或执行某种特定操作的信息 综上所述 接口电路传送三种不同类型的信息 即数据信息 状态信息和控制信息 三种信息的性质不同 要通过不同的端口分别传送 2 端口的编址方式输入 输出端口 即I O端口 的编址方式主要有两种 内存和I O端口统一编址及I O端口单独编址 1 内存和I O端口统一编址I O端口和存储单元统一编址是在整个存储空间中划分出一部分地址空间给外设端口使用 I O端口和存储单元统一编址方式的优点在于I O端口的地址空间较大 对端口进行操作的指令功能较强 使用时灵活方便 2 I O端口单独编址I O端口的地址空间单独编址 与内存单元的地址空间相互分开 各自独立 8086 8088系统中就采用这种编址方式 8086 8088系统的8位I O端口地址空间是0 64KB 地址总线中A15 A0就可提供寻址64KBI O端口地址空间的能力 I O端口单独编址方式的优点是 不占用内存单元的有效地址空间 地址译码器较简单 端口操作指令长度较短 执行速度较快 1 2计算机与外设之间的数据传送方式 1 2 1无条件传送方式无条件传送方式是最简单的数据传送方式 在这种传送方式中 假设外设已处于就绪状态 图1 2为无条件传送方式输入 输出接口示意图 图中经地址总线把选中外设的地址信息送往端口译码器 当IO M为高电平时可以进行输入 输出操作 图1 2无条件传送方式输入 输出接口示意图 例1 1一个无条件传送输入和输出的具体实例如图1 3所示 图中八个开关可以看成是输入设备 八个发光二极管 LED 可以看成是输出设备 用集成电路芯片和与非门等组成接口电路 输入设备和输出设备具有相同的端口地址 通过和来区别是进行输入还是输出操作 假设输入设备和输出设备的端口地址为218H 要求根据八个开关的通断状态点亮或熄灭对应的发光二极管 开关可以根据需要随时拨动 图1 3开关状态读取与LED显示接口电路 解作为输入设备的八个开关连接由三态缓冲器 三态门 74LS244构成的输入口 八个开关的另一端都接地 同时74LS244的输入端I1 I8通过电阻接到高电平 8D三态锁存器74LS373构成输出口 连接到作为输出设备的八个发光二极管 LED 八个发光二极管的另一端都经电阻连接到高电平 程序的执行过程是 CPU读取各开关的状态数据 然后把读入的开关状态数据输出到74LS373 重复执行上述过程以满足八个开关可以随时拨动的需要 程序如下 LOP MOVDX 218H DX指向端口地址INAL DX 从输入口读取开关状态OUTDX AL 把读入的开关状态数据送到输出口显示CALLDELAY 延时10ms的子程序JMPLOP程序中DELAY是延时10ms的子程序 未单独列出 1 2 2查询传送方式无条件传送方式中程序不查询外设的状态 直接用输入 输出指令进行数据传送 在外设不处于就绪状态或外设发生故障时就会产生数据错误或数据丢失 为了解决这一问题 人们考虑采用查询传送方式 1 查询输入查询输入的工作流程如图1 4所示 CPU读入输入设备的状态信息 判断输入设备是否准备好 如果输入设备没有准备好 则继续查询输入设备的状态 直至输入设备准备好后才输入数据 图1 4查询传送输入流程图 查询输入的接口电路如图1 5所示 查询输入的具体工作过程如下 1 当输入设备准备好输入数据时 发出选通信号 使输入数据锁存入8位锁存器 并使D触发器置1 作为输入设备的READY信号 送到三态缓冲器8位中的某一位上 2 当CPU准备输入数据时 从地址总线发出该设备的状态端口地址 使IO 为有效高电平 使为有效低电平 读出三态缓冲器中的8位信息并检测状态位 1位 的READY信息 3 如果READY 1 则表示输入设备准备好 执行 4 否则继续执行 2 4 CPU从地址总线发出该设备的数据端口地址 使IO 为有效高电平 使为有效低电平 经数据总线读出8位数据缓冲器中的信息 并使D触发器清0 READY信号回到未准备好状态 IO 和的有效电平 会在CPU执行IN指令时自动发出 图1 5查询输入的接口电路 例1 2设输入设备的状态端口 8位 地址为S PORT 状态端口的D7位为1 表示输入设备准备好 数据端口 8位 的地址为D PORT 以查询传送方式从该外设输入1个字节的数据并存入D BUF内存单元 程序如下 MOVDX S PORTLOP INAL DXTESTAL 80HJELOPMOVDX D PORTINAL DXMOVD BUF AL 例1 3设系统中有三个独立的输入设备 三个输入设备的状态端口 8位 地址分别为STATUS1 STATUS2和STATUS3 若状态端口STATUS1的D7位为1 状态端口STATUS2的D6位为1 状态端口STATUS3的D5位为1 则分别表示各输入设备准备好 三个输入设备的数据端口 8位 的地址分别为DATA PORT1 DATA PORT2和DATA PORT3 以轮流查询的传送方式从三个输入设备分别输入数据 并存入各自的内存输入缓冲区BUFFER1 BUFFER2和BUFFER3 程序如下 MOVSI OFFSETBUFFER1 SI指向第一个设备的输入缓冲区MOVDI OFFSETBUFFER2 DI指向第二个设备的输入缓冲区MOVBX OFFSETBUFFER3 BX指向第三个设备的输入缓冲区MOVCX 255MOVAL 0LOP MOV SI ALMOV DI ALMOV BX AL INCSIINCDIINCBXDECCXJNZLOP 以上程序使输入缓冲区清0MOVSI OFFSETBUFFER1 SI指向第一个输入设备的输入缓冲区MOVDI OFFSETBUFFER2 DI指向第二个输入设备的输入缓冲区MOVBX OFFSETBUFFER3 BX指向第三个输入设备的输入缓冲区 LOP1 INAL STATUS1 输入第一个输入设备的状态端口信息TESTAL 80HJELOP2 未准备好则转LOP2INAL DATA PORT1 从第一个输入设备的数据口输入数据MOV SI AL 存入第一个设备的输入缓冲区INCSI LOP2 INAL STATUS2 输入第二个输入设备的状态端口信息TESTAL 40HJELOP3 未准备好则转LOP3INAL DATA PORT2 从第二个输入设备的数据口输入数据MOV DI AL 存入第二个设备的输入缓冲区INCDILOP3 INAL STATUS3 输入第三个输入设备的状态端口信息TESTAL 20H JELOP4INAL DATA PORT3 从第三个输入设备的数据口输入数据MOV BX AL 存入第三个设备的输入缓冲区INCBXLOP4 INCCXCMPCX 255JNZLOP1 该程序首先使三个输入设备的输入缓冲区清0 然后依次查询每一个输入设备的状态端口 若输入设备准备好 则执行输入操作 若没有准备好 则转向下一个输入设备进行查询 对于每一个输入设备 无论是输入了255个数据或是查询了255次都会退出程序的执行 循环次数由程序尾部的CX中的值进行控制 2 查询输出查询输出的工作流程如图1 6所示 首先CPU准备好要输出的数据 CPU读入输出设备的状态信息 判断输出设备是否 忙 如果输出设备 忙 则继续输入该设备的状态信息 直至输出设备 不忙 CPU才向输出设备输出数据 查询输出的接口电路如图1 7所示 图1 6查询传送输出流程图 图1 7查询输出的接口电路 查询输出的具体工作过程如下 1 输出设备输出完数据后发出应答信号 清D触发器 使BUSY线为0 表示输出设备处于 空闲 或 不忙 状态 2 当CPU准备输出数据时 从地址总线发出该外部设备的状态端口地址 使IO 为有效高电平 使为有效低电平 读出三态缓冲器中的8位信息 并检测状态位BUSY 1位 的信息 3 如果BUSY 0 则表示输出设备 不忙 执行 4 否则继续执行 2 4 CPU从地址总线发出该外设的数据端口地址 使IO 为有效高电平 使为有效低电平 经数据总线把8位数据送往8位锁存器并输出到外设 同时 使D触发器置1 即BUSY 1 表明外设又处于 忙 的状态 IO 和的有效电平 会在CPU执行IN或OUT指令时自动发出 例1 4设输出设备的状态端口 8位 地址为SOUT PORT 状态端口的D7位为0 表示输出设备 不忙 数据端口 8位 的地址为DOUT PORT 以查询传送方式把内存单元DATA OUT中1个字节的数据向该外设输出 程序如下 OUT PORTBUSY INAL DXTESTAL 80HJNEBUSYMOVAL DATA OUTMOVDX DOUT PORTOUTDX AL 1 2 3中断传送方式在查询传送方式中 CPU需要不断地查询外设的状态 极大地降低了CPU的利用率 为了提高CPU的利用率 提高输入 输出系统的可靠性以及实时性 可以采用中断传送方式 在中断传送方式中 当外设就绪时就向CPU发出中断请求 请求CPU处理输入或输出操作 1 中断处理过程主程序与中断处理过程的关系如图1 8所示 中断处理过程的流程如图1 9所示 图1 8主程序与中断处理过程 图1 9中断处理过程 中断处理过程的具体步骤如下 1 CPU执行指令 当执行完一条指令后检测是否有中断请求 来自于外部设备的中断请求 由硬件故障引起的中断请求 在80 x86系统中 中断请求也可以由软件中断指令INTn或CPU内部产生的某些运算错误引起 例如 除法错误 运算溢出等 程序调试时的单步中断 断点中断等也会产生中断请求 2 CPU检测到有中断请求 如果CPU可以响应中断 就进行响应中断的准备工作 也就会进入中断响应周期 CPU可响应中断请求的条件如下 现行指令周期内无其他主设备的总线请求 中断源的中断请求没有被屏蔽 即被禁止 或者中断源为非屏蔽中断 不可禁止的中断请求 在80 x86系统中 对于外部可屏蔽中断 要求中断允许标志IF 1 即允许中断 如果CPU可响应中断源提出的中断请求 且中断请求不是外部可屏蔽中断 而是其他类型的中断 则直接执行 3 对于外部可屏蔽中断 CPU在当前指令执行结束时 就进入中断响应周期 并自动执行如下操作 发出一个中断应答信号 表明CPU已经允许了该中断请求 并准备进行进一步的处理 关中断 在80 x86系统中使中断允许标志IF 0 以便使中断响应周期中必须进行的一些操作不会受到其它中断源提出的新的中断请求的干扰 能够正确地转入相应的中断服务程序 把提出中断请求的中断源的中断类型号 也被称为中断矢量 送到数据总线 以便CPU据此能找到中断服务程序的入口地址 3 保护现场 保护断点 即把当前的机器状态 也就是响应中断时的标志寄存器的内容 压入堆栈 实现现场的保护 4 形成中断服务程序的入口地址 在80 x86系统中 根据中断矢量将中断服务程序入口地址的段地址送入CS 中断服务程序入口地址的偏移量送入IP后 就转入中断服务程序并开始执行 5 在中断服务程序中 CPU执行中断源所要求的具体的输入 输出或控制操作 6 执行完中断服务程序中的中断处理工作后 如果在中断服务程序中还未曾执行过开中断指令 在中断返回前必须开中断 以便使其它中断源可以提出中断申请 7 中断返回 中断服务程序的最后一条指令是中断返回指令IRET 当中断处理结束时 CPU执行这条中断返回指令 CPU自动将保护在堆栈中的标志寄存器的内容和断点地址弹回到相应的寄存器中 也就是所谓的恢复现场 恢复断点 2 中断接口电路中断输入方式的接口电路如图1 10所示 该电路的工作过程如下 图1 10中断输入接口电路 1 当输入设备准备好输入数据 输入设备就发出STB选通信号 2 如果中断允许触发器为0 则禁止该中断请求 如果中断允许触发器为1 则处于中断允许状态 3 CPU收到来自INTR线上的中断请求 如果允许响应中断 就发出中断响应信号 表示CPU可以处理该输入设备的中断请求 并暂停原来执行的程序 4 信号使与输入设备相对应的中断矢量送往数据总线 CPU根据该中断矢量可以找到中断服务程序的入口地址 从而转入中断服务程序 执行输入设备所要求的输入操作 5 在中断服务程序中 CPU执行从输入设备输入数据的操作 采用中断传送方式进行数据传送 只有当外设处于就绪状态时才向CPU请求输入或输出服务 不需要CPU花费大量时间去主动查询外设的工作状态 减少了大量的CPU等待时间 1 2 4DMA传送方式采用中断传送方式进行数据传送 每次进行数据传送时CPU都要执行一些与数据传送没有直接关系的附加操作指令 在低速外设或数据传送量不大的情况下 这些附加的操作指令对数据传送效率的影响不太明显 DMA传送方式与无条件传送方式 查询传送方式 中断传送方式都不相同 它不是在CPU的控制之下与外设进行数据传送的 而是在专用的接口电路 DMA控制器的控制之下直接进行外设与存储器之间的高速数据传送的 DMA进行数据传送时不需要CPU干预 从而节省了中断传送方式中保护现场 保护断点 恢复现场 恢复断点的时间 DMA控制器必须具备以下功能 1 能向CPU发出要求掌握总线控制权的DMA请求信号HRQ HoldRequest 2 当收到CPU发出的允许出让总线的应答信号HLDA HoldAcknowledge 后能接管总线控制权 进入DMA方式 3 能发出地址信息对存储器寻址 并能修改地址指针 4 能发出读 写控制等信号 5 能设定DMA传送的数据字节个数 并能判断DMA传送是否结束 6 能发出DMA结束信号 释放总线控制权 让CPU收回总线控制权 DMA控制器掌握总线控制权后的工作过程如图1 11所示 图1 11DMA控制器的工作流程 1 3无条件传送接口实验 1 实验目的 1 理解无条件传送方式 2 掌握无条件传送简单并行接口的工作原理与使用方法 2 实验内容详细的实验环境请参阅附录A 1 按图1 12简单并行输出接口电路图连接线路 74LS273插入通用插座 74LS32用实验台上的或门 2 编程从键盘输入一个字符或数字 将其ASCII码通过这个输出接口输出 根据八个发光二极管的发光情况验证正确性
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 原材料采购购销合同范本
- 中越文机械购销合同范本
- 公司内部承包合同协议书
- 公园烧烤摊位租赁协议书
- 加工不锈钢罐合同协议书
- 公会加盟合同协议书范本
- 加盟汽修连锁股东协议书
- 台球器材购买合同协议书
- 合伙开个女装店合同范本
- 卸车转包合同协议书模板
- 成都第四十九中学数学新初一分班试卷含答案
- 《平方根》(第1课时)示范公开课教学设计【北师大版八年级数学上册】
- 《信息检索与处理(修订版)》课件下 第2单元第二课 分析信息-第3单元 综合探究实践活动
- 楼盘融资商业计划书
- 物业费催费技巧(干货版)
- 2023-2024学年江苏省南通市如皋市重点中学八年级(上)第二次月考数学试卷(含解析)
- 脑梗塞个案护理查房
- 2013年天津公务员考试职位表
- 矿山安全供电讲义
- 小学语文阅读理解答题万能公式全套
- 公司管理程序文件模板
评论
0/150
提交评论