可编程并行接口芯片.ppt_第1页
可编程并行接口芯片.ppt_第2页
可编程并行接口芯片.ppt_第3页
可编程并行接口芯片.ppt_第4页
可编程并行接口芯片.ppt_第5页
已阅读5页,还剩30页未读 继续免费阅读

下载本文档

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

文档简介

第5章可编程并行接口芯片8255A,5.18255A结构与引脚介绍5.28255A控制5.38255A应用举例,5.18255A结构与引脚介绍,特点:传输速度快;信息率高;用电缆多。下图为典型的并行接口和外设连接的示意图,8255A的内部结构与外部引脚,1.8255A的内部结构3个8位的并行I/O端口:A口、B口、C口(又分为上、下半部);端口A对应1个8位数据输入锁存器,1个8位输出锁存器/缓冲器。端口B对应1个8位数据输入缓冲器,1个8位输出锁存器/缓冲器。端口C对应1个8位数据输入缓冲器,1个8位输出锁存器/缓冲器。A口和C口的上半部合称为A组;B口和C口的下半部合称为B组。可通过指令单独设置A、B、C口为输入口或为输出口数据总线缓冲器:双向、三态、8位,连接在CPU和8255之间的接口模块;完成向内部写入控制命令字;向A口、B口、C口发送或接收数据。读写控制模块:接受CPU的读写命令、地址信号。,8255A的内部结构框图,8255A的内部结构与外部引脚,2.8255A的外部引脚,和外设一边相连的信号PA7PA0A组数据信号;PB7PB0B组数据信号;PC7PC0C组数据信号。和CPU一边相连的信号(见图6.32)RESET复位信号,高电平有效。D7D0数据线、双向。片选信号,低电平有效。读出信号。低电平时从选中的端口读出数据,经系统数据总线送入CPU;写入信号。低电平时,向选中的端口写入数据;A1、A0端口选择信号,接系统地址线。,2.8255A的外部引脚,和外设一边相连的信号PA7PA0A口数据信号;PB7PB0B口数据信号;PC7PC0C口数据信号。和CPU一边相连的信号RESET复位信号,高电平有效。D7D0数据线、双向。片选信号,低电平有效。读出信号。低电平时从选中的端口读出数据,经系统数据总线送入CPU;写入信号。低电平时,向选中的端口写入数据;A1、A0端口选择信号,接系统地址线。,8255与系统的连接示意图,8255A的内部结构与外部引脚,3.8255A的端口地址与读写操作,8255A的读写操作见教材page249表6.2,8255A的读写操作,5.28255A控制,1.方式选择控制字,8255A有两种控制字:方式选择;C口置1/0;,注意:有三种基本工作方式:方式0基本的输入输出方式;方式1选通的输入输出方式;方式2双向传输方式;只有端口A能工作在方式2;同一组的两端口可分别工作在输入和输出方式。,D7=1,8255A的控制字与初始化编程,2.端口C按位置1/置0控制字,D7=0,提示:置1/置0控制字必须写入控制口;D7位必须为0;D0位决定置1或置0;D3、D2、D1位决定了对哪一位操作。,3.8255A初始化编程应用举例:,设系统有2片8255A芯片J1和J2。端口地址分别为:J1:端口A地址00E0H端口B地址00E1H端口C地址00E2H控制口地址00E3H要求:J1各口工作在下列方式:端口A方式0,输出;端口C的高4位输出端口B方式0,输入;端口C的低4位输入所以,方式选择控制字为:10000011=83H要求:J2各口工作在下列方式:端口A方式0,输入;端口C的高4位输出端口B方式1,输出;端口C的低4位配合B口所以,方式选择控制字为:10010100=94H,J2:端口A地址00E8H端口B地址00E9H端口C地址00EAH控制口地址00EBH,J1、J2控制字编程如下:控口地址分别为00E3H、00EBH,MOVAL,83HMOVDX,00E3HOUTDX,AL;J1的方式选择控制字MOVAL,94HMOVDX,00EBHOUTDX,AL;J2的方式选择控制字,将J2控制端口PC7置位、PC3复位的程序段;MOVDX,00EBH;J2的口地址送DXMOVAL,0FH;PC7置位的控制字00001111OUTDX,ALMOVAL,06H;PC3复位的控制字00000110OUTDX,AL,8255A的工作方式,8255A有三种工作方式:方式0:基本型输入输出方式(无条件传送方式);方式1:选通型输入输出方式;方式2:双向数据传送方式。A口:上述三种方式都可以;B口:只能工作在方式0和方式1;C口:只能工作在方式0。当A口工作在方式1或方式2,B工作在方式1时,C口的一部分可以作为端口与外设之间的联络线。,8255A的工作方式,1.方式0基本型输入输出方式方式0的工作特点(1)端口与外设之间没有联络线,端口没有中断功能,不提供状态信息(2)各端口独立,即可作为输入口,也可作为输出口,相互之间无任何关系;(3)CPU与端口之间采用无条件传送方式输入输出数据,8255A的工作方式,2.方式1选通型输入输出方式(1)方式1的工作特点端口A、B可分别工作在方式1;端口C配合方式1(2)方式1的输入时端口信号定义A口工作在方式1输入时规定:PA7PA0为输入线,接收端口的输入数据;PC5为输入缓冲区满信号输出端IBFA;PC4为选通信号输入端STBA;PC3为中断请求信号输出端INTRA;,8255A的工作方式,B口工作在方式1输入时规定:PA7PA0为输入线,接收端口的输入数据;PC1为输入缓冲器满信号输出端IBFB;PC2为选通信号输入端;PC0为中断请求信号输出端INTRB;(3)方式1输入时各信号的含义:STB:选通、输入、负脉冲有效;由外设8255A,STB有效时,表示输入数据被存入端口的数据输入缓冲寄存器中。IBF:输入缓冲器满、输出、高电平有效;表示当前输入缓冲器已有一个新数据。IBF由置位(已接收新数据),由RD的后沿复位(数据已取走)。,8255A的工作方式,INTR:中断请求、输出信号、高电平有效;该信号由8255ACPU(向CPU提中断请求)。表示8255A已从外设接收一个数据并存入输入缓冲器,请求CPU取走。若CPU响应中断请求,则读取数据;然后,用RD的下降沿将INTR复位。INTE:中断允许信号。(用C口控制字实现屏蔽与禁止)A口(使用PC4)PC41表示A口为中断允许状态;PC40表示A口为中断屏蔽状态。B口(使用PC2)PC21表示B口为中断允许状态;PC20表示B口为中断屏蔽状态。,8255方式1输入过程(1)外设使STB信号有效(低电平)后,开始向8255输入数据(2)当输入数据完毕后,IBF信号有效(3)如果采用中断方式(INTE=1),那么中断请求信号INTR=1,向8259提出中断申请(4)当CPU把数据从8255取走后,8255会撤消中断申请并使IBF=0(预示缓冲区空闲,可以接收下一个数据),8255A的工作方式,说明:上述规定是在设置端口工作在方式1时自动形成的,不需要编程指定,也无法改变,除非重新设置方式选择控制字。如果端口A、B都以方式1模式工作,则端口C的PC0PC5配合端口A、B工作;而端口C的PC6、PC7仍可单独作为输入、输出方式工作,可以由方式选择控制字D3定义。,例如,设置端口A、B为方式1输入模式,端口C的PC6、PC7为输入的方式控制字为:A口:10111B口:11111,8255A的工作方式,(5)方式1的输出时端口信号定义A口工作在方式1输出时规定:PA7PA0为输出线,向外设输出数据;PC7为输出缓冲区满信号输出端;PC6为外设接收数据后的响应信号输入端;PC3为中断请求信号输出端INTRA;B口工作在方式1输出时规定:PA7PA0为输出线,向外设输出数据;PC1为输出缓冲区满信号输出端;PC2为外设接收数据后的响应信号输入端;PC0为中断请求信号输出端INTRB;,8255A的工作方式,(6)方式1输出时各信号的含义:输出缓冲器满、低有效、输出(8255送外设)。表示CPU已经向指定的端口输出了数据,由8255通知外设可以读取数据了。:外设响应信号、低有效、输入(外设送8255)。表示CPU输出到8255的数据已经被外设读取了。INTR:中断请求、输出信号、高电平有效;该信号由8255ACPU(向CPU提中断请求)。当外设读取数据后,8255发请求,让CPU再次输出数据到8255。INTE:中断允许信号。(用C口控制字实现屏蔽与禁止)A口用PC6、B口用PC2,定义同前。,方式1输出端口对应的控制信号和状态信号,(8)方式1输出时序,、CPU响应中断,向8255输出数据,同时发WR信号,将数据写入8255输出缓冲器;、的上升沿将INTR复位,将OBF置低电平有效状态;、外设从8255读取数据,发出ACK信号;、将OBF置1,表示输出缓冲器为空;、持续时间300ns;、为高电平,为高电平,再次发INTR,请求CPU再次输出数据。,输出操作:CPU响应中断时由OUT指令产生;使INTR低,且将数据写入8255输出缓冲器;为低,写入数据,其后沿将低(为低表明cpu已经把数据传递给8255的数据寄存器);为低,通知外设已经有数据到达,让外设取走当前到达的数据;当外设取走数据后,向8255发出应答信号;使输出锁存器开启,数据输出到外设数据总线上;当8255收到外设的信号后,使变成低电平。vi当变成低电平后,则8255可以再次向cpu提出申请,请cpu输入新的数据至此,一个数据输出过程结束。,8255A的工作方式,3.方式2双向数据传输方式(1)方式2的工作特点仅A口有此工作方式。即可发送,又可接收数据。使用端口C的PC7PC3作为控制、状态信号。(2)A口工作在方式2时端口信号定义(PC4):选通信号,低电平有效;外设将数据送8255输入锁存器中后通过此信号通知8255;(PC5):状态信息,输入缓冲器满。高电平表示当前外设已将一个新数据送到输入缓冲器,等到CPU读取。(PC7):输出缓冲器满、低电平有效;表示CPU已经将数据写入8255的A口,通知外设取走。(PC7):外设对OBFA的响应信号、低电平有效。,IBFA,A口方式2端线信号定义,(3)方式2的中断功能INTE1中断允许,=1通知CPU,往8255输出;INTE2中断允许,=1表示8255已从外设接收数据,请求CPU读取;INTRA(PC3)中断请求信号,输出操作:CPU响应中断时由OUT指令产生;使INTR低(撤销8259引脚的中断请求);为低,向8255写入数据,其后沿将低(为低表明cpu已经把数据传递给8255的数据寄存器);为低,外设向8255发出信号;信号使8255的锁存器开启,数据输出到外设中;使信号为高,至此,一个数据输出过程结束。输入操作:外设向8255输送数据,产生并将数据锁存;锁存数据,使为高电平;变高(后沿),产生INTR;CPU响应中断,发出读出命令,并使INTR变低。,IBFA,IBFA,8255A的工作方式,(4)方式2的使用场合用于并行外设既是输入设备,又是输出设备的场合,如:磁盘设备;输入输出动作不会同时进行。(5)方式2与其它方式的组合A口工作于方式2、B口工作于方式0、输入的组合;C口PC7PC3配合A口,其定义为:PC3INTA;PC4=STBA;PC5=IBFA;PC6=ACKA;PC7=OBFA,控制字:11011/0,A口为方式2、B口为方式0、输出的组合;,A口工作于方式2、B口为方式1、输入的组合;,=0C6H,A口工作于方式2、B口工作于方式1、输出的组合;,控制字:1110B,5.38255A应用举例,8255工作于方式的例子,5.38255A应用举例,A口传送字符通道,工作于方式0,输出模式;B口不用;C口的PC2作为BUSY信号输入端;所以PC3PC0为输入C口的PC6作为STB信号输出端;所以PC7PC4为输出设字符在CL中;设8255A的端口地址为:A口:00D0HB口:00D1HC口:00D2H控制口:00D3H程序段如下:,PP:MOVAL,81H;控制字10000001OUT0D3H,AL;设置PC2PC0是输入口MOVAL,0DH;控制字置PC6为1,00001101OUT0D3H,ALLPST:INAL,0D2H;读端口C的PC2位状态ANDAL,04H;测试PC21(打印机忙)?JNZLPST;忙,转LPST,继续询问MOVAL,CL;不忙,从A口输出一个字符OUT0D0H,ALMOVAL,0CH;将PC6置0;00001100OUT0D3H,ALINCAL;再将PC6置1,00001101

温馨提示

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

评论

0/150

提交评论