常用接口芯片实用教案

上传人:莉**** 文档编号:76076015 上传时间:2022-04-17 格式:PPTX 页数:90 大小:1.08MB
收藏 版权申诉 举报 下载
常用接口芯片实用教案_第1页
第1页 / 共90页
常用接口芯片实用教案_第2页
第2页 / 共90页
常用接口芯片实用教案_第3页
第3页 / 共90页
资源描述:

《常用接口芯片实用教案》由会员分享,可在线阅读,更多相关《常用接口芯片实用教案(90页珍藏版)》请在装配图网上搜索。

1、 微型计算机经常要对外部事件微型计算机经常要对外部事件(shjin)进行定时控进行定时控制或对外部事件制或对外部事件(shjin)发生的次数进行记数,即定时发生的次数进行记数,即定时或计数控制。一般采用两种方法,软件法和可编程定时或计数控制。一般采用两种方法,软件法和可编程定时/计数器法。后者构成一个方便灵活的定时计数器法。后者构成一个方便灵活的定时/计数电路。计数电路。这种电路不仅定时值和定时范围可由程序设置,而且具这种电路不仅定时值和定时范围可由程序设置,而且具有多种工作方式,可以输出多种控制信号,具备较强的有多种工作方式,可以输出多种控制信号,具备较强的功能。功能。 8.1 可编程定时(

2、dn sh)计数器8253/8254 第1页/共89页第一页,共90页。 在设定了定时值及计数范围后,定时在设定了定时值及计数范围后,定时/计数器就可以脱离计数器就可以脱离CPU独立独立(dl)进进行定时或计数,完全不占用行定时或计数,完全不占用CPU的资源。的资源。 8254是是8253的升级产品,它的引脚和的升级产品,它的引脚和8253完全相同,凡是使用完全相同,凡是使用8253的系统,均可由的系统,均可由8254来取代。来取代。8254的工作频率的工作频率比比8253高,它还可通过读回命令来读取状态寄存器的当前内容以及计数器的值。高,它还可通过读回命令来读取状态寄存器的当前内容以及计数器

3、的值。8.1 可编程定时(dn sh)计数器8253/8254 第2页/共89页第二页,共90页。 8253具有具有3个功能相同的个功能相同的16位减法计数器位减法计数器T0、T1和和T2,可进行二进制或十,可进行二进制或十进制的计数进制的计数/定时操作。通过编程可以选择定时操作。通过编程可以选择(xunz)多种工作方式和计数初值,可多种工作方式和计数初值,可以方便地与以方便地与PC总线连接。总线连接。 8253的内部结构如图所示,主要由数据总线缓冲器、读的内部结构如图所示,主要由数据总线缓冲器、读/写逻辑、控制寄存写逻辑、控制寄存器及三个功能相同的计数器组成。器及三个功能相同的计数器组成。8

4、.1.1 8253的内部结构及其外部(wib)引脚 第3页/共89页第三页,共90页。8253内部内部(nib)结构图结构图8.1.1 8253的内部结构及其外部(wib)引脚 第4页/共89页第四页,共90页。 (1)数据总线缓冲器)数据总线缓冲器 该缓冲器为三态、双向的该缓冲器为三态、双向的8位缓冲器,用于位缓冲器,用于将将8253与系统数据总线相连接。与系统数据总线相连接。CPU执行执行I/O 指令时通过缓冲器发送或接收指令时通过缓冲器发送或接收(jishu)数据,数据,写入写入8253控制字、装入计数初值或读出当前计控制字、装入计数初值或读出当前计数值。数值。 (2)读)读/写逻辑写逻

5、辑 读读/写逻辑电路的功能是接收写逻辑电路的功能是接收(jishu)来来自自CPU的控制信号,包括读、写信号和地址信的控制信号,包括读、写信号和地址信号,然后产生控制整个芯片工作的控制信号。号,然后产生控制整个芯片工作的控制信号。8.1.1 8253的内部结构及其外部(wib)引脚 第5页/共89页第五页,共90页。 (3)控制)控制(kngzh)寄存器寄存器 每个计数器都有每个计数器都有1个控制个控制(kngzh)寄存器,寄存器,只能写入,不能读出,用于接收只能写入,不能读出,用于接收CPU送来的方式送来的方式控制控制(kngzh)字。控制字。控制(kngzh)字决定了计字决定了计数器的工作

6、方式、计数形式和计数初值写入方式数器的工作方式、计数形式和计数初值写入方式等。等。 (4)计数器)计数器0计数器计数器2 三个计数器内部结构完全相同,每个计数器三个计数器内部结构完全相同,每个计数器中都有一个中都有一个16位减法计数器,可对二进制数或十位减法计数器,可对二进制数或十进制数的进制数的BCD码进行计数。每个计数器都有时钟码进行计数。每个计数器都有时钟输入输入CLK、门控输入、门控输入GATE和输出和输出OUT引脚。引脚。 8.1.1 8253的内部结构及其外部(wib)引脚 第6页/共89页第六页,共90页。8253引脚图引脚图D0D1D2D3WRA0A1CSD4D5D687654

7、3212223192021D7RD91110CLK0GATE0OUT0151413CLK1GATE1OUT1181617CLK2GATE2OUT22412VCCGND8.1.1 8253的内部结构及其外部(wib)引脚 第7页/共89页第七页,共90页。 (读操作) (写操作)PC机I/O地址000读计数器0写计数器040H001读计数器1写计数器141H010读计数器2写计数器242H011无操作写控制字43H1无操作无操作WRRD0A1ACS8253端口选择端口选择(xunz)表表8.1.1 8253的内部结构及其外部(wib)引脚 第8页/共89页第八页,共90页。 8253的工作方式可

8、以通过编程序设定的工作方式可以通过编程序设定(sh dn),将给定的工作方式控制,将给定的工作方式控制字写入控制寄存器,就可以选定字写入控制寄存器,就可以选定8253的计数通道,并规定计数通道的工作方式,的计数通道,并规定计数通道的工作方式,读写格式和计数数制。读写格式和计数数制。8253的控制字如图所示。的控制字如图所示。8.1.2 8253的控制(kngzh)字 第9页/共89页第九页,共90页。1BCD 计数D7D6D5D4D3D2D1D0SC1SC0RL1RL0M2M1M0BCD0二进制计数工作方式选择000 方式 0001 方式 1 10 方式 2 11 方式 3100 方式 410

