第9章 微机原理

上传人:我** 文档编号:115129703 上传时间:2019-11-12 格式:PPT 页数:43 大小:1.09MB
返回 下载 相关 举报
第9章 微机原理_第1页
第1页 / 共43页
第9章 微机原理_第2页
第2页 / 共43页
第9章 微机原理_第3页
第3页 / 共43页
第9章 微机原理_第4页
第4页 / 共43页
第9章 微机原理_第5页
第5页 / 共43页
点击查看更多>>
资源描述

《第9章 微机原理》由会员分享,可在线阅读,更多相关《第9章 微机原理(43页珍藏版)》请在金锄头文库上搜索。

1、第八章 可编程外围接口芯片8255A及其应用, 并行通信/并行接口,8255A的工作原理 8255A的工作方式 8255A的应用, 串行通信/串行接口,8251A的工作原理 8251A的工作方式 8251A的应用,1、并行通信 就是把一个字符的各数位用几条连线同时进 行传输的过程。 优点:传输速度快、信息率高; 缺点:随着传输距离的增加,电缆的开销会成为突 出的问题; 应用场合:要求传输率高,传输距离较短的场合。,并行通信/并行接口,2、并行接口 能实现并行通信的接口。,并行的类型: 单独的输入接口 如:读卡机接口 单独的输出接口 如:打印机接口 输入/输出接口 如:磁盘接口,3、并行接口的组

2、成, 可编程型_工作方式和功能是可以软件编程加以改变。, 硬接线型_工作方式和功能是由硬线连接固定的,不能 用软件编程加以改变。,8255A的工作原理 一、8255的结构和功能,8255的内部结构,3个8位数据端口:A口、B口、C口,RESET复位后控制寄存器内容都被清零 所有端口均被置成输入方式,(写控制字), 方式选择控制字_用来定义各端口的工作方式, 置位/复位控制字_用于对端口C的位(任意) 进行置位或复位,二、8255的控制字,C口低四 位I/O,D7=1 标志位,A口方式,00:方式0 01:方式1 1X:方式2,A口I/O,1:输入 0:输出,C口高四 位I/O,1:输入 0:输

3、出,B口方式,0:方式0 1:方式1,B口I/O,1:输入 0:输出,1:输入 0:输出,(1)、方式选择控制字,8255工作方式控制字的应用,例如 若要求8255A各端口为下列工作状态: A口:方式0输出口 B口:方式1输入口 上C口:方式0输入口 下C口输出:此时为B口的联络线,则相应的控制字为: 10001110B(8EH),例一:设8255A的4个寻址地址号为60H63H,试编写出下列各种情况的初始化程序。 将A组和B组设置成方式0,A口、B口为输入,C口为输出口。 将A组工作方式设置成方式2,B组为方式1,B口作为输出口。,解:MOV AL,10010010B OUT 63H,AL

4、MOV AL,11000100B OUT 63H,AL,(2)、端口C置位/复位控制字,注: C端口置位/复位控制字尽管是对C端口进行操作,但该控制字必须写入 控制口地址,而不是写入C端口,D7=0 标志位,任意值,1 置位 0 复位,例如:,端口C的PC7位要求置1,PC3位置0,控制口地址为00EEH,根据要求控制字应设为,程序: MOV AL,OFH ;调入控制字内容 MOV DX,00EEH ;调入控制口地址 OUT DX,AL MOV AL,06H OUT DX,AL,例二:设有2片8255A芯片,在系统中的连接如图所示。当8255A D0D7数据线与数据总线低8位相连时,其4个端口

5、的地址号为何值? 若与数据总线高8位相连时,又为何值?,1#:28H,2AH,2CH,2EH 2#:30H,32H,34H,36H,如接高位 1#:29H,2BH,2DH,2FH 2#:31H,33H,35H,37H,(一)、 8255的工作方式,三、8255的工作方式和C口状态字,(1)、方式0 _基本输入/输出方式,_适用于不需用联络信号(应答)或不使用中断联系的简单输入输出电路(CPU可直接用输入/输出指令操作,不需要联络信号), 任何一个端口均可作为输入或输出端口,各端口之间没 有规定必然的联系 各个端口的输入或输出,可以有16种不同的组合 输出有锁存功能,使用场合:,无条件传输(同步

6、传送),特点:,利用8255A检测开关的开与关,图如下,要求A口开关闭合相应B口数码管发光,编制初始化程序段和检测程序。,例三、,解: 端口地址:0F0H,0F2H,0F4H,0F6H MOV AL,10010000B ;初始化 OUT 0F6H,AL A1:IN AL,0F0H ;检测程序 NOT AL OUT 0F2H,AL JMP A1,例四、 8255A作为连接打印机的接口,工作于方式0,设端口A、 B、C、控制口地址分别是00D0H、00D2H、00D4H、00D6H,电路接线如下图,编制初始化程序段并将DI 的一个字符发送给打印机。 (C口的PC2与打印机的BUSY相连,为1代表打

7、印机忙,PC6通过一个反相器与打印机的STB相连,上升沿是STB的选通信号,选通打印机进行相应操作),解: 端口地址:00D0H、00D2H、00D4H、00D6H MOV AL,10000001B ;8255初始化 MOV DX, 00D6H OUT DX,AL A1:MOV DX,0D4H ;检测PC2是否为0 IN AL,DX TEST AL,04H JNZ A1 MOV DX,0D0H ;送字符到A口 MOV AL,DI OUT DX,AL INC DI MOV DX,0D6H ;PC6产生上升沿 MOV AL,00001101B OUT DX,AL DEC AL OUT DX,AL

