接口技术.ppt
《接口技术.ppt》由会员分享,可在线阅读,更多相关《接口技术.ppt(66页珍藏版)》请在三一文库上搜索。
1、微机原理及应用,主讲教师 陈玮,2019/7/17,微机原理及应用,2,第8章 接口技术,一、可编程并行输入/输出接口芯片8255A 习题 二、可编程定时器/记数器8253 习题,2019/7/17,微机原理及应用,3,一、可编程并行输入/输出接口芯片8255A,Intel 8255A是可编程接口芯片,可以用程序设定或改变其工作方式,CPU通过它与外设连接。 1、8255A的结构与工作方式 2、8255A的使用及初始化程序 例题 作业,2019/7/17,微机原理及应用,4,1、8255A的结构与工作方式,(1)内部结构及引脚 (2)8255A工作方式,2019/7/17,微机原理及应用,5,
2、8255A的内部结构框图,1、并行输入/输出端口 8255A有3个独立的输入/输出端口A、B、C,每个端口8位,分别与不同的外设进行数据交换。 在与外设数据传送中需要联络控制线时,C端口作控制信号输出和状态信号输入,与A、B口配合。,2019/7/17,微机原理及应用,6,8255A的内部结构框图,2、A组和B组控制电路 A组:A口、C口高4位; B 组:B口、C口低4位; 各有控制电路,负责接受来自读/写控制逻辑的各种命令,以及来自数据总线的控制字,从而决定A组和B组的工作方式; 根据CPU的命令对C端口的每一位实现“复位”或“置位”。,2019/7/17,微机原理及应用,7,3、读/写控制
3、部件 8255A内部完成读/写控制功能的部件。 与6条输入控制线连接,负责接受CPU输入的控制信号。 4、数据总线缓冲器 是一个8位双向三态缓冲器,是8255A与CPU交换各类数据的接口。,8255A的内部结构框图,2019/7/17,微机原理及应用,8,8255A的引脚,8255A是双列直插式40引脚芯片。 1、与外设连接的引脚 A口、B口和C口共24条; 2、与CPU连接的引脚 (1)数据线D0D7; (2)输入控制线: * RESET复位信号 RESET有效时,清除8255A内部寄存器,包括控制寄存器,A口、B口和C口设置为输入方式。 * RD读信号 当RD低电平时,表示CPU读出825
4、5A的数据或状态信息。,2019/7/17,微机原理及应用,9,8255A的引脚,* WR写信号 表示CPU将数据或命令写入8255A。 * CS片选信号。 * A1A0端口寻址线,直接与CPU地址线连接(8088的A1A0 ),确定CPU要访问的端口地址。 8255A内部有3个输入/输出端口和一个控制寄存器,由A1A0组合对应: A1A0 00 端口A A1A0 01 端口B A1A0 10 端口C A1A0 11 控制寄存器,返回,2019/7/17,微机原理及应用,10,(2) 8255A工作方式,工作方式0基本输入输出工作方式 A、B、C端口都可以作为输入或输出数据端口,以无条件传送方
5、式进行输入输出操作。 工作方式1 应答式单向输入输出工作方式 A、B端口作为输入或输出数据端口,C口分为两组分别作为A口和B口的应答联络线。 工作方式2 应答式双向输入输出工作方式 只有A口可以工作于方式2,可以双向操作,即可以输入也可以输出数据,C口作为应答信号。 位操作工作方式 只有C口可以进行位操作。,2019/7/17,微机原理及应用,11,工作方式0基本输入输出工作方式,1)方式0下8255A有两个8位端口:端口A和端口B,两个4位端口:端口C的高4位和端口C的低4位; 2)任何一个端口可以作输出或输入,由用户程序设定; 3)输出锁存,输入不锁存; 4)方式0适用于无条件传送方式。,
6、2019/7/17,微机原理及应用,12,工作方式1 应答式单向输入输出工作方式,1)方式1下8255A可作为一个或两个选通端口,每个选通端口包含有:8位数据端口、3位控制线(由端口C规定的位提供)、中断逻辑; 2)任何一个选通端口都可以作输出或输入,输出、输入均锁存; 3)若只有一个端口工作于方式1时,余下的13位可工作于方式0;若两个端口都工作于方式1时,端口C余下的2位可设定为输入或输出,且也具有置位/复位功能。 在方式1下,端口C的某些位规定作为联络信号,但这种规定在输入和输出时不相同。,2019/7/17,微机原理及应用,13,工作方式1 输入,A、B端口工作于方式1输入时,方式选择
7、控制字及端口C对应的控制信号见图示; 每端口有3个控制信号: STB选通信号,低电平有效,由外设产生的输入信号;,IBF输入缓冲器满,是8255A的输出信号,可供CPU查询或用于外设联络。IBF有效时,表明在输入锁存器中已存放了一个数据;,2019/7/17,微机原理及应用,14,工作方式1 输入,INTR中断请求信号,是8255A的输出信号,供CPU查询或向CPU发出中断请求; INTE中断允许标志; * A口中断允许,PC4置位; * B口中断允许,PC2置位;,方式1中断输入过程首先必须对端口进行初始化:设置方式选择控制字,设置端口C置位/复位控制字,将端口设置为中断允许。 方式1程序查
8、询传送方式,查询IBF的状态。,2019/7/17,微机原理及应用,15,工作方式1 输出,A、B端口工作于方式1输出时,方式选择控制字及端口C对应的控制信号见图示; 每端口有3个控制信号: OBF输出缓冲器满,8255A给外设的控制信号;,ACK外设响应信号,外设给8255A的输入信号,表明输出数据已经接受了; INTR中断请求信号,若INTE1,8255A向CPU发出中断请求信号; INTE中断允许标志。,2019/7/17,微机原理及应用,16,工作方式1 输出,方式1输出与输入相同,首先必须对端口进行初始化: 设置方式选择控制字,设置端口C置位/复位控制字,将端口设置为中断允许。,同样
9、,方式1输出可用于程序查询传送方式,CPU可通过查询输出缓冲器满信号OBF的状态,确定是否可以送出数据。 端口A或B可分别设为输入和输出,不受另一端口影响。,2019/7/17,微机原理及应用,17,工作方式2 双向传送方式,1)方式2只用于端口A; 2)端口A工作于方式2下,端口C的PC7 PC3作其联络控制; 3)输入、输出均锁存; 4)方式2的输入/输出过程相当于方式1的输入过程和输出过程的组合。,2019/7/17,微机原理及应用,18,2、8255A的使用及初始化程序,8255A各端口的工作方式由CPU通过I/O指令写入控制寄存器的控制字来决定。 8255A有两个控制字: (1)方式
10、选择控制字 (2)端口C置位/复位控制字 初始化编程,2019/7/17,微机原理及应用,19,(1)方式选择控制字,方式选择控制字用于设置各端口的工作方式和数据输入/输出的传送方向。 例题,2019/7/17,微机原理及应用,20,例题(方式选择控制字),设某片8255A的端口地址是60H63H,工作于方式0,端口A和端口C高4位输出,端口B和端口C低4位输入,设置该8255A的方式选择控制字。 解:方式选择控制字=1000 0011,2019/7/17,微机原理及应用,21,(2)端口C置位/复位控制字,端口C置位/复位控制字只对端口C的某一个位进行操作,其他位不受影响。 注意:必须写入控
11、制端口。 例题,2019/7/17,微机原理及应用,22,例题(位操作控制字),已知8255A的端口地址为02E0H02E3H,请实现对端口C的PC2置位和PC4复位。 解: MOV DX,02E3H ;大于8位的端口地址送DX MOV AL,05H ;位操作控制字0000 0101 OUT DX,AL ;置位PC2 MOV AL,08H ;位操作控制字0000 1000 OUT DX,AL ;复位PC4,2019/7/17,微机原理及应用,23,例题(位操作控制字)(2),请在8255A的C端口的PC7位输出一个正脉冲(设原来PC7=0)。 解:程序段如下 MOV AL, 0FH ;置位PC
12、7,操作控制字00001111 OUT CTRL_PORT, AL ;写入控制端口 MOV AL, 0EH ;复位PC7,操作控制字 00001110 OUT CTRL_PORT, AL ; 写入控制端口,2019/7/17,微机原理及应用,24,初始化编程,初始化就是CPU通过程序来设定8255A的工作方式。 设某片8255A的端口地址是60H63H,工作于方式0,端口A和端口C高4位输出,端口B和端口C低4位输入,设置该8255A的方式选择控制字。 解:方式选择控制字=10000011 初始化编程: MOV AL, 83H OUT CNTL_PORT,AL ; 将方式选择控制字由控制端口写
13、入,2019/7/17,微机原理及应用,25,例题,1、已知A,B,C端口均作为输入或输出端口,有12个开关和12个发光二极管,每一个开关对应每一个发光二极管,当某一开关接通时,对应的发光二极管就亮,否则就暗。试编写程序段实现此功能。(8255A的端口地址是0218H021BH),2019/7/17,微机原理及应用,26,例题(续上页),解:程序段流程图,2019/7/17,微机原理及应用,27,例题(续上页),解:程序段清单 MOV AL, 83H ;B口和C口低4位输入, A口和C高4位输出 MOV DX,021BH ;控制端口地址送DX OUT DX, AL ;从控制端口写入方式控制字
14、LL: MOV DX,0219H ;读B口 IN AL, DX DEC DX ;A口 OUT DX, AL ;将B口读入的开关状态从A口输出 MOV DX,021AH ;C口 IN AL, DX ;C口读入数据 MOVCL,4 SHL AL, CL ;将低4位左移到高4位 OUT DX,AL ;将低4位读入的从高4位输出 JMP LL HLT,2019/7/17,微机原理及应用,28,例题,2.一个微机系统中采用8255A作为I/O接口,初始化时CPU访问其8BH端口,将它设置为方式0,A、B口输入,C口输出,请问A口的端口地址是多少? 解:A口为88H,2019/7/17,微机原理及应用,2
15、9,作业,P268 2、4、6,2019/7/17,微机原理及应用,30,习题,8255A哪种工作方式具有中断请求的功能?该中断请求能否屏蔽?如何设置? 解:8255A的方式1、方式2具有中断请求功能,均可屏蔽。 A口:方式1输入时,PC4置位允许中断、 PC4复位禁止中断; 方式1输出时,PC6置位允许中断、 PC6复位禁止中断; 方式2时,即为方式1输入、输出的组合。 B口:工作于方式1时,PC2置位允许中断、 PC2复位禁止中断。,2019/7/17,微机原理及应用,31,习题(2),设8255A的端口地址为0260H0263H,试编写下列各种情况的初始化程序: (1)A口、B口设置为方
16、式0,端口A和C作为输入口,允许中断。 解:初始化程序段: MOV AL,99H ;方式选择控制字10011001 MOV DX,0263H ;端口地址大于8位送DX OUT DX,AL,2019/7/17,微机原理及应用,32,习题(3),(2)A口设置为方式2,禁止中断,B口设置为方式1输出,允许中断。 解:初始化程序段: MOV AL,0C4H ;方式选择控制字11xx x10x MOV DX,0263H OUT DX,AL ;初始化完成 MOV AL,0CH ;位操作控制字0000 1100, PC6复位,输出中断禁止 OUT DX,AL MOV AL,08H ;位操作控制字0000
17、1000, PC4复位,输入中断禁止 OUT DX,AL ;A口方式2,禁止中断 MOV AL,05H ;位操作控制字0000 0101, PC2置位,B口中断允许 OUT DX,AL,2019/7/17,微机原理及应用,33,习题(4),(3)A口设置为方式1输入,PC7和PC6作为输出,B口方式1输入,A口和B口允许中断。 解:初始化程序段: MOV AL,0B6H ;方式选择控制字1011 011x MOV DX,0263H OUT DX,AL ;初始化完成 MOV AL,09H ;位操作控制字0000 1001, PC4置位 OUT DX,AL ;A口允许中断 MOV AL,05H ;
18、位操作控制字0000 0101, PC2置位 OUT DX,AL ;B口允许中断,2019/7/17,微机原理及应用,34,二、可编程定时器/记数器8253,在微型计算机系统中常常需要定时器或计数器,用来产生实时时钟信号,如定时对动态存储器刷新,控制系统的定时检测等等。同时,计算机控制系统也常常需要计数功能,实现对外部事件的计数。 1、 8253的内部结构及引脚 2、 8253的控制字 3、8253的的工作方式 作业,2019/7/17,微机原理及应用,35,1、 8253的内部结构及引脚,8253的内部结构 (1)3个计数器计数器0、1、2,每个计数器的结构相同,而且操作是互相独立的。 (2
19、)控制字寄存器是一个8位寄存器,每个计数器有一个,只能写入,不能读出,用来保存计数器的工作方式、计数进位制方式以及读/写计数器方式。,(3)数据总线缓冲器与CPU数据总线直接相连。 (4)读写控制电路8253的控制电路,接受来自CPU的地址信号和控制信号,完成对8253内部各功能的控制和操作。,2019/7/17,微机原理及应用,36,1、 8253的内部结构及引脚,A1A0 00 端口A A1A0 01 端口B A1A0 10 端口C A1A0 11 控制寄存器,2019/7/17,微机原理及应用,37,1、 8253的内部结构及引脚(2),8253是24引脚的双列直插式芯片。 (1)与CP
20、U连接的引脚 数据线D0D7这是与CPU数据线连接的引脚,用于与CPU传递信息。 控制线RD、WR、CS、A1和A0 与8255A比较,除没有复位信号RESET外,其余都相同。 (2)与外部连接的引脚 三个计数器的三组线CLK、GATE和OUT。,2019/7/17,微机原理及应用,38,计数器的结构,8253的每个计数器包括: (1)16位的计数初值寄存器CR存放由CPU编程设定的计数初值; (2)16位计数执行部件CE是一个减1计数器,初值是CR的内容。CE只对CLK脉冲计数,一旦计数器被启动后,每出现一个CLK脉冲,CE减1。当减为0时,通过OUT输出指示信号,表明CE为0;,*当CLK
21、是一个非周期性信号时,起计数功能; * 当CLK是周期性时钟信号时,起定时功能。作定时器用时,定时系数要求的定时时间/输入的时钟脉冲周期,作为计数初值预置入CR,,2019/7/17,微机原理及应用,39,计数器的结构,(3)16位输出锁存器OL跟随CE的内容变化,当接受到CPU发来的锁存命令时,就锁定当前的计数值,而不跟随CE变化,直到CPU从中读取锁存值后,才恢复跟随CE。 (4)GATE门控脉冲输入。 * 高电平时,允许计数器工作; * 低电平时,禁止计数器工作。,2019/7/17,微机原理及应用,40,2、 8253的控制字,(1)控制字在8253的初始化编程中,第一个写入的一定是方
22、式控制字,规定8253的工作方式。,2019/7/17,微机原理及应用,41,2、 8253的控制字(2),(2)8253的读/写操作 * 写入操作设置控制字,设置计数初值和设置锁存命令; 使用前,首先初始化:先写入方式控制字,随后写入计数初值(注意格式)。 控制字写入控制寄存器端口,计数初值写入计数器端口。 锁存命令D7D6指定要锁存的计数器,D5D4 00。 * 读出操作CPU读取计数器当前的计数值。 在计数过程中,输出锁存器OL跟随计数执行部件CE变化,在接到CPU发来的锁存命令时,当前计数值锁存于OL中,OL不再变化,保持至CPU用输入指令读取该计数器端口的OL值后,输出锁存器自动解除
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 接口 技术
链接地址:https://www.31doc.com/p-3149007.html