9、1 方式 5计数长度选择00 将计数器中的数据锁存于缓冲器01 选择计数器低8位读或写10 选择计数器高8位读或写11 选择先低后高两个字节读或写计数器选择00 计数器001 计数器110 计数器211 非法 8253的控制(kngzh)字格式 8.1.2 8253的控制(kngzh)字 第10页/共89页第十页,共90页。 SC1SC0 :计数通道:计数通道(tngdo)选择选择位。位。8253的的3个计数器是完全独立的,所以个计数器是完全独立的,所以需要有需要有3个控制寄存器存放各自的控制字,但个控制寄存器存放各自的控制字,但是这是这3个控制字寄存器的地址是惟一的,即个控制字寄存器的地址是

10、惟一的,即A0A1=11所对应的地址。所以将控制字的所对应的地址。所以将控制字的最高最高2位位SC1和和SC0用于选择使用哪个计数器,用于选择使用哪个计数器,指明该控制字将指挥哪个计数器工作。指明该控制字将指挥哪个计数器工作。8.1.2 8253的控制(kngzh)字 第11页/共89页第十一页,共90页。 RL1RL0:读:读/写操作位。它规定了数据读写操作位。它规定了数据读写格式。写格式。 RL1RL0 00时,是计数值锁存操作。时,是计数值锁存操作。在计数过程中读计数值时,需要先送出锁存命令,在计数过程中读计数值时,需要先送出锁存命令,再读取计数值。再读取计数值。 M2M1M0:工作方式

11、位。它用来指定所:工作方式位。它用来指定所选择计数器的工作方式,选择计数器的工作方式,8253共有共有6种工作方种工作方式,即方式式,即方式0方式方式5,每种工作方式都对应各自每种工作方式都对应各自的工作流程、计数器的输出和门控信号的工作流程、计数器的输出和门控信号(xnho)。 BCD:计数类型位。用以确定计数是采用:计数类型位。用以确定计数是采用二进制计数还是十进制计数。二进制计数还是十进制计数。8.1.2 8253的控制(kngzh)字 第12页/共89页第十二页,共90页。 根据计数器启动计数的方式的不同和计数结束后输出波形的不同,8253有6种工作方式可供选择。 1. 方式0(计数结

12、束产生中断) 8253工作于方式0时,CLK端作为(zuwi)计数输入信号,OUT端为输出信号,当减1计数器减到零时,OUT输出高电平。8.1.3 8253工作方式(fngsh)与操作时序 第13页/共89页第十三页,共90页。8253工作工作(gngzu)方式方式0时序时序8.1.3 8253工作方式(fngsh)与操作时序 第14页/共89页第十四页,共90页。 当当GATE为为1时,写入控制字后时,写入控制字后OUT信号立即信号立即(lj)变为低电平。将计数初值变为低电平。将计数初值N写入计数初值寄存器后,从下一个写入计数初值寄存器后,从下一个CLK脉冲的下降沿开始进行减脉冲的下降沿开始

13、进行减1计数,计数期间计数,计数期间OUT端一直维持低电平,直到计数器减到零,端一直维持低电平,直到计数器减到零,OUT端变为高电平,并保持到重新端变为高电平,并保持到重新写入计数初值或复位。写入计数初值或复位。OUT端输出的高电平可以作为中断请求信号使用。端输出的高电平可以作为中断请求信号使用。8.1.3 8253工作方式与操作(cozu)时序 第15页/共89页第十五页,共90页。 2方式方式1(可编程单稳脉冲方式)(可编程单稳脉冲方式) 方式方式1可以输出一个宽度可编程控制可以输出一个宽度可编程控制的负脉冲,并由的负脉冲,并由GATE门控信号的上升门控信号的上升(shngshng)沿启动

14、计数器。沿启动计数器。 写入控制字后,写入控制字后,OUT端即输出高电端即输出高电平。将计数初值平。将计数初值N写入计数初值寄存器后,写入计数初值寄存器后,计数器并不开始计数,而是要等到门控信计数器并不开始计数,而是要等到门控信号号GATE的上升的上升(shngshng)沿到来后沿到来后的下的下个个CLK脉冲的下降沿到来时才开始脉冲的下降沿到来时才开始计数。此时输出计数。此时输出OUT变为低电平,直至计变为低电平,直至计数器计数减到数器计数减到0,计数过程结束,输出端,计数过程结束,输出端OUT变为高电平。在这个过程中,变为高电平。在这个过程中,OUT端的输出为单稳态负脉冲,其宽度为端的输出为

15、单稳态负脉冲,其宽度为N个个CLK脉冲周期。脉冲周期。 8.1.3 8253工作(gngzu)方式与操作时序 第16页/共89页第十六页,共90页。8253工作工作(gngzu)方式方式1时序时序8.1.3 8253工作方式与操作(cozu)时序 第17页/共89页第十七页,共90页。 3方式方式2(频率发生器)(频率发生器) 方式方式2能在能在OUT端输出连续的周期端输出连续的周期性负脉冲信号,又称为频率发生器方式。性负脉冲信号,又称为频率发生器方式。其其OUT端输出负脉冲的宽度等于端输出负脉冲的宽度等于1个个CLK计数时钟周期,输出脉冲的周期等计数时钟周期,输出脉冲的周期等于于N(计数初值

16、)个(计数初值)个CLK计数时钟周期。计数时钟周期。在计数过程在计数过程(guchng)中,中,CPU重新重新写入初值时,现行的计数过程写入初值时,现行的计数过程(guchng)不受影响,直到下一次计不受影响,直到下一次计数时,计数器才按新的计数值进行计数数时,计数器才按新的计数值进行计数操作。操作。 8.1.3 8253工作方式与操作(cozu)时序 第18页/共89页第十八页,共90页。8253工作工作(gngzu)方式方式2时序时序8.1.3 8253工作方式与操作(cozu)时序 第19页/共89页第十九页,共90页。 4方式方式3(方波发生器)(方波发生器) 方式方式3的操作也是一种

