您好,欢迎访问三七文档
当前位置:首页 > IT计算机/网络 > C/C++资料 > 可编程外围接口82C55A
第二章:可编程外围接口82C55A2.1概述82C55A是高性能,工业标准,并行I/O的LSI外围芯片;提供24条I/O脚线。在三种主要的操作方式下分组进行程序设计82C88A的几个特点:(1)与所有Intel系列微处理器兼容;(2)有较高的操作速度;(3)24条可编程I/O脚线;(4)底功耗的CHMOS;(5)与TTL兼容;(6)拥有控制字读回功能;(7)拥有直接置位/复位功能;(8)在所有I/O输出端口有2.5mADC驱动能力;(9)适应性强。2.282C55A体系结构PA7~PA0D0~D7PB7~PB0#数据总线缓冲读写逻辑控制A组控制B组控制A组端口A8位A组端口C高4位B组端口C低4位B组端口B8位RD#WR#A1A0RESETCS#82C55A管脚图PA4PB3PA3PB282C55A1232140456789101112202.2.1控制寄存器D7~D0IORC#IOWC#RESETA3A2A15A14…..A482C55A端口A端口B端口CA1A0CS#=0端口地址选择选择A3A2CS#端口A000端口B010端口C100控制寄存110控制字各位的功能D7D6D5D4D3D2D1D0B组端口C(低4位)1=入0=出端口B1=入0=出方式选择1=方式10=方式0A组端口C(高4位)1=入0=出端口A1=入0=出方式选择00=方式001=方式11X=方式2方式设置标志1=有效2.2.2操作方式0方式0操作称为简单I/O操作,是指端口的信号线可工作在电平敏感输入方式或锁存输出。所以,须将控制寄存器设计为:控制寄存器中:D7=1;D6D5=00;D2=0。D7位为1代表一个有效的方式。通过对D4D3D1和D0的置位/复位来实现端口A及端口B是输入或输出。P56表2-1列出了操作方式0端口管脚功能。方式0的控制字及响应I/O配置控制字0:通过对D4D3D1D0=24=16种不同配置D7D6D5D4D3D2D1D010000000PA7~PA0APC7~PC482C55CD7~D0PC3~PC0BPB7~PB080H=10000000B:D7=1,D6D5D4D3D2D1D0=0000000操作方式0的控制字1:D7D6D5D4D3D2D1D010000001D7=1:方式标志有效,D6D5=00:方式0D4=0:A组端口A为输出D3=0:A组端口C高4位为输出D2=0:方式0D1=0:端口B为输出D0=1:B组端口C低4位为输入82C55ACB2.2.3操作方式1(选通的I/O)设置方式:D7=1来激活方式设置标志;D6D5=01;D2=1在操作方式1时,端口A和端口B被配置为两个独立、大小为一个字节宽度的I/O端口,每个端口都有与它相关的4位控制/数据端口。管脚功能如P58表2-2所示。当配置成这种方式时,出现在输入端口的数据必须由外部硬件产生的一个信号进行选通。其控制/数据端口由端口C的高4位和低4位完成。操作方式1的端口A输入配置:D7D6D5D4D3D2D1D010111/0PA7~PA0STBA#(输入选通)Pc6,7:1=输入IBFA0=输出INTRARD#I/OPc4pc5pc3INTEA82C55操作方式1输入端口的时序图:STB#tsTIBFtsistsittRisINTRtRitRD#来自tpH外设tps方式1下,数据从I/O设备发出通过82C55A送CPU的全过程:读数(3)INTR(1)STBCPU82C55I/O外设(4)RD(2)IBF方式1下,数据从CPU通过82C55A送到I/O外设的全过程,写数据:(1)WR(2)OBFCPU82C55AI/O外设(4)INTR(3)ACK82C55CPUI/O外设82C55ACPUI/O外设操作方式1端口A输出配置:D7D6D5D4D3D2D1D010101/0Pc4,5;1=输入PA7~PA00=输出OBFA#ACKA#INTRAI/OWR#PC7PC6INTEAPC3PC4,5操作方式1输出端口的时序:WROBFINTRACKOUTtAOStWOStWTTtAKtAITtWB2.2.4操作方式2INTRAPA7~PA0OBFA#ACKA#STBA#WR#IBFA#AD#I/OPC38PC7PC63PC4PC5INTE1INTE21.选通的双向I/O2.只有端口A使用图2-9操作方式2的输入/输出配置按位置1/置0格式:D7D6D5D4D3D2D1D0无关按位置1/置0标志,0=有效0123456701010101B000110011B100001111B2置1/置01=置1,0=置0位选择(PC口的0~7位)图2-10按位置1/置0格式操作方式2和操作方式0输入组合的控制字和I/O配置:D7D6D5D4D3D2D1D011011/0PC2~082C551=输入INTRA0=输出PA7~0OBFA#ACKA#STBA#IBFA#RD#I/OWR#PB7~0PC3PC7PC6PC4PC5PC2~0838图2-11操作方式2和操作方式0输出组合的控制字和I/O配置(图2-12)D7D6D5D4D3D2D1D0110182C55PC3=INTRAPC7=OBFA#PC6=ACKA#PC4=STBA#PC5=IBFAPC1=OBFB#RD#PC2=ACKB#PC0=INTRBWR#PC3PA7~0PC7PC6PC4PC5PB7~0PC1PC2PC0882.3独立的I/O端口D0~D3174F13831A2~A1527A423A519A615BE3#117D24~D31第三组O0O0ABCG2B#G2A#G1O7CS#3D0~D7A0A182C55ARD#WR#端口A端口B端口CIORC#IOWC#采用多体交叉编址的算法:0组:0、4、8、12、16、20、24、28…..1组:1、5、9、13、17、21、25、29…..2组:2、6、10、14、18、22、26、30…..3组:3、7、11、15、19、23、27、31…..即:在单体容量为L的m个分体交叉编址时,其Mj体的编址模式为:(m为模)Mj=m·i+j(i=0.1.2…l-1;j=0.1.2…m-1)当地址的模4交叉编制:M0=0,4,8,12,….4i+0,…2.4应用举例两台微机并行通信的接口原理电路微机A发微机B收OBF#ACK#PA0…PA782C55APC7PC6PA0…PA782C55APC4PC0CPUD0…D7CPUD0…D7微机A用于发射数据的程序设计…MMOVAX,0300HMOVES,AXMOVBX,0MOVCX,3FFHMOVDX,303HMOVAL,10100000BOUTDX,ALMOVAL,00001101BOUTDX,AL续上MOVDX,0300HMOVAL,ES:[BX]OUTDX,ALINCBXDECCXLOOP0:MOVDX,0302HLOOP1:INAL,DXANDAL,08HJZLOOP1MOVDX,0300HMOVAL,ES:[BX]OUTDX,ALINCBXDECCXJNZLOOP0MOVAX,4C00HINT21H第二章:总结(1)1、面向的对象实体:可编程外围接口并行芯片——82C55A。2、82C55的体系结构:①三个8位的并行I/O端口,即A口、B口及C口;分两组:A组由A口和C口高4位组成,B组由B口和C口的低4位组成。②有两条命令字:控制命令字和按位置位/复位命令字,由D7位来区别。③PA口可工作方式0、方式1和方式2。而PB口只能工作在方式0和方式1。④PC口的特殊使用:在方式1和方式2时,PC口大部分引脚作联络和控制信号。第二章:总结(2)⑤主要由控制寄存器、状态寄存器、数据寄存器及读写控制逻辑等组成。3、对82C55A的初始化设置定义:由控制字和按位置位/复位字设置,即P542.2.1控制寄存器的控制功能;P64图2-10按位置1/置0的方法。应用示例和连接方法:根据初始化设置的端口连接两个系统的具体线路P71图2-17。初始化编程:P71初始化程序示例。4、分析设计与连线:确定PC口的控制联络线OBF#、ACK#、INTR、IBF、STB等。
本文标题:可编程外围接口82C55A
链接地址:https://www.777doc.com/doc-7028950 .html