第5章可编程接口芯片.ppt
《第5章可编程接口芯片.ppt》由会员分享,可在线阅读,更多相关《第5章可编程接口芯片.ppt(91页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第5章可编程接口芯片 Still waters run deep.流静水深流静水深,人静心深人静心深 Where there is life,there is hope。有生命必有希望。有生命必有希望5.1可编程并行接口可编程并行接口8255A5.1.18255A的内部结构与外部引脚的内部结构与外部引脚1.三个数据端口三个数据端口A、B、C三个三个8位的输入输出端口,可用指令将它们分别设置成输入或位的输入输出端口,可用指令将它们分别设置成输入或输出端口。输出端口。2.A组控制、组控制、B组控制组控制8255A将端口将端口A、B、C分为两组:端口分为两组:端口A和端口和端口C的高的高4位构位构成
2、成A组,端口组,端口B和端口和端口C的低的低4位构成位构成B组。组。3.数据总线缓冲器数据总线缓冲器双向三态的双向三态的8位缓冲器,与系统数据总线连接,是位缓冲器,与系统数据总线连接,是8255A与与CPU之间信息传输的必经之路。之间信息传输的必经之路。4.读读/写控制逻辑写控制逻辑管理管理8255A的数据传输过程。的数据传输过程。图图5-25.8255A的引脚的引脚8255的引脚信号:的引脚信号:(1).与与CPU连接的信号线连接的信号线D7D0:8255A的双向三态数据线。的双向三态数据线。A1、A0:端口地址选择信号。端口地址选择信号。CS#:片选信号。片选信号。RD#:读信号,低电平有
3、效。读信号,低电平有效。WR#:写信号,低电平有效。写信号,低电平有效。RESET:复位信号。复位信号。VCC、GND:电源和地线。电源和地线。(2).与外部设备相连的信号线与外部设备相连的信号线PA7PA0:A口与外部设备连接的数据线。口与外部设备连接的数据线。PB7PB0:B口与外部设备连接的数据线。口与外部设备连接的数据线。PC7PC0:C口输入输出数据线。口输入输出数据线。5.1.28255A的控制字的控制字1.1.方式选择控制字方式选择控制字 8255A有三种基本工作方式:有三种基本工作方式:方式方式0:基本的输入:基本的输入/输出方式。输出方式。方式方式1:选通输入:选通输入/输出
4、方式。输出方式。方式方式2:双向传输方式。:双向传输方式。8255A各各数数据据端端口口的的工工作作方方式式由由方方式式选选择择控控制制字字进行设置。进行设置。图图5-38255A方式选择控制字方式选择控制字D7位是方式选择控制字的标志位,它必须是位是方式选择控制字的标志位,它必须是1;D6D5位用于选择位用于选择A口的工作方式;口的工作方式;D4、D3用于选择用于选择A口、口、C口高四位输入输出功能设置。口高四位输入输出功能设置。D2位用于选择位用于选择B口的工作方式。口的工作方式。端端口口A可可工工作作在在3种种工工作作方方式式中中的的任任何何一一种种,端端口口B只只能能工工作作在在方方式
5、式0或或方方式式1,端端口口C则则常常常常配配合合端端口口A和和端口端口B工作。工作。只有端口只有端口A可工作在方式可工作在方式2。2.端口端口C按位置位按位置位/复位控制字复位控制字端端口口C有有一一种种特特殊殊的的控控制制方方式式,可可以以将将端端口口C的的某某一一位位置置1或清或清0,而不影响端口,而不影响端口C的其他位的状态。的其他位的状态。5.1.38255A的工作方式的工作方式1 1方式方式0 0 基本输入基本输入/输出方式输出方式(1)方式)方式0的工作特点:的工作特点:A口和口和B口作为两个口作为两个8位端口位端口C口的高口的高4位和低位和低4位可以用作两个位可以用作两个4位端
6、口位端口(2)方式方式0的使用场合:的使用场合:无条件传送无条件传送查询式传送查询式传送2方式方式1选通输入选通输入/输出方式输出方式(1 1)方式)方式1 1工作特点工作特点带有选通的输入带有选通的输入/输出方式。输出方式。端口端口A、端口端口B和端口和端口C被分为两个组。被分为两个组。端端口口A和和端端口口B用用作作8位位数数据据的的输输入入/输输出出,端端口口C的的一一些些引引脚被规定为端口脚被规定为端口A、B的联络信号。的联络信号。(2)方式)方式1联络信号联络信号IBFA、IBFB:输入缓冲区满信号,高电平有效。输入缓冲区满信号,高电平有效。STBa#、STBb#:选通信号输入,负脉
7、冲。选通信号输入,负脉冲。OBFA#、OBFB#:输出缓冲区满信号,低电平有效。输出缓冲区满信号,低电平有效。ACKA#、ACKB#:外外设设接接收收到到输输出出数数据据后后给给8255A的的应应答信号,下降沿答信号,下降沿/负脉冲有效负脉冲有效。INTEA和和INTEB:端口端口A和端口和端口B的中断允许信号。的中断允许信号。INTR:中断请求信号,中断请求信号,8255A输出给输出给CPU。(3)方式)方式1的使用的使用查询方式查询方式中断方式中断方式端口端口/工作工作方式方式联络线联络线输入输入输出输出A口方式1PC7OBFA#PC6ACKA#/INTEAPC5IBFAPC4STBA#/
8、INTEAPC3INTRAINTRAB口方式1PC2STBB#/INTEBACKB#/INTEBPC1IBFBOBFB#PC0INTRBINTRB8255A芯片方式芯片方式1的联络信号的联络信号3方式方式2双向输入双向输入/输出方式输出方式(1)方式)方式2工作特点工作特点方方式式2只只适适用用于于端端口口A,是是双双向向的的输输入入/输输出出传传输输方式。方式。方式方式2下各信号含义见表下各信号含义见表5-3,其中:,其中:INTE1:输出中断允许信号。输出中断允许信号。INTE2:输入中断允许信号输入中断允许信号。(2)方式)方式2的使用场合的使用场合联络线联络线联络信号联络信号信号含义信
9、号含义PC7OBFA#A口输出缓冲器满PC6ACKA#/INTE1A口收到外设应答信号输出中断允许PC5IBFAA口输入缓冲器满PC4STBA#/INTE2A口外设数入选通信号输入中断允许PC3INTRA中断请求信号PC2I/O数据线或B组联络线PC1I/O数据线或B组联络线PC0I/O数据线或B组联络线8255芯片方式芯片方式2的联络信号的联络信号5.1.48255A的应用的应用1.8255A与与CPU的连接的连接数据线和控制线一般直接和系统总线的相应信号相连数据线和控制线一般直接和系统总线的相应信号相连片选信号和地址译码器的输出相连片选信号和地址译码器的输出相连三个端口的数据线和外设的数据
10、线直接相连三个端口的数据线和外设的数据线直接相连8255A的端口选择信号的端口选择信号A1和和A0,8088CPU与与8086CPU在在连接上有所不同连接上有所不同图图5-52.8255A基本输入输出应用基本输入输出应用作为键盘接口作为键盘接口:“反转法反转法”进行键盘扫描:进行键盘扫描:设设8255A为方式为方式0,A口输出,口输出,B口输入;口输入;向向A口输出口输出00H,从从B口读入键盘列线值:口读入键盘列线值:低低4位值为位值为0FH:无键按下无键按下否则,就有键按下否则,就有键按下有键按下时,将有键按下时,将8255A反向设置为反向设置为A口输入,口输入,B口输出口输出将将B口原读
11、入值从口原读入值从B口输出口输出从从A口输入,得到该键的口输入,得到该键的“行列码行列码”“反转法反转法”键盘扫描程序:键盘扫描程序:KEYSCANPROC NEARBEGIN:MOV DX,20EH;置置8255A控制口地址控制口地址MOV AL,82H;8255A方式控制字方式控制字 ;A口工作在方式口工作在方式0输出,输出,B口工作在方式口工作在方式0输入输入OUTDX,AL;输出输出8255A方式控制字方式控制字LOOP1:MOVDX,208H;A口地址送口地址送DXMOV AL,00HOUTDX,AL;A口输出口输出00H扫描键盘扫描键盘MOV DX,20AH;B口地址送口地址送DX
12、中中INAL,DX;读入键盘列值读入键盘列值ANDAL,0FH;保留低保留低4位位CMP AL,0FHJELOOP1;无键按下,重新扫描无键按下,重新扫描CALL DELAY;有键按下,延时去抖动有键按下,延时去抖动INAL,DX ;再次读再次读B口,检查有无键按下口,检查有无键按下ANDAL,0FH;保留低保留低4位位CMP AL,0FHJELOOP1;无键按下,重新扫描无键按下,重新扫描MOV KEY,AL;有键按下,列值保存在有键按下,列值保存在KEY单元单元MOV DX,20EH;置置8255A控制口地址控制口地址MOV AL,90H;8255A方式控制字方式控制字;B口方式口方式0输
13、出,输出,A口方式口方式0输入输入OUTDX,AL;输出输出8255A方式控制字方式控制字MOV DX,20AH;B口地址送口地址送DX中中MOV AL,KEY;从从KEY单元取出列值单元取出列值OUTDX,AL;向向B口输出列值,反向扫描口输出列值,反向扫描MOV DX,208H;A口地址送口地址送DXINAL,DX;从从A口读入行值口读入行值ANDAL,1FH;保留低保留低5位位CMP AL,1FHJEBEGIN;无键按下,重新扫描无键按下,重新扫描CALL KEYVALUE;转键值处理程序:查表获得按键编码,保存转键值处理程序:查表获得按键编码,保存MOV DX,20AH;B口地址送口地
14、址送DX中中MOV AL,0OUTDX,AL;向向B口输出列值,反向扫描口输出列值,反向扫描MOV DX,208H;A口地址送口地址送DXWAIT2:INAL,DX;从从A口读入行值口读入行值ANDAL,1FH;保留低保留低5位位CMP AL,1FHJNEWAIT2;未释放,等待未释放,等待RETKEYSCANENDP82558255方式方式0 0应用应用-用作打印机接口用作打印机接口3.8255A中断方式应用中断方式应用8255A的的A口口工工作作在在方方式式1输输出出方方式式,用用以以传传送送打印字符。打印字符。PC6自动作为自动作为ACK#信号输入端信号输入端PC0用来发送选通脉冲用来发
15、送选通脉冲PC3(INTR)连连到到中中断断控控制制器器8259A的的IR3,对对应应中中断断类类型码为型码为0BH8255A的端口地址为的端口地址为0C0H0C6H。中断方式实现中断方式实现26个英文字母的输出。个英文字母的输出。图图5-7.dataBUFFER DB“abcdefghijklmnopqrstuvwxyz”,0dh,0ahOUT_POINTERDW?;缓冲区输出指针缓冲区输出指针DONEDB?;完成标志,完成标志,=1表示已输出完成表示已输出完成.codeSTART:MOV AX,SEG LPRINTMOV DS,AXLEADX,LPRINTMOV AX,250BHINT21
16、H;设置设置0BH中断向量中断向量MOV AX,dataMOV DS,AX;装载装载DSLEABX,BUFFERMOVOUT_POINTER,BX;设置输出缓冲区指针设置输出缓冲区指针MOVDONE,0;设置未完成标志设置未完成标志MOV AL,0A0HOUT0C6H,AL;8255A的方式选择字,的方式选择字,A口工作在方式口工作在方式1,输出,输出MOVAL,1OUT0C6H,AL;PC0置为置为1,使选通无效,使选通无效MOVAL,0DHOUT0C6H,AL;使使PC6为为1,允许,允许8255A的打印机中断的打印机中断INAL,21HANDAL,11110111BOUT21H,AL;清
17、清8259的的IR3屏蔽,允许打印机中断屏蔽,允许打印机中断STI;开中断开中断INT0BH;调用调用0BH中断服务程序输出第一个字符中断服务程序输出第一个字符WAIT1:CMPDON E,0JEWAIT1;未完成,循环等待未完成,循环等待MOVAX,4C00HINT21H ;打印完成,返回操作系统打印完成,返回操作系统;以下为中断服务子程序:以下为中断服务子程序:LPTINTPROCFARPUSHDS;保护现场保护现场PUSHAXPUSHDISTI;开放中断开放中断MOVAX,SEGBUFFER;装载输出缓冲区指针装载输出缓冲区指针MOVDS,AX MOVDI,OUT_POINTERMOVA
18、L,DI OUT0C0H,AL;字符送字符送A口口MOVAL,0;使使PC0为为0,产生选通信号,产生选通信号OUT0C6H,ALCALLDelay;适当延时适当延时INCAL;使使PC0为为1,撤消选通信号,撤消选通信号OUT0C6H,ALINCOUT_POINTER;修改地址指针修改地址指针CMPBYTE PTRDI,0AH JNENEXTMOVDONE,1;已完成,置完成标志已完成,置完成标志MOVAL,0CHOUT0C6H,AL;使使PC6为为0,关闭,关闭8255A的打印机中断的打印机中断INAL,21H ORAL,00001000BOUT21H,AL;重新屏蔽重新屏蔽8259的的I
19、R3,关闭关闭8259A的打印机中断的打印机中断NEXT:CLI;中断结束处理,关闭中断中断结束处理,关闭中断MOVAL,20HOUT20H,AL;向向8259A发发EOI命令命令POPDI;恢复现场恢复现场POPAXPOPDS IRETLPRINTENDPENDSTART 4.8255A在在PC机中的应用机中的应用早早期期的的PC/XT微微机机系系统统(8088CPU)使使用用一一片片8255A,系系统统分分配配的的端端口口地地址址为为60H63H,工工作作在在基基本本输输入入/输出方式。输出方式。1)A口用作键盘接口电路,接收串并转换后的键盘扫描码。口用作键盘接口电路,接收串并转换后的键盘
20、扫描码。2)B口口的的PB7和和PB6用用于于控控制制键键盘盘接接口口电电路路,PB1和和PB0用用于控制发声系统。于控制发声系统。C口连接口连接“系统配置开关系统配置开关”。80286以以上上的的微微机机系系统统中中,8255A的的对对应应电电路路被被集集成成到到多多功功能能芯芯片片内内部部,保保留留了了8255A的的端端口口地地址址和和它它的的相相应功能。应功能。5.2可编程定时器可编程定时器/计数器计数器8254计算机系统中经常要用到定时信号,如定时检测、计算机系统中经常要用到定时信号,如定时检测、定时扫描和时钟定时等,定时方法通常有以下三定时扫描和时钟定时等,定时方法通常有以下三种:种
21、:(1)软件定时)软件定时(2)不可编程的硬件定时)不可编程的硬件定时(3)可编程的硬件定时)可编程的硬件定时许多场合还需要对脉冲信号进行计数。许多场合还需要对脉冲信号进行计数。本节介绍本节介绍Intel8254定时计数器芯片,它是一种定时计数器芯片,它是一种的可编程的定时器件。的可编程的定时器件。Intel8254主要特性:主要特性:(1)3个独立的个独立的16位定时位定时/计数通道。计数通道。(2)每个通道有)每个通道有6种工作方式。种工作方式。(3)最高计数频率为)最高计数频率为10MHz。(4)可以按二进制或可以按二进制或BCD码两种方式计数。码两种方式计数。(5)定定时时时时间间长长
22、短短可可用用软软件件设设置置,可可由由软软件件或或硬硬件件控制开始计数或停止计数。控制开始计数或停止计数。(6)可可以以同同时时锁锁存存13个个计计数数器器的的计计数数值值和和状状态态值值,供供CPU读取。读取。5.2.18254的内部结构与外部引脚的内部结构与外部引脚1.数据总线缓冲器数据总线缓冲器8254与系统数据总线相连的接口电路。与系统数据总线相连的接口电路。通过数据总线缓冲器,通过数据总线缓冲器,CPU用指令对用指令对8254进行读进行读/写:写:(1)8254初始化编程时,写入控制字。初始化编程时,写入控制字。(2)CPU向某一计数器写入计数初值。向某一计数器写入计数初值。(3)C
23、PU读出计数器的当前计数值。读出计数器的当前计数值。2.读读/写控制逻辑写控制逻辑接收来自接收来自CPU的控制信号:的控制信号:读信号读信号RD#写信号写信号WR#片选信号片选信号CS#芯片内部寄存器寻址信号芯片内部寄存器寻址信号A1A03计数器计数器028254有有3个结构完全相同的定时器个结构完全相同的定时器/计数器通道计数器通道:0,1,2每个通道包含每个通道包含:一个一个8 8位的控制字寄存器位的控制字寄存器三个三个1616位的初值寄存器、减位的初值寄存器、减1 1计数器和结果输出锁存器。计数器和结果输出锁存器。每个通道有每个通道有3根专用的信号线:根专用的信号线:CLK:计计数数/定
24、定时时脉脉冲冲输输入入端端,每每输输入入一一个个脉脉冲冲,减减1操作操作OUT:计数值减到零时,由输出端计数值减到零时,由输出端OUT输出结束信号输出结束信号GATE:门控信号,允许或停止计数门控信号,允许或停止计数图图5-9CLK脉冲脉冲:8254作作外外部部事事件件计计数数器器时时,CLK引引脚脚上上的的计计数数脉脉冲冲从从外部输入,这些脉冲的间隔可以不相等。外部输入,这些脉冲的间隔可以不相等。8254用用作作定定时时器器时时,CLK引引脚脚的的输输入入信信号号是是精精确确的的时时钟脉冲。钟脉冲。8254的定时时间的定时时间T时钟脉冲周期时钟脉冲周期tc计数初值计数初值n4.控制寄存器控制
25、寄存器控控制制寄寄存存器器是是一一个个只只能能写写入入的的寄寄存存器器,它它接接收收从从CPU来来的的控控制制字字,并并由由控控制制字字的的D7、D6位位的的编编码码决定控制字写入哪个计数器的控制寄存器。决定控制字写入哪个计数器的控制寄存器。在在对对8254进进行行编编程程时时,CPU用用输输出出指指令令向向它它写写入入控控制制字字,由由此此确确定定各各计计数数器器通通道道的的工工作作方方式式、读读写格式和计数的数制。写格式和计数的数制。5.Intel8254的引脚的引脚(1)CS#:片选信号,接片选信号,接IO端口译码电路的输出端口译码电路的输出(2)RD#,WR#:读写控制信号读写控制信号
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 可编程 接口 芯片
限制150内