17、连续计数的工的操作也是一种连续计数的工作方式,只是作方式,只是OUT端输出的是方波,当计端输出的是方波,当计数值数值N为偶数,则输出对称的方波、前为偶数,则输出对称的方波、前N/2个计数期间个计数期间(qjin)OUT输出高电平,输出高电平,后后N/2个计数期间个计数期间(qjin)输出低电平;输出低电平;当当N为奇数,则前为奇数,则前(N+1)/2计数期间计数期间(qjin)输出高电平;后输出高电平;后(N1)/2计数期计数期间间(qjin)输出低电平。计数器当前值减输出低电平。计数器当前值减到到0时计数器从新装入计数初值,开始新时计数器从新装入计数初值,开始新一轮计数。一轮计数。8.1.3

18、 8253工作方式(fngsh)与操作时序 第20页/共89页第二十页,共90页。8253工作方式工作方式(fngsh)3时序时序8.1.3 8253工作方式(fngsh)与操作时序 第21页/共89页第二十一页,共90页。 5方式方式4(软件触发方式)(软件触发方式) 方式方式4与方式与方式0非常类似,写入计非常类似,写入计数初值后,在下一个时钟脉冲的下降沿数初值后,在下一个时钟脉冲的下降沿开始计数。然后计数开始,当计数减到开始计数。然后计数开始,当计数减到0时,由时,由OUT输出一个时钟周期宽度输出一个时钟周期宽度(kund)的负脉冲,计数器停止工作。的负脉冲,计数器停止工作。 当门控当门

19、控GATE信号为高电平时,写信号为高电平时,写入入8253控制字后,控制字后,OUT输出立即变高输出立即变高电平,写入计数初值后即开始计数(软电平,写入计数初值后即开始计数(软件触发),当计数器减到件触发),当计数器减到0时输出时输出1个时个时钟周期的负脉冲。计数器停止计数。钟周期的负脉冲。计数器停止计数。 8.1.3 8253工作(gngzu)方式与操作时序 第22页/共89页第二十二页,共90页。8253工作工作(gngzu)方式方式4时序时序8.1.3 8253工作(gngzu)方式与操作时序 第23页/共89页第二十三页,共90页。 6方式方式5(硬件选通方式)(硬件选通方式) 方式方

20、式4与方式与方式0非常类似,写入计数非常类似,写入计数初值后,在下一个时钟脉冲初值后,在下一个时钟脉冲(michng)的下降沿开始计数。然后计数开始,当计的下降沿开始计数。然后计数开始,当计数减到数减到0时,由时,由OUT输出一个时钟周期宽输出一个时钟周期宽度的负脉冲度的负脉冲(michng),计数器停止工,计数器停止工作。作。 当门控当门控GATE信号为高电平时,写入信号为高电平时,写入8253控制字后,控制字后,OUT输出立即变高电平,输出立即变高电平,写入计数初值后即开始计数(软件触发),写入计数初值后即开始计数(软件触发),当计数器减到当计数器减到0时输出时输出1个时钟周期的负脉个时钟

21、周期的负脉冲冲(michng)。计数器停止计数。计数器停止计数。 8.1.3 8253工作方式(fngsh)与操作时序 第24页/共89页第二十四页,共90页。8253工作方式工作方式(fngsh)5时序时序8.1.3 8253工作方式(fngsh)与操作时序 第25页/共89页第二十五页,共90页。 1初始化的编程初始化的编程 对对8253初始化编程包括写入控制字和写入计数初值两个步骤:初始化编程包括写入控制字和写入计数初值两个步骤: (1)先将方式控制字写入计数器的控制寄存器,以确定该计数通道的工作方)先将方式控制字写入计数器的控制寄存器,以确定该计数通道的工作方式。式。 (2)写入定时或

22、计数的初值。如果计数值为)写入定时或计数的初值。如果计数值为16位,则要用两条输出指令完成位,则要用两条输出指令完成初值的设置,即先写低字节,再写高字节,并注意初值的设置,即先写低字节,再写高字节,并注意(zh y)写入正确的计数通道地写入正确的计数通道地址。址。8.1.4 初始化编程与读输出(shch)锁存器第26页/共89页第二十六页,共90页。 在不需要门控信号在不需要门控信号GATE 触发的方式触发的方式(fngsh)中,写入计数初值计数就开始了。中,写入计数初值计数就开始了。 例如,对计数器例如,对计数器0 初始化,使其工作于方式初始化,使其工作于方式(fngsh)1,按二进制计数,

23、计数值为,按二进制计数,计数值为5080H。计数值低计数值低8位为位为80H,高,高8位为位为50H,假设端口地,假设端口地址为址为2A0H2A3H,则初始化程序为:,则初始化程序为: 8.1.4 初始化编程与读输出(shch)锁存器第27页/共89页第二十七页,共90页。MOV DX,2A3H ;控制;控制(kngzh)端口地址为端口地址为2A3HMOV AL,32H ;控制;控制(kngzh)字为字为00110010B OUT DX,AL ;送控制;送控制(kngzh)字到控制字到控制(kngzh)字寄存器字寄存器MOV DX,2A0H ;计数器;计数器0端口地址为端口地址为2A0HMOV

24、 AL,80HOUT DX,AL ;先写低;先写低8位计数值到计数器位计数值到计数器0MOV AL,50HOUT DX,AL ;再写高;再写高8位计数值到计数器位计数值到计数器08.1.4 初始化编程与读输出(shch)锁存器第28页/共89页第二十八页,共90页。 2读输出锁存器读输出锁存器 CPU可用指令读取可用指令读取8253任任通道的计数值,读到的是执行指令瞬间通道的计数值,读到的是执行指令瞬间(shn jin)的值。因为的值。因为8253是是16位的,要分两次读至位的,要分两次读至CPU,因此若不锁存的话,在前,因此若不锁存的话,在前两次执行输入指令的过程中,计数值可能已经变化了。锁

