分享
分享赚钱 收藏 举报 版权申诉 / 69

类型第8章 接口技术1.ppt

  • 上传人:gsy285395
  • 文档编号:5587363
  • 上传时间:2019-03-09
  • 格式:PPT
  • 页数:69
  • 大小:1.49MB
  • 配套讲稿:

    如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。

    特殊限制:

    部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。

    关 键  词:
    第8章 接口技术1.ppt
    资源描述:

    1、第八章 接口技术,研究可编程并行接口芯片8255A的程序员界面及应用,研究可编程串行接口芯片8251A的程序员界面及应用,研究可编程定时/计数器8253/8254的程序员界面及应用,研究模拟器件接口,接口技术:接口技术是研究CPU如何与外部世界进行最 佳耦合与匹配,实现双方高效、可靠地交换信息的一门 技术,是软件、硬件结合的体现,是微机应用的关键。,研究CRT接口和打印机接口,8.1 8255A可编程并行I/O接口(PPI),一、8255A基本结构,8255A结构 内部结构:8255A由三部分组成。,1、与外设接口部分8255A内部包括三个8位的输入输出端口,分别是端口A、端口B、端口C,相应

    2、信号线是PA7PA0、PB7PB0、PC7 PC0。端口都是8位,都可以作为输入或输出,但功能上各有特色:,端口A:一个8位数据输入/输出锁存和缓冲器;一个8位数据输入锁存器。 (输入输出都锁存),端口B:一个8位数据输入/输出锁存和缓冲器;一个8位数据输入缓冲器。 端口C:一个8位数据输出锁存和缓冲器;一个8位数据输入缓冲器。,各端口的特点及分工:,1.每一个端口作数据口时,既可定义为输入端口也可定义为输出端口;,2.端口A既适合作双向异步通信端口又适合作单向 异步通信端口;端口B适合作单向异步通信端口;,3.端口C作数据口,状态口,专用联络信号线;,2、与微处理器接口部分 这部分主要完成数

    3、据传送及逻辑控制。,3、内部控制部分 由A、B两组控制电路组成。主要作用是根据CPU送来的控制字用以决定两组端口(A组为A口C口的高4位,B组为B口和C口的低4位。)的工作方式,也可根据控制字的要求对C口按位进行置位或复位。,8255A的引脚图:,8255A的端口地址及操作功能:,二、8255的编程,1、8255的方式字(写入 A1、A0 = 11),D0,D1,D2,D3,D4,D5,D6,D7,PC3 PC0 1:输入 0:输出,B口 1:输入0:输出,B组工作方式 0:方式01:方式1,PC7 PC4 1:输入0:输出,A口 1:输入0:输出,A组工作方式 00:方式0 01:方式1 1

    4、:方式2,D7 = 1 特征位,B组,A组,问题2:73H是不是控制字?,例:设8255A的的控制口地址为63H,编程使端口A: 方式0输出;端口B方式0输入;端口C高4位:输出; 端口C低4位:输入。,2、C口的置位/复位字 (写入 A1A0 = 11),D0,D1,D2,D3,D4,D5,D6,D7,1:置位 0:复位,C口选择,000:PC0 001:PC1 010:PC2 011:PC3 100:PC4 101:PC5 110:PC6 111:PC7,任选(可1可0),D7 = 0 (特征位),例:设8255A的的控制口地址为02EEH。编程使 端口PC2输出1,PC4输出0。即产生置

    5、位和复位 信号。,关于两个命令的讨论:,1、方式命令对8255A的三个端口的工作方式和功能进行设定,即初始化,凡用到 8255A一定要先初始化。,2、按位置位/复位命令只对PC口进行控制,它并不破坏已建立的工作方式。,3、这两个命令都是写命令口,通过特征位加以区别。,4、注意与PC口工作在输出方式时的本质区别。,1、方式0方式0不使用联络信号,也不使用中断,A口和B口 可定义为输入或输出口,C口分成两个部分(高四位 和低四位),C口的两个部分也可分别定义为输入或 输出。在方式0,所有口输出均有锁存,输入只有缓 冲,但无锁存,C口还具有按位将其各位清0或置1的 功能。,例.在PC/XT系统总线上

    6、扩充一片8255A接口芯片,分配给8255A 的端口地址为280H283H。PA口为输出,输出设备为8个LED发 光二极管(L0L7),PAi(i=07)输出1,对应Li亮;PAi输出0, 对应Li灭。PB口为输入,输入设备为8个乒乓开关(K0K7), 开关断开(低电平),开关闭合(高电平)。,试画出8255A与PC/XT系统总线和设备的接口电路图。 编写将开关状态送LED灯的显示程序。 编写将L0 L7每间隔1秒循环亮1位的显示程序(假如1秒延时 子程序DELAY1S可调用)。,试画出8255A与PC/XT系统总线和设备的接口电路图。,确定系统总线及设计此电路所需的总线信号,对应280H端口

    7、的地址信号为(取A9A0):,A1 A0 (8255引脚),A9 A8 A7 A6 A5 A4 A3 A2 A1 A0(系统地址信号),1 0 1 0 0 0 0 0 0 0 PA口,0 1 PB口,1 0 PC口,1 1 控制口,MOV DX,283H MOV AL,10000010B ; 82H OUT DX,AL MOV DX,281H IN AL,DX MOV DX,280H OUT DX,AL,编写将开关状态送LED灯的显示程序。,MOV DX,283H MOV AL,10000010B ; 82H OUT DX,AL MOV DX,280H MOV AL,00000001B NT:

    8、 OUT DX,AL CALL DELAY1S ROL AL,1 JMP NT,编写将L0 L7每间隔1秒循环亮1位的显示程序(假如1秒延时子程序DELAY1S可调用)。,2、方式1 : A口借用C口的一些信号线用作控制和状态线,形成A组,B口借用C口的一些信号线用作控制和状态线,组成B组。在方式1下,A口和B口的输入输出均带有锁存。,方式1输入(端口A),方式1输入(端口B),8255A工作在方式1的输入方式下,其控制字与端口数 据线之间的数据传送与联络信号的时序如下图所示。,STB,IBF,INTR,RD,8255A输入方式1时序,方式1输出(端口A),方式1输出(端口B),8255A工作

    9、在方式1的输出方式下,其与外设之间的 数据传送与联络信号的时序如下图所示。,WR,INTR,OBF,ACK,D0D7,8255A输出方式1时序,方式1输入输出组合:,例8-5 利用8255A作为打印机纸带读入机的接口。 DATA STORBE低电平有效,有效时通知打印机接收数据线上 的数据,可作为8255A输出给外设的选通信号。 BUSY 打印机忙信号,高电平有效。 DRIVE READY 纸带机启动信号,DATA READY 数据就绪信号,PA口地址:10011000,解: 8255A的PA口方式0输出,PB口方式0输入,PC口高4位 输出、低4位输入。,各端口地址:PA:98H;PB:9A

    10、H;PC:9CH,控制口:9EH。,程序分为三个部分: 主程序,打印机驱动程序,纸带机驱动程序; 打印机驱动程序的入口参数:CL; 纸带机驱动程序的出口参数:CH。,;主程序段 CODE SEGMWNTASSUME CS:CODE MAIN:MOV AL , 83H;工作方式设置OUT 9EH,ALMOV AL ,0DH;PC6=1OUT 9EH,ALMOV AL , 09H;PC4=1OUT 9EH,ALCALL LPST;调用打印机驱动程序:CALL RDST;调用纸带机驱动程序:,;打印机驱动程序 LPST PROC LPST1:IN AL ,9CHTEST AL,04HJNZ LPST

    11、1 ;打印机机忙继续查询MOV AL , CL ;输出打印字符OUT 98H,AL 输出负脉冲选取通打印机MOV AL,0CHOUT 9EH,ALINC ALOUT 9EH ,ALRET LPST ENDP,;纸带机驱动程序 RDST PROCMOV AL ,08H;启动纸带机OUT 9EH ,AL LP: IN AL ,9CH ;查询纸带机数据准备好否? TEST AL ,01HJZ LPIN AL , 9AH ;输入数据MOV CH ,ALMOV AL ,09H;暂停纸带机OUT 9EH ,ALRET RDST ENDP CODE ENDSEND MAIN,例8-6 用8255A作为A/D

    12、转换器接口,采用中断方式采集数据并 保存在BUF为首的存储区,设8255A的端口地址同上例。8259A 的端口地址为02C0H和02C2H。,解:硬件结构及原理分析,使用单片8259A,边沿触发(上升沿),缓冲方式,普通全嵌 套,非自动EOI方式:,ICW1:0 0 0 1 0 0 1 1,ICW2:01001000;中断类型码48H,ICW4:00001101,A0 D7 D6 D5 D4 D3 D2 D1 D0,1,0 0 0 SFNM BUF M / S AEOI PM,OCW1:1111 1011H,OCW2:00100000,;主程序 DATA SEGMENT BUF DB 100

    13、DUP (?) NUMBER EQU - BUF DDD EQU 4*48H DATA ENDS CODE SEGMENTASSUME CS :CODE,DS:DATA MAIN: MOV DX , 02C0H;写初始化命令MOV AL , 13HOUT DX ,ALMOV DX, 02C2HMOV AL, 48HOUT DX ,ALMOV AL ,0DHOUT DX ,AL,MOV AL ,0FBH;写屏蔽命令 OUT DX,AL PUSH DS;设置中断向量 XOR AX ,AX MOV DS,AX MOV BX ,DDD MOV BX,OFFSET ITRP MOV BX+2,SEG I

    14、TRP POP DS MOV AL,0B0H;初始化8255 OUT 9EH ,AL MOV AL ,09H;中断允许 OUT 9EH,AL,MOV CX ,NUBBER;设置转换次数 MOV AX ,DATA MOV DS ,AX MOV BX ,OFFSET BUF STI MOV AL,0EH不清;启动 OUT 9EH ,AL ,;中断服务程序 ITRP PROCIN AL , 98H ;读取转换结果MOV BX ,ALMOV AL ,0FH;撤消转换信号OUT 9EH ,ALINC BXDEC CXJZ ENDBCALL DSR;调用延时子程序MOV AL ,0EH;启动转换OUT 9

    15、EH ,AL ENDB: MOV AL ,20H;发转换结束命令OUT DX ,ALIRET ITRP ENDP CODE ENDSEND MAIN,8.1.3.3 方式2(双向选通方式),方式2将方式1的选通输入输出功能组合成一个双向数据端口,可以发送数据和接收数据 只有端口A可以工作于方式2,需要利用端口C的5个信号线,其作用与方式1相同 方式2的数据输入过程与方式1的输入方式一样 方式2的数据输出过程与方式1的输出方式有一点不同:数据输出时8255A不是在OBF*有效时向外设输出数据,而是在外设提供响应信号ACK*时才送出数据,(1)方式2的信号定义,PC6,PC7,PC3,PA7PA0

    16、,INTE1,OBFA,INTRA,ACKA,PC4,PC5,IBFA,STBA,INTE2,用PC6设置INTE1(输出) 用PC4设置INTE2(输入) 输入和输出中断通过 或门输出INTRA信号,(2)8255A工作在方式2下的工作时序,8.2 可编程串行通信接口芯片8251A,一、串行通信的基本概念,全双工方式,半双工方式,单工方式,1. 数据传送方向,接收器,发送器,发送器 接收器,发送器 接收器,发送器 接收器,发送器 接收器,2.数据同步方式,在串行通信中,为了保证收发双方上海市一致的收发数据,需要对数据传送进行同步控制。同步控制的方式有两种: 1、同步通信(Synchronou

    17、s Data Communication) 2、异步通信(Asynchronous Data Communication),异步通信以一个字符为传输单位,用起始位表示字符的开始,用停止位表示字符结束,(1)异步通信及其协议,串行通信时的数据、控制和状态信息都使用同一根信号线传送 收发双方必须遵守共同的通信协议(通信规程),才能解决传送速率、信息格式、位同步、字符同步、数据校验等问题 串行异步通信以字符为单位进行传输,其通信协议是起止式异步通信协议,(2)同步通信及其协议,同步通信是以数据块(字符块)为单位传送的,每个数据块经过格式化之后,形成一帧数据,作为一个整体进行发送与接收,因此,传送一旦

    18、开始,要求每帧数据内部的每一位都要同步,2.波特率与收/发时钟,串行传输速率也称波特率(Baud Rate) 每秒传输的二进制位数bps 字符中每个二进制位持续的时间长度都一样,为数据传输速率的倒数 过去,串行异步通信的数据传输速率限制在50 bps到9600 bps之间。现在,可以达到115200 bps或更高,(1)串行传输速率,字符速率与波特率两者关系,字符速率:每秒钟传输的字符数。,波特率:指单位时间内传送二进制数据的位数。单位为:b/s,例: 异步传输过程设每个字符对应1个起始位、7个信息位、1个奇偶校验位和1个停止位,如果波特率为1200bps,那么,每秒钟能传输的最大字符数为12

    19、00/10120个,例2:同步传输用1200bps的波特率工作,用4个同步字符作为信息帧头部,但不用奇偶校验,那么,传输100个字符所用的时间为7(100+4)/12000.6067s,这就是说,每秒钟能传输的字符数可达到100/0.6067165个。可见,在同样的传输率下,同步传输时实际字符传输率要比异步传输时高。,例2:同步传输用1200bps的波特率工作,用4个同步字符作为信息帧头部,但不用奇偶校验,那么,传输100个字符所用的时间为7(100+4)/12000.6067s,这就是说,每秒钟能传输的字符数可达到100/0.6067165个。可见,在同样的传输率下,同步传输时实际字符传输率

    20、要比异步传输时高。,串行通信时的数据、控制和状态信息都使用同一根信号线传送 收发双方必须遵守共同的通信协议(通信规程),才能解决传送速率、信息格式、位同步、字符同步、数据校验等问题 串行异步通信以字符为单位进行传输,其通信协议是起止式异步通信协议,D7D0,M/IO,A7 . . . A3 A2 A1,D7D0,A2 A1,CS,8255A,PA0PA7,PC7PC4,PC5PC3,打印机,B/CDR,译 码 器,AD570,数据输入,STB,IBF,INTR,8259A的IR2,8255A 作为A/D转换器的接口图,8.2,3、方式2 方式2是A组独有的工作方式。外设既能在A口的8条引线上发

    21、送数据,又能接收数据。此方式也是借用C口的5条信号线作控制和状态线,A口的输入和输出均带有锁存。,模式1状态字,模式2状态字,1) 、数据缓冲功能 2) 、联络和协调功能 3) 、寻址功能 4) 、信息格式、类型的变换及电平转换功能 5) 、中断管理功能 ,灵活的数据传送方式 6) 、可编程功能 7) 、定时、控制功能,例:8255A端口A接8个发光二极管,PC7接一开关。要求检测开关 状态,若开关打开,8个发光二极管全亮;开关按下8个发光二极管 每个亮1秒钟,循环点亮。设8255A的端口地址为60H63H。,8255A在方式 0下的应用,解:设端口A接8个发光二极管(输出),端口C的上半部输

    22、入, 端口B和端口C的下半部不使用。因此,有控制字10001000B。 设有一个延时1S的子程序DEL1S可供调用。,单一点亮1S,开始,8255A初始化,K按下否?,Y,点亮8个灯,读PC口AL,AL&80HAL,AL=0?,Y,N,CX8,BL0FEH,ALBL,输出:60HAL,延时1S,CF1,BL带进位循 环左移1位,8个灯都点然否?,N,Y,;参考程序:,CODE SEGMENTASSUME CS: CODE MAIN: MOV AL, 88HOUT 63H,AL NEXT: IN AL, 62HTEST AL,80HJNZ LIGHTMOV CX , 8MOV BL ,0FEH CONT: MOV AL, BLOUT 60H,ALCALL DEL1SSTCRCL BL, 1LOOP CONT JMP NEXT,LIGHT:MOV AL ,00HOUT 60H ,ALJMP NEXT CODE MAIN,

    展开阅读全文
    提示  道客多多所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
    关于本文
    本文标题:第8章 接口技术1.ppt
    链接地址:https://www.docduoduo.com/p-5587363.html
    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

    道客多多用户QQ群:832276834  微博官方号:道客多多官方   知乎号:道客多多

    Copyright© 2025 道客多多 docduoduo.com 网站版权所有世界地图

    经营许可证编号:粤ICP备2021046453号    营业执照商标

    1.png 2.png 3.png 4.png 5.png 6.png 7.png 8.png 9.png 10.png



    收起
    展开