并行接口技术_第1页
并行接口技术_第2页
并行接口技术_第3页
并行接口技术_第4页
并行接口技术_第5页
已阅读5页,还剩57页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

并行接口技术 可编程并行接口芯片8255A及其应用 并行数据传输方式 以计算机的字长 通常是8位 16位或32位为传输单位 一次传送一个字长的数据适合于外部设备与微机之间进行近距离 大量和快速的信息交换例如 微机与并行接口打印机 磁盘驱动器微机系统中最基本的信息交换方法例如 系统板上个部件之间 接口电路板上各部件之间 典型的并行接口和外设连接的示意图 输入准备好 并行接口 连接CPU与并行外设 实现两者间的并行通信 在信息传送过程中 起到输出锁存或输入缓冲的作用 并行接口电路8255A 具有多种功能的可编程并行接口电路芯片最基本的接口电路 三态缓冲器和锁存器与CPU间 与外设间的接口电路 状态寄存器和控制寄存器还有端口的译码和控制电路 中断控制电路分3个端口 每个端口8条线 共24个外设引脚 也可分为2组工作 每组12条线 共三种输入输出工作方式 可编程设置 1 PA7 PA0 PB7 PB0及PC7 PC0A口 B口及C口的输入 输出线 2 D7 D0三态双向数据线 数据总线连接 用来传送数据信息 3 片选信号线 低电平有效 4 读出信号线 低电平有效 控制数据的读出 5 写入信号线 低电平有效 控制数据的写入 6 A1 A0端口选择信号 用来寻址控制端口和I O端口 7 RESET复位信号线 高电平有效 有效时 所有寄存器的内容都被清零 三个I O端口都被置成方式0输入 8255A引脚图 8255A是40条引脚的双列直插式芯片 引脚排列如图所示 一 8255A的内部结构和引脚 1 外设数据端口 端口A PA0 PA7A组 支持工作方式0 1 2端口B PB0 PB7B组 支持工作方式0 1端口C PC0 PC7仅支持工作方式0A组控制高4位PC4 PC7B组控制低4位PC0 PC3 端口A PA0 PA7常作数据端口 功能最强大端口B PB0 PB7常作数据端口端口C PC0 PC7可作数据 状态和控制端口分两个4位 每位可独立操作控制最灵活 最难掌握 2 与处理器接口 D0 D7数据线A0 A1地址线RD 读信号WR 写信号CS 片选信号RESET复位信号 二 8255A的工作方式 方式0 基本输入输出方式适用于无条件传送和查询方式的接口电路方式1 选通输入输出方式适用于查询和中断方式的接口电路方式2 双向选通传送方式适用于与双向传送数据的外设适用于查询和中断方式的接口电路 1 方式0 基本输入输出方式 工作在方式0的端口 为单向传送端口 输入或输出作为输入口相当于普通的三态门作为输出口相当于普通的锁存器CPU可利用工作在方式0的端口 直接对端口进行读写操作 实现CPU与外设间的数据传送 方式0输入时序 请体会这里8255A的数据缓冲作用 方式0输出时序 8255A对CPU通过它输出给外设的数据进行锁存 方式0 基本输入输出方式各个端口的输入 输出可以有16种不同的组合最适用于无条件传送方式 也可用于查询方式 把A B口作为8位数据的输入或输出口 C口的高 低4位分别定义为A B口的控制位和状态位 需用户指定C口相关位 然后通过软件查询来实现数据传送 相对麻烦 2 方式1 选通输入输出方式 A口工作在方式1时 C口的某3根引脚作为A口的联络信号 B口工作在方式1时 C口的某3根引脚作为B口的联络信号 工作在方式1的端口 为单向传送端口 在方式1下 C口作为A口 B口联络信号的引脚 其动作关系在芯片设计和制造时已固定 不由用户自己安排 也不能编程改变 方式1输入引脚 A端口 数据选通信号表示外设已经准备好数据 输入缓冲器满信号表示A口已经接收数据 中断请求信号请求CPU接收数据 INTE没有外部引出端 通过编程设置 方式1输入引脚 B端口 方式1需借用端口C用做联络信号同时还具有中断请求和屏蔽功能 方式1输入联络信号 STB 选通信号 低电平有效由外设提供的输入信号 当其有效时 将输入设备送来的数据锁存至8255A的输入锁存器IBF 输入缓冲器满信号 高电平有效8255A输出的联络信号 当其有效时 表示数据已锁存在输入锁存器INTR 中断请求信号 高电平有效8255A输出的信号 可用于向CPU提出中断请求 要求CPU读取外设数据 方式1输入时序 当外设准备好数据 将数据送至端口线PA7 PA0或PB7 PB0 外设发出选通信号STB 1 将数据锁存在输入端口内 2 使IBF变高 表示输入端口满 可用于阻止外设输入新数据 3 如果INTE 1 IBF的高电平和STB 的上升沿使INTR变高 发出中断请求 转中断处理程序 执行IN指令 CPU读取数据 发出RD信号 1 RD 的下降沿清除INTR 2 RD 的上升沿清除IBF 3 端口内的数据进入CPU STB 和IBF是外设和8255A间的一对应答联络信号 为的是可靠地输入数据 方式1中断控制 8255A的中断由中断允许触发器INTE控制置位允许中断 复位禁止中断对INTE的操作通过写入端口C的对应位实现 INTE触发器对应端口C的位是作应答联络信号的输入信号的哪一位 只要对那一位置位 复位就可以控制INTE触发器选通输入方式下端口A的INTEA对应PC4端口B的INTEB对应PC2 端口C置位 复位控制字 方式1输出引脚 A端口 外设响应信号表示外设已经接收到数据 输出缓冲器满信号表示CPU已经输出了数据 中断请求信号请求CPU再次输出数据 方式1输出引脚 B端口 方式1输出联络信号 OBF 输出缓冲器满信号 低有效8255A输出给外设的一个控制信号 当其有效时 表示CPU已把数据输出给指定的端口 外设可以取走ACK 响应信号 低有效外设的响应信号 指示8255A的端口数据已由外设接受INTR 中断请求信号 高有效当输出设备已接受数据后 8255A输出此信号向CPU提出中断请求 要求CPU继续提供数据 端口A的INTEA对应PC6端口B的INTEB对应PC2 方式1输出时序 CPU执行OUT指令 输出数据 CPU发出WR 1 数据写到8255A的端口 2 使OBF 有效 OBF 0 表示输出端口满 可作为外设的选通信号 通知外设取数据 3 清除中断请求信号INTR 前一次的 外设接受到数据后 发出ACK 信号 1 ACK 的下降沿使OBF 变高 2 当INTE 1 OBF 的高电平与ACK 的上升沿使INTR变高 发出中断请求 请求CPU输出新的数据 OBF 和ACK 是外设和8255A间的一对应答联络信号 为的是可靠地输出数据 方式2双向方式 方式2将方式1的选通输入输出功能组合成一个双向数据端口 可以发送数据和接收数据只有端口A可以工作于方式2 需要利用端口C的5个信号线 其作用与方式1相同方式2的数据输入过程与方式1的输入方式一样方式2的数据输出过程与方式1的输出方式有一点不同 数据输出时8255A不是在OBF 有效时向外设输出数据 而是在外设提供响应信号ACK 时才送出数据 方式2双向引脚 用PC6设置INTE1 输出 用PC4设置INTE2 输入 输入和输出中断通过或门输出INTRA信号 方式2双向时序 三 8255A的编程 初始化编程 一个方式控制字采用控制I O地址 A1A0 11工作过程中 通过数据端口对外设数据进行读写数据读写利用端口A B和C的I O地址 A1A0依次等于00 01 10IBMPC XT机上 端口A B C和控制端口的I O地址为60H 61H 62H和63H 1 写入方式控制字 控制字格式 1 写入方式控制字 示例 要求 A端口 方式1输入C端口上半部 输出 C口下半部 输入B端口 方式0输出方式控制字 10110001B或B1H初始化的程序段 movdx 0fffeh 假设控制端口为FFFEHmoval 0b1h 方式控制字outdx al 送到控制端口 A端口 方式1输入C端口上半部 输出 C口下半部 输入B端口 方式0输出 所以 方式控制字为10000010B 即82H 由于对C口无要求 控制C口的相应位D4 D0可为任意值 假设取0 例假设8255A控制端口的地址为203h 编程设置控制字 使A口方式0输出 B口方式0输入 设置控制字的程序段如下 MOVDX 203h 置DX为控制口地址MOVAL 82h 置控制字于AL中OUTDX AL 将控制字写入控制口 2 读写数据端口 初始化编程后 当数据端口作为输入接口时 执行输入IN指令将从输入设备得到外设数据当数据端口作为输出接口时 执行输出OUT指令将把CPU的数据送给输出设备8255A具有锁存输出数据的能力对输出方式的端口同样可以输入不是读取外设数据读取的是上次CPU给外设的数据 2 读写数据端口 示例 利用8255A的输出锁存能力 可实现按位输出控制对输出端口B的PB7位置位的程序段 movdx 0fffah B端口假设为FFFAHinal dx 读出B端口原输出内容oral 80h 使PB7 1outdx al 输出新的内容 3 读写端口C 归纳1 C端口被分成两个4位端口 两个端口只能以方式0工作 可分别选择输入或输出 在控制上 C端口上半部和A端口编为A组 C端口下半部和B端口编为B组 3 读写端口C 归纳2 当A和B端口工作在方式1或方式2时 C端口的部分或全部引脚将被征用 其余引脚仍可设定工作在方式0 3 读写端口C 归纳3 对端口C的数据输出有两种办法通过端口C的I O地址 向C端口直接写入字节数据 这一数据被写进C端口的输出锁存器 并从输出引脚输出 但对设置为输入的引脚无效通过控制端口 向C端口写入位控字 使C端口的某个引脚输出1或0 或置位复位内部的中断允许触发器 端口C的位控制字 位控制字写入控制端口特别便于置位复位内部中断允许触发器INTE 例假设8255A的控制口地址为203h 通过控制口置PC2为0 置PC4为1 MOVDX 203H 置DX为控制口地址MOVAL 00000100B 置PC2为0OUTDX ALMOVAL 00001001B 置PC4为1OUTDX AL 42 例某系统要求使用8255的A口工作于方式1作输入 B口工作于方式0作输出 C口上半部输入 下半部输出 8255端口地址为60H 63H 控制字为 10111000B 0B8H 初始化程序为 MOVAL 0B8HOUT63H AL 例如上例 若A口工作于方式1作输入 要使用中断传送方式 则应当写PC4的按位置位字 MOVAL 00001001BOUT63H AL 43 方式1下8255状态字中INTE位的置位和复位 若禁止PA口输入中断请求MOVDX 303H 8255命令口MOVAL 00001000B 置PC4 0 禁止中断请求OUTDX AL 若允许PA口输入中断请求MOVDX 303H 8255命令口MOVAL 00001001B 置PC4 1 允许中断请求OUTDX AL 若允许PA口输出中断请求MOVDX 303H 8255命令口MOVAL 00001101B 置PC6 1 允许中断请求OUTDX AL 44 若允许PB口输入中断请求MOVDX 303H 8255命令口MOVAL 00000101B 置PC2 1 允许中断请求OUTDX AL 若禁止PB口输入中断请求MOVDX 303H 8255命令口MOVAL 00000100B 置PC2 0 禁止中断请求OUTDX AL 若允许PB口输出中断请求MOVDX 303H 8255命令口MOVAL 00000101B 置PC2 1 允许中断请求OUTDX AL 3 读写端口C 归纳4 读取C端口数据有两种情况未被A和B端口征用的引脚 将从定义为输入的端口读到引脚输入信息 将从定义为输出的端口读到输出锁存器中的信息被A和B端口征用作为联络线的引脚 将读到反映8255A状态的状态字 端口C的状态字 四 8255A的应用 作为通用的并行接口电路芯片 8255A具有广泛的应用应用在IBMPC XT微机上应用于打印机接口电路连接简易键盘驱动LED数码管 8255A与系统的连接 8255A在IBMPC XT上的应用 8255A在IBMPC XT上的应用 工作在基本输入 输出方式0端口A为方式0输入 用来读取键盘扫描码端口B工作于方式0输出 例如控制扬声器等端口C为方式0输入 读取系统状态和配置系统的初始化编程 moval 10011001b 方式控制字99Hout63h al 50 例某应用系统以8255A作为接口 采集一组开关S7 S0的状态 然后通过一组发光二极管LED7 LED0显示开关状态 Si闭合 则对应LEDi亮 Si断开 则对应的LEDi灭 电路连接如下图 已知8255A B两组均工作在方式0 写出8255四个端口的地址 写出8255工作方式控制字 写出实现给定功能的汇编语言程序 52 答 A口 B口 C口和控制口的地址分别是320H 321H 322H和323H A口工作在方式0输出 B口工作在方式0输入 C口空闲 所以其控制字是10000010b 82H程序如下 MOVAL 82H 置方式字MOVDX 323H 置控制端口地址OUTDX ALL1 MOVDX 321H 置B口地址INAL DX 读开关状态 1断 0通 NOTAL 状态取反MOVDX 320H 置A口地址OUTDX AL 输出 1亮 0灭 JMPL1 打印机接口的信号与时序 主机把数据送给引脚DATA0 DATA7同时送出数据选通信号STROBE 打印机在BUSY信号线上发出忙信号打印机处理好输入的数据时撤消忙信号同时又送出一个响应信号ACK 用8255A方式0与打印机接口 0 字符 8255A工作于方式0的例子 11010 8255A的4个口地址分别为 00D0H 00D2H 00D4H 00D6HA B C三个端口工作于方式0 A端口为输出 PC7 PC4为输出 PC3 PC0为输入 DADASEGMENTBUFFDB Thisisaprintprogram DATAENDSCODESEGMENTASSUMECS CODE DS DATASTART MOVAX DATAMOVDS AXMOVSI OFFSETBUFFMOVAL 81H 初始化方式控制字OUT0D6H ALMOVAL 0DH 通过位控字置PC6 1OUT0D6H AL WAIT INAL 0D4HTESTAL 04HJNZWAITMOV

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论