25、存当前计数值有两种方法:两次执行输入指令的过程中,计数值可能已经变化了。锁存当前计数值有两种方法: (1)利用)利用GATE信号使计数过程暂停。信号使计数过程暂停。 (2)利用控制字将待读计数值锁存至锁存器。)利用控制字将待读计数值锁存至锁存器。 8.1.4 初始化编程与读输出(shch)锁存器第29页/共89页第二十九页,共90页。 这种方法通过写入控制字这种方法通过写入控制字=00,使其不受执行计数单元的变化而变化,保证,使其不受执行计数单元的变化而变化,保证CPU读出一个读出一个(y )稳定的数值。读输出锁存器的值,也有读稳定的数值。读输出锁存器的值,也有读8位和读位和读16位的问位的问

26、题,若是读题,若是读16位的数据,分两次读出,先读低字节,再读高字节,即执行两次输位的数据,分两次读出,先读低字节,再读高字节,即执行两次输入指令。入指令。CPU 读取此锁存值后,锁存器自动解除。读取此锁存值后,锁存器自动解除。 8.1.4 初始化编程与读输出(shch)锁存器第30页/共89页第三十页,共90页。例如:要读取上面例如:要读取上面(shng min)例子中计数器例子中计数器0的的16位位计数值,采用锁存器锁存方式的程序为:计数值,采用锁存器锁存方式的程序为: MOV AL,00H ;锁存计数通道;锁存计数通道0的控制字的控制字00H MOV DX,2A3H ;控制字送控制端口;

27、控制字送控制端口 OUT DX,AL MOV DX,2A0H IN AL,DX ;读取计数器;读取计数器0的低的低8位数据位数据XCHG AL,AH ;暂存;暂存AH IN AL,DX ;读取计数器;读取计数器0的高的高8位数据位数据XCHG AL,AH ;AX中为计数器中为计数器0的的16位计数位计数值值8.1.4 初始化编程与读输出(shch)锁存器第31页/共89页第三十一页,共90页。 18253在在PC机上的应用机上的应用 IBM PCXT机使用机使用(shyng)一片一片Intel 8253,3条计数通道分别用于日条计数通道分别用于日时钟计时、时钟计时、DRAM刷新定时和扬声器发声

28、。刷新定时和扬声器发声。IBM PCAT使用使用(shyng)与与8253兼容的兼容的Intel 8254,在,在AT机的连接使用机的连接使用(shyng)也与也与XT机一样。三条机一样。三条计数器通道的时钟输入计数器通道的时钟输入CLK均连接到频率为均连接到频率为1.193l8MHz的时钟信号,周期为的时钟信号,周期为0.838s。8.1.5 8253应用(yngyng)举例第32页/共89页第三十二页,共90页。 (1)计数器)计数器0的应用的应用 门控信号门控信号GATE0接接+5V为常启为常启状态状态(zhungti)。OUT0输出接输出接8259A的的IRQ0,用做,用做XT的日时钟

29、的的日时钟的中断请求信号。设定计数器中断请求信号。设定计数器0为方式为方式3,计数值写入计数值写入0,产生最大的计数初值为,产生最大的计数初值为65536,因此输出信号频率为,因此输出信号频率为18.206Hz,即每秒产生,即每秒产生182次中断次中断请求,或者说每隔请求,或者说每隔55ms申请一次日申请一次日时钟中断。时钟中断。 8.1.5 8253应用(yngyng)举例第33页/共89页第三十三页,共90页。初始化程序如下:初始化程序如下:MOV AL, 36H ;设定计数器;设定计数器0为工作方式为工作方式3, 采用二进制计数,以先低后采用二进制计数,以先低后 高字节顺序高字节顺序(s

30、hnx)写人计写人计数值数值OUT 43H, AL ;写入方式控制字;写入方式控制字MOV AL, 0 ;计数初值为;计数初值为0OUT 40H, AL ;写入低字节计数值;写入低字节计数值OUT 40H, AL ;写入高字节计数值;写入高字节计数值8.1.5 8253应用(yngyng)举例第34页/共89页第三十四页,共90页。 (2)计数器)计数器1的应用的应用 门控门控GATE1接接+5V为常启状态为常启状态(zhungti)。输出。输出OUT1从低变高使从低变高使触发器置触发器置1,Q端输出一高电平信号,作端输出一高电平信号,作为内存刷新的请求信号,一次刷新结束,为内存刷新的请求信号

31、,一次刷新结束,响应信号将触发器复位。响应信号将触发器复位。 DRAM每个单元要求在每个单元要求在2ms内必内必须刷新须刷新次。实际芯片每次刷新操作完次。实际芯片每次刷新操作完成成512个单元,所以经过个单元,所以经过128次刷新就次刷新就能将全部芯片的能将全部芯片的64KB刷新一遍。由此刷新一遍。由此可算出每隔可算出每隔2ms12815.6us进行进行次刷新操作。次刷新操作。 8.1.5 8253应用(yngyng)举例第35页/共89页第三十五页,共90页。 (3)计数器)计数器2的应用的应用 微机系统中,计数通道微机系统中,计数通道2的输出加到扬声器上并控制其发声,作为机器的报的输出加到

32、扬声器上并控制其发声,作为机器的报警或伴音信号。门控警或伴音信号。门控GATE2接并行口位,用它控制通道接并行口位,用它控制通道2的计数过程。在的计数过程。在XT机中机中是并行接口电路是并行接口电路8255的端口位,受的端口位,受IO端口地址端口地址61H的位控制。输出的位控制。输出OUT2经经过一个与门,这个过一个与门,这个(zh ge)与门受位控制。受与门受位控制。受IO端口地址端口地址61H的位控制,的位控制,XT机中是机中是8255的位。所以扬声器可由或分别控制发声。的位。所以扬声器可由或分别控制发声。8.1.5 8253应用(yngyng)举例第36页/共89页第三十六页,共90页。

33、 8255A是是Intel80 x86系列微处理机的配套并行接口芯片,它可以系列微处理机的配套并行接口芯片,它可以(ky)为为CPU与外设之间提供并行输入与外设之间提供并行输入/输出的通道。输出的通道。8255A有三个有三个8位的并行位的并行I/O口,可口,可通过编程设置多种工作方式,通常不需要附加外部电路,在中小系统中有着广泛应通过编程设置多种工作方式,通常不需要附加外部电路,在中小系统中有着广泛应用。具备较强的功能。用。具备较强的功能。 8.2 可编程并行(bngxng)I/O芯片825SA 第37页/共89页第三十七页,共90页。 8255A是一个是一个(y )有有40条条引脚的双列直插