8、JMP A1,(2)、方式1 _选通输入/输出方式,特点:, 端口A、端口B均可工作在方式1下,且均能对数据锁存,但必须 在联络信号控制下完成数据的输入/输出。 如果端口A或端口B工作在方式1下,则各需用C的3位配合工作,产 生相应的控制联络信号。 端口C中未配合方式1工作的各位可设定方式0工作特征,使用场合:,方式1,选通输入方式 选通输出方式,分类:,_须使用联络信号建立工作关系的电路。,&,PC4,INTEA,PA7-PA0,RD,PC5,PC3,PC6,7,STBA(选通),IBFA(输入缓冲器满),INTRA(中断请求),端口A方式1输入, 方式1选通输入方式控制信号,PC6,7,中

9、断允许,方式1选通输入时序,INTR,IBF,STB,输入数据,RD,图,I/O I/O, 方式1选通输出方式控制信号,WR,OBF,INTR,ACK,输出数据,方式1选通输出时序,图,I/O I/O, 方式1选通输入/输出方式组合控制信号,A口输入B口输出,A口输出B口输入,(3)、方式2 _双向总线I/O方式(A口),方式2的方式控制字和控制信号,(二)、C口状态字,说名: 当8255工作在方式0时,C口各位用于输入或输出。 当8255工作在方式1时,C口各位用于产生联络信号。 当8255工作在方式2时,C口各位用于产生联络信号。,方式1状态字:,输入状态字:,方式1状态字:,输出状态字:

10、,A组状态字,B组状态字,OBFA,INTRA,I/O,I/O,INTEB,OBFB,INTRB,INTEA,方式2状态字:,方式1时,作B口状态字用 方式0时,作输入输出用,9.2 8255的应用,例五:编写8253初始化程序段。要求;计数器0工作在方式0,二进制计数,计数初值为8位;计数器1工作在方式3,BCD计数,计数初值为4位十进制计数;计数器2工作作在方式2,二进制计数,计数初值为16位二进制数。( 8253的4个寻址地址号为40H一43H),解:MOV AL,00010000B OUT 43H,AL MOV AL,01110111B OUT 43H,AL MOV AL,101101

11、00B OUT 43H,AL,8253 控制字格式:,例六、图为开关状态检测电路和继电器控制电路。当开关K闭合时,将驱动对应的继电器(即动作);若开关处于断开状态,则无电流流过继电器线圈,继电器不动作。若每隔10ms检测一次开关状态和对继电器作相应控制,定时控制由8253完成,试编写对8255A的初始化程序(初始态时应保证继电器不动作)和完成上述功能的检测、控制程序。,解:定时采用查询方式 CPU主频为5MHZ, PCLK=2.5MHZ(T=400ns),8253的初始化(端口40H-43H) N0=10ms/800ns=12500=30D4H MOV AL,00110010B;0#计方式1

12、OUT 43H,AL MOV AL,0D4H;30D4H送0#计 OUT 40H,AL MOV AL,30H OUT 40H, AL,8255的初始化(端口60H-63H) MOV AL,10000011B;A口方式0输出, PC0输入 OUT 63H,AL ; B口方式0,输入PC7输出, MOV AL,00001110B;PC7置0 OUT 63H,AL MOV AL,0FFH ;初试A口,继电器不动作 OUT 60H, AL,检测控制程序 L1:MOV AL,00001111B;PC7置1 OUT 63H,AL DEC AL OUT 63H,AL L2:IN AL,62H ;读PC0是否

13、为高 TEST AL,01H;延时10ms JZ L2 IN AL,61H ;读B口 NOT AL OUT 60H,AL JMP L1,例 七、8255A的端口A经过反相驱动器连接一共阴极的七段发光二极管显示器;端口B是中断方式的输入口。设8255A的中断类型码是30H。试画出电路, (中断接8259)编写8255A和中断初始化程序,并编写中断服务程序,用来实现,当CPU从端口B输入的8位码是偶数个1时,LED上显示E,否则显示0。(8255口地址为60H63H ,8259A为一片,端口地址为20H、21H)。,十进制数与 十六进制数 对应表,8255A、8259A和中断向量表的初始化 CLI

14、;CPU关中断 MOV AL,10000110B ;A口方式0输出,B口方式1输入 OUT 63H,AL MOV AX,0;设中断向量 MOV DS,AX MOV AX,offset INTER MOV 00C0H,AX MOV AX,seg INTER MOV 00C2H,AX MOV AL,00000101B ;PC2置1,允许8255A中断 OUT 63H,AL MOV AL,00011011B ;8259A初始化 OUT 20H,AL MOV AL,30H ;中断类型码 OUT 21H, AL MOV AL,00000001B ;非缓冲 OUT 21H, AL STI ;CPU开中断,

15、中断服务子程序 INTER proc far push ax sti in al,61H ;读B口 add al,0 jp L1 mov al,01000000B;奇数O送A口 jmp L2 L1:mov al,00000110B;偶数E送A口 L2:out 60H,AL mov al,20h out 20h,al; 中断EOI结束 pop ax iret INTER endp,ICW1-芯片控制初始化命令字(必须写入偶地址端口) 格式:,0,X,X,1,LTIM,0,SNGL,IC4,X,8086/8088 系统中不使用,1:电平触发(高电平) 0:边沿触发(上升沿),1:单级使用 0:级联使用,1:需要设置ICW4 0:不需要设置ICW4,ICW4方式控制初始化,8259初始化命令字ICW,ICW2-设置中断类型号初始化命令字(必须写入奇地址端口),对应IR0-IR7中响应 哪级中断(000-111),格 式:,ICW4-方式控制初始化命令字(必须写入奇地址端口) 说明: ICW1的IC4=1时,要求预置ICW4,8086/8088系统必须预置,1,0,0,0,SFNM,BUF,M/S,AEOI,uPM,1:特殊完全嵌套方式 0:非特殊完全

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号