34、式芯片引脚的双列直插式芯片,主要有主要有3个个数据输入数据输入/输出端口,即输出端口,即A口、口、B口口和和C口,还包括口,还包括A组控制器和组控制器和B组控组控制器、数据缓冲器和读写控制逻辑。制器、数据缓冲器和读写控制逻辑。8.2.1 8255A芯片(xn pin)内部结构及其功能 第38页/共89页第三十八页,共90页。数 据总 线缓冲器读/写控制逻辑A组端口A(8) A组端口C上半部 (4) B组端口C下半部 (4)B组端口B(8)A组控制B组控制8位内部数据总线内部逻辑外设接口DBRDWRA0A1RESETCSI/O PA7PA0I/O PC7PC4I/O PC3PC0I/O PB7P

35、B0CPU接口8.2.1 8255A芯片(xn pin)内部结构及其功能 第39页/共89页第三十九页,共90页。 1. 输入输入/输出端口输出端口A、B、C 8255A内部包含内部包含3个个8位的输入位的输入/输出端口,通过外部的输出端口,通过外部的24根引脚与外设交根引脚与外设交换数据,换数据,24根引脚分别是根引脚分别是PA7PA0,PB7PB0和和PC7PC0。端口。端口C可分成两可分成两个个4位端口,分别与端口位端口,分别与端口A和端口和端口B配合工作配合工作(gngzu),通常是将端口,通常是将端口A和端口和端口B定义为输入输出的数据端口,而端口定义为输入输出的数据端口,而端口C可

36、作为状态或控制信息的传送端口。可作为状态或控制信息的传送端口。8.2.1 8255A芯片(xn pin)内部结构及其功能 第40页/共89页第四十页,共90页。 2. A组和组和B组控制器组控制器 端口端口A与端口与端口C的高的高4位位(PC7PC4)构成)构成A组,由组,由A组控制组控制器实现控制功能,端口器实现控制功能,端口B与端口与端口C的低的低4位(位(PC3PC0)构成)构成B组,由组,由B组组控制器实现控制功能。它们各有一个控制器实现控制功能。它们各有一个控制单元,可接收来自控制单元,可接收来自(li z)读写读写控制部件的命令和控制部件的命令和CPU通道数据总线通道数据总线(D7

37、D0)送来的控制字,并根据它)送来的控制字,并根据它们来定义各个端口的操作方式。们来定义各个端口的操作方式。8.2.1 8255A芯片(xn pin)内部结构及其功能 第41页/共89页第四十一页,共90页。 3.数据总线缓冲器数据总线缓冲器 三态双向三态双向8位数据缓冲器,是位数据缓冲器,是8255A与系统总线的接口。它直接与与系统总线的接口。它直接与CPU的数的数据总线相连,实现据总线相连,实现CPU与与8255A接口之间的信息传递,与此关联的引脚是数据线接口之间的信息传递,与此关联的引脚是数据线D7D0。CPU执行输出指令时,可将控制字或数据通过数据总线缓冲器传送给执行输出指令时,可将控

38、制字或数据通过数据总线缓冲器传送给8255A;CPU执行输入执行输入(shr)指令时,指令时,8255A可将状态信息或数据通过总线可将状态信息或数据通过总线缓冲器传送给缓冲器传送给CPU。 8.2.1 8255A芯片(xn pin)内部结构及其功能 第42页/共89页第四十二页,共90页。 4.读写逻辑控制读写逻辑控制 读读/写控制逻辑是写控制逻辑是8255A内部完成读内部完成读/写控制功能的部件写控制功能的部件(bjin),它接收,它接收来自来自CPU的控制信号,并根据这些信号向片内各功能部件的控制信号,并根据这些信号向片内各功能部件(bjin)发出操作命令。发出操作命令。 8.2.1 82

39、55A芯片(xn pin)内部结构及其功能 第43页/共89页第四十三页,共90页。RDA1A0所选端口功 能0001A读端口A0101B读端口B1001C读端口C1101非法 0010A写端口A0110B写端口B1010C写端口C1110控制寄存器写控制字WR8.2.1 8255A芯片(xn pin)内部结构及其功能 第44页/共89页第四十四页,共90页。 8255A提供如下三种工作方式:提供如下三种工作方式: 方式方式0:基本输人:基本输人/输出输出(shch)方式。方式。 方式方式1:选通输人:选通输人/输出输出(shch)方式。方式。 方式方式2:双向传送方式。:双向传送方式。 端口

40、端口A可工作于上述三种工作方可工作于上述三种工作方式,端口式,端口 B只可工作于两种方式(方只可工作于两种方式(方式式0和方式和方式1),端口),端口C只可工作于方只可工作于方式式0。 8.2.2 8255A控制字及其工作(gngzu)方式第45页/共89页第四十五页,共90页。 1. 8255A的控制的控制(kngzh)字字 (1)工作方式控制)工作方式控制(kngzh)字字 方式控制方式控制(kngzh)字用来决定字用来决定8255A的工作方式。工作方式控制的工作方式。工作方式控制(kngzh)字可将三个端口分别定义为两组,即字可将三个端口分别定义为两组,即A口和口和C口的高口的高4位为一

41、组(位为一组(A组),组),B口和口和C口的低口的低4位为一组(位为一组(B组)。当端口组)。当端口A工作于方式工作于方式1、方式、方式2或端口或端口B工作于工作于方式方式1时,会使用端口时,会使用端口C的某些位作控制的某些位作控制(kngzh)信号用,这时就需要使用一个信号用,这时就需要使用一个专门的置位复位控制专门的置位复位控制(kngzh)字来对控制字来对控制(kngzh)端口端口C的各位分别进行置的各位分别进行置位和复位操作。位和复位操作。8.2.2 8255A控制字及其工作(gngzu)方式第46页/共89页第四十六页,共90页。8255控制控制(kngzh)字格字格式式D7D6D5

42、D4D3D2D1D0控 制 C 口 低 4位1 输 入0 输 出控 制 B 口 8位1 输 入0 输 出方 式 选 择0 方 式 01 方 式 1控 制 C 口 高 4位1 输 入0 输 出控 制 A 口 8位1 输 入0 输 出方 式 选 择00 方 式 001 方 式 11 方 式 2功 能 控 制0: 位 操 作1: 方 式 选 择A 组 控 制B 组 控 制8.2.2 8255A控制(kngzh)字及其工作方式第47页/共89页第四十七页,共90页。 (2)置位复位)置位复位(f wi)控制字控制字 置位复位置位复位(f wi)控制字可对端口控制字可对端口C的任意一位进行置的任意一位进

43、行置位或复位位或复位(f wi)的的操作复位操作复位(f wi)操操作。作。D7D6D5D4D3D2D1D0无关0置/复位0 复位1 置位C口 的 位 选 择D3D2D1选 择0 0 0PC00 0 1PC10 1 0PC20 1 1PC31 0 0PC41 0 1PC51 1 0PC61 1 1PC78.2.2 8255A控制字及其工作(gngzu)方式第48页/共89页第四十八页,共90页。 2. 8255A的工作方式的工作方式 (1)工作方式)工作方式0(基本输入(基本输入/输出方式)输出方式) 工作方式工作方式0只能完成简单的并行输入输出操作,只能完成简单的并行输入输出操作,CPU可从

44、指定端口输入信息可从指定端口输入信息(xnx),也可向指定端,也可向指定端口输出信息口输出信息(xnx),适用于无条件输入,适用于无条件输入/输出方式或输出方式或查询输入查询输入/输出方式。输出方式。A口、口、B 口、口、C 口均可工作在此口均可工作在此方式下,其中端口方式下,其中端口C被分成两个被分成两个4位端口,可分别被定位端口,可分别被定义为输入或输出端口。义为输入或输出端口。CPU与三个端口之间交换数据与三个端口之间交换数据可直接由可直接由CPU执行执行IN和和OUT指令来完成,而不提供指令来完成,而不提供任何任何“握手握手”信息信息(xnx)。8.2.2 8255A控制(kngzh)

45、字及其工作方式第49页/共89页第四十九页,共90页。 (2)工作方式)工作方式1(选通输入(选通输入/输出输出(shch)方式)方式) 工作方式工作方式1是一种选通输入是一种选通输入/输出输出(shch)方式,在这种工作方式下,方式,在这种工作方式下,A口和口和B 口数据输入口数据输入/输出输出(shch)操作要利用操作要利用C口所提供的选通信号口所提供的选通信号和应答信号。和应答信号。方式 1(A口)PA7 0PC4PC5PC3&INTEAPC6,7RDINTRAI/OIBFASTBA方式 1(B口)PB7 0PC2PC1PC0&INTEBRDINTRBIBFBSTBB2方式1下,A、B口

46、均为输入(shr)的信号定义8.2.2 8255A控制字及其工作(gngzu)方式第50页/共89页第五十页,共90页。方式1下,A、B口均为输出的信号(xnho)定义A 口方式1输出PA7 0PC7PC6PC3&INTEAPC4,5WR2INTRAI/OACKAOBFAB 口方式1输出PB7 0PC1PC2PC0&INTEBWRINTRBACKBOBFB8.2.2 8255A控制(kngzh)字及其工作方式第51页/共89页第五十一页,共90页。 (3)工作方式)工作方式2(双向输入(双向输入/输出方式)输出方式) 8255A只允许只允许A口工作在方式口工作在方式2下,用来下,用来(yn l

47、i)在两台处理机之间实现双向并行通信。在两台处理机之间实现双向并行通信。端口端口A工作于方式工作于方式2所需要的所需要的5个控制信号分别由个控制信号分别由端口端口C的的来提供。来提供。 当端口当端口A工作于方式工作于方式2时,允许端口时,允许端口B工作于工作于方式方式0或方式或方式1完成输入输出功能。这时完成输入输出功能。这时C口剩口剩下的下的3位(位(PC2PC0)既可以作输入)既可以作输入/输出线使输出线使用,也可以作用,也可以作B口方式口方式1下的控制线。下的控制线。8.2.2 8255A控制(kngzh)字及其工作方式第52页/共89页第五十二页,共90页。方式(fngsh)2下的信号

48、定义PA7 0PC7PC6PC5PC20WRIBFAI/OOBFAPC31INTE1&PC4&STBAACKA8INTRARDINTE238.2.2 8255A控制字及其工作(gngzu)方式第53页/共89页第五十三页,共90页。 并行接口都有多种的用途,可以连接外部设备,进行数据并行接口都有多种的用途,可以连接外部设备,进行数据(shj)传送;也可传送;也可以与其他计算机连接,进行数据以与其他计算机连接,进行数据(shj)通信。通信。 Intel 8255A作为通用的并行接口电路芯片,具有广泛的应用,可以应用于打作为通用的并行接口电路芯片,具有广泛的应用,可以应用于打印机接口电路,可以用来

49、连接简易键盘,可以用于驱动印机接口电路,可以用来连接简易键盘,可以用于驱动LED数码管等等。数码管等等。8.2.3 8255A的应用(yngyng)第54页/共89页第五十四页,共90页。【例】【例】 如图所示,设如图所示,设8255A端口地址为端口地址为2F802F83H,编程设置,编程设置8255A的的A组、组、B组均工作于方式组均工作于方式0,A口输出口输出(shch),B口输口输出出(shch),C口高口高4位输位输入,低入,低4位输出位输出(shch)。然后,读入开关然后,读入开关S的状态,的状态,若若S打开,则使发光二极管打开,则使发光二极管熄灭;若熄灭;若S闭合,则使发光闭合,则

50、使发光二极管点亮。二极管点亮。8.2.3 8255A的应用(yngyng)第55页/共89页第五十五页,共90页。 MOV AL,88H ;8255B口方式口方式(fngsh)0输出,输出, C口高位输入口高位输入 MOV DX,2F83H OUT DX,AL MOV DX,2F82H IN AL,DX ;读取;读取C口状态到口状态到AL MOV DX,2F81H AND AL,20H JZ L1 ;条件成立时;条件成立时PC50,S闭闭合合 MOV AL,0 OUT DX,AL JMP END1L1: MOV AL,40H OUT DX,ALEND1:HLT 8.2.3 8255A的应用(y

51、ngyng)第56页/共89页第五十六页,共90页。 可编程串行接口芯片可编程串行接口芯片8251A是一种通用串行接口,适用于连接串行数据传输是一种通用串行接口,适用于连接串行数据传输的外部设备。它能将的外部设备。它能将CPU输出的并行输出的并行(bngxng)数据转化为串行数据,然后一位数据转化为串行数据,然后一位接 一 位 地 传 送 给 外 部 设 备 , 也 能 将 外 部 设 备 送 来 的 串 行 数 据 转 化 为 并 行接 一 位 地 传 送 给 外 部 设 备 , 也 能 将 外 部 设 备 送 来 的 串 行 数 据 转 化 为 并 行(bngxng)数据,送入数据,送入C

52、PU进行处理。进行处理。 8.3 可编程串行接口芯片(xn pin)8251A第57页/共89页第五十七页,共90页。 1基本功能基本功能 8251A是通用的同步异步接收发送器是通用的同步异步接收发送器USART(Universal Synchronous Asynchronous Receiver and Transmitter)芯片,具有独立的发送器和接收)芯片,具有独立的发送器和接收器,它能以单工、半双工和全双工的方式进行通信,并且提供了与器,它能以单工、半双工和全双工的方式进行通信,并且提供了与MODEM连接连接(linji)的控制信号。的控制信号。 8.3.1 8251A的基本功能与

53、内部结构 第58页/共89页第五十八页,共90页。 在同步方式下,可以编程设定内同步方式或在同步方式下,可以编程设定内同步方式或外同步方式,并自动插入同步字符,传送字符的外同步方式,并自动插入同步字符,传送字符的数据位可以定义为数据位可以定义为58位,波特率位,波特率064Kbps可选择。可选择。 在异步方式下,可以自动产生起始位和停止在异步方式下,可以自动产生起始位和停止位,并可以编程选择产生位,并可以编程选择产生1、1.5或或2位停止位,位停止位,传送字符的数据位可以定义为传送字符的数据位可以定义为58位,波特率位,波特率019.2Kbps可选择。同步方式和异步方式都具可选择。同步方式和异

54、步方式都具有奇偶校验、帧错误和溢出出错检测有奇偶校验、帧错误和溢出出错检测(jin c)电电路。路。 8.3.1 8251A的基本功能与内部结构 第59页/共89页第五十九页,共90页。 2内部结构内部结构 8.3.1 8251A的基本功能与内部结构 第60页/共89页第六十页,共90页。 (1)发送器及发送控制电路)发送器及发送控制电路 发送器将要发送的数据(字符发送器将要发送的数据(字符(z f))送到发送数据缓冲器中,再由发送缓)送到发送数据缓冲器中,再由发送缓冲器并行传送到发送数据移位寄存器中。冲器并行传送到发送数据移位寄存器中。 (2)接收器及接收控制电路)接收器及接收控制电路 接收

55、器将接收器将RXD线上的数据送至移位寄存器,经移位、奇偶校验和去掉停止位后,线上的数据送至移位寄存器,经移位、奇偶校验和去掉停止位后,就得到了转换后的并行数据,再传送给接收数据缓冲器,同时输出就得到了转换后的并行数据,再传送给接收数据缓冲器,同时输出RXRDY有效信号,有效信号,通知通知CPU取走字符取走字符(z f)。 8.3.1 8251A的基本功能与内部结构 第61页/共89页第六十一页,共90页。 (3)数据总线缓冲器)数据总线缓冲器 由状态由状态(zhungti)缓冲器、发送数据缓冲器、发送数据/命令缓冲器和接收数据缓冲器组成,命令缓冲器和接收数据缓冲器组成,是三态双向是三态双向8位

56、缓冲器,用作位缓冲器,用作8251A和微机系统数据总线之间的接口。和微机系统数据总线之间的接口。 (4)读写控制逻辑)读写控制逻辑 (5)调制解调控制电路)调制解调控制电路 读/写功能说明001CPU从8251A中读取数据010CPU向8251A中写入数据101CPU从8251A中读取状态110CPU向8251A中写入控制命令WRRDC/D8.3.1 8251A的基本功能与内部结构 第62页/共89页第六十二页,共90页。8.3.2 8251A的引脚 第63页/共89页第六十三页,共90页。 RESET:复位信号,高电平有效。当该信号为高电平时,:复位信号,高电平有效。当该信号为高电平时,82

57、51A实现复位功实现复位功能,内部所有寄存器都被置位初始状态。能,内部所有寄存器都被置位初始状态。 RxRDY:接收器准备好信号,高电平有效。接收缓冲器收到一个数据字符:接收器准备好信号,高电平有效。接收缓冲器收到一个数据字符(z f),则,则RxRDY信号有效,通知信号有效,通知CPU接收数据,若接收数据,若8251A 采用中断方式与采用中断方式与CPU交交换数据,则换数据,则RxRDY信号可用作向信号可用作向CPU发出的中断请求信号。发出的中断请求信号。CPU取走接收缓冲器取走接收缓冲器的数据后,的数据后,RxRDY变为低电平。变为低电平。8.3.2 8251A的引脚 第64页/共89页第

58、六十四页,共90页。 SYNDET/BRKDET:同步检测:同步检测/断缺检测信号,断缺检测信号,引脚具有双功能,高电平有效。引脚具有双功能,高电平有效。 TxRDY:发送器准备好信号。若该信号有效,则:发送器准备好信号。若该信号有效,则CPU向向8251A写入待发送的数据写入待发送的数据(shj),8251A将将从从CPU送来的并行数据送来的并行数据(shj)锁存在数据锁存在数据(shj)发发送缓冲器中。送缓冲器中。 TxE:发送器空信号,高电平有效。若该信号有:发送器空信号,高电平有效。若该信号有 效,表示发送移位寄存器没有要发送的字符,效,表示发送移位寄存器没有要发送的字符,CPU把把要

59、发送的下一个数据要发送的下一个数据(shj)写入写入8251A后,后,TXE自自动复位。动复位。 8.3.2 8251A的引脚 第65页/共89页第六十五页,共90页。8.3.3 8251A的控制(kngzh)字 8251A是一个可编程的通用串行通信接口芯片,具体使用时,用户必须对是一个可编程的通用串行通信接口芯片,具体使用时,用户必须对它进行初始化编程。它有两类控制字:方式选择控制字和操作命令控制字。前者它进行初始化编程。它有两类控制字:方式选择控制字和操作命令控制字。前者用于设定用于设定8251A的工作方式,后者使的工作方式,后者使8251A处于规定处于规定(gudng)的状态,准备的状态

60、,准备接收或发送数据。接收或发送数据。第66页/共89页第六十六页,共90页。 1.方式方式(fngsh)选择控制字选择控制字 方式方式(fngsh)选择控制字可以分为四组,每组两选择控制字可以分为四组,每组两位。位。 8.3.3 8251A的控制(kngzh)字 第67页/共89页第六十七页,共90页。D1D0:确定工作方式是同步方式还是异步方式。当D1D0 =00时,则为同步方式;D1D0的后三种(sn zhn)组合用以选择输入时钟频率与波特率之间的系数。D3D2:用以规定同步传送时每个字符的位数。D5D4:用以规定要不要校验以及校验的方式。D7D6:在同步和异步方式时具有不同的意义。异步

61、时用以规定停止位的位数;同步时用以确定是内同步还是外同步和同步字符的个数。8.3.3 8251A的控制(kngzh)字 第68页/共89页第六十八页,共90页。 2.操作命令控制字操作命令控制字 操作命令控制字用来使操作命令控制字用来使8251A处于规定的某种工处于规定的某种工作作(gngzu)状态,以便接收或发送数据。状态,以便接收或发送数据。8.3.3 8251A的控制(kngzh)字 第69页/共89页第六十九页,共90页。 3.状态字状态字 8251A的内部工作的内部工作(gngzu)状态存放在状态状态存放在状态寄存器中,寄存器中,CPU可以通过可以通过IN指令来读取指令来读取8251

62、A的状的状态字。态字。8.3.3 8251A的控制(kngzh)字 第70页/共89页第七十页,共90页。D0:发送准备好TxRDY。一旦发送数据缓冲器空,则状态标志TxRDY置l。 状态位D1(RxRDY)、D2(TxE)、D6(SYNDETB)以及D7(DSR)的定义与其相应的引脚定义相同。D3:奇偶出错标志PE。D4:溢出出错标志OE。D5:帧出错标志FE,FE1表示当前(dngqin)产生了帧出错。 8.3.3 8251A的控制(kngzh)字 第71页/共89页第七十一页,共90页。8.3.4 8251A的初始化编程 8251A是一个可编程的通用串行通信接口芯片,具体使用时,用户必须

63、对它是一个可编程的通用串行通信接口芯片,具体使用时,用户必须对它进行初始化编程。它有两类控制字:进行初始化编程。它有两类控制字: 方式选择控制字用于设定方式选择控制字用于设定8251A的工作方式的工作方式 操作命令控制字使操作命令控制字使8251A处于规定的状态,准备处于规定的状态,准备(zhnbi)接收或发送数据。接收或发送数据。第72页/共89页第七十二页,共90页。 初始化要在8251A处于复位状态开始,以先写入方式控制字,再写入命令控制字实现。 8251A的方式选择控制字和操作命令字均无特征位标志(biozh),且都是送到同一个控制口地址,所以在向8251A写入方式选择控制字和操作命令

64、控制字时,必须按一定的顺序,这种顺序是:复位,方式选择控制字,操作命令控制字1,操作命令控制字2,。 8.3.4 8251A的初始化编程 第73页/共89页第七十三页,共90页。8.3.4 8251A的初始化编程 第74页/共89页第七十四页,共90页。【例】若【例】若8251A采用同步传送方式、两个同步字符采用同步传送方式、两个同步字符(18H)、内同步、偶校验;)、内同步、偶校验;7 位数据位,启动发送位数据位,启动发送(f sn)、接收,试编写其初始化程序。设控制口地址为、接收,试编写其初始化程序。设控制口地址为204H,数据口地址为,数据口地址为200H。 MOV DX,0204H ;

65、对控制口送工作方式控制;对控制口送工作方式控制字字 MOV AL,38H OUT DX,AL MOV AL,18H ;输入;输入8251A两个同步字符两个同步字符 OUT DX,AL OUT DX,AL MOV AL,97H ;对;对8251A送命令控制字送命令控制字 OUT DX,AL8.3.5 8251A的应用(yngyng)举例 第75页/共89页第七十五页,共90页。 直接存储器存取直接存储器存取DMA (Direct Memory Access)是一种让数据在外设和内存之间是一种让数据在外设和内存之间(或者或者内存到内存之间内存到内存之间)直接传送的方式。在直接传送的方式。在DMA传

66、传送期间,送期间,CPU自己挂起,把总线控制权让出来,自己挂起,把总线控制权让出来,在在DMA控制器的管理控制器的管理(gunl)下,提供给外设下,提供给外设和内存使用。和内存使用。DMA传送的关键是传送的关键是DMA控制器,控制器,它可以像它可以像CPU那样取得总线控制权。那样取得总线控制权。8.4 DMA控制器8237A 第76页/共89页第七十六页,共90页。 DMA控制器在微机系统中有两种工作状控制器在微机系统中有两种工作状态:主动状态和被动状态。态:主动状态和被动状态。 在主动状态时,在主动状态时,DMA控制器取代控制器取代CPU而而获得总线获得总线(zn xin)的控制权,向存储器和的控制权,向存储器和外设下达控制命令;在被动状态时,外设下达控制命令;在被动状态时,DMA接接受受CPU对它的控制和指挥,例如对它的控制和指挥,例如CPU对对DMA 控制器的初始化编程和内部状态的读取。在复控制器的初始化编程和内部状态的读取。在复位后,位后,DMA控制器自动设置为被动状态。控制器自动设置为被动状态。 8.4 DMA控制器8237A 第77页/共89页第七十七页,共90页。 823

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!