微机原理 第九章习题.ppt
微机原理微机原理 第九章习题第九章习题 9.9.习题解答习题解答 2 2当当接接口口电电路路与与系系统统总总线线相相连连时时,为为什什么么要要遵遵循循“输输入入要要经经三态,输出要锁存三态,输出要锁存”的原则的原则?答答:接接口口电电路路是是介介于于主主机机和和外外设设之之间间的的一一种种缓缓冲冲电电路路,它它使使外外设设与与总总线线隔隔离离,起起缓缓冲冲、暂暂存存数数据据的的作作用用。因因为为数数据据总总线线是是各各种种设设备备以以及及存存储储器器传传送送数数据据的的公公共共总总线线,任任何何设设备备都都不不允允许许长长期期占占用用数数据据总总线线,而而仅仅允允许许被被选选中中的的设设备备在在读读写写周周期期中中享享用用数数据据总总线线,这这就就需需要要接接口口电电路路为为输输入入设设备备提提供供三三态态缓缓冲冲作作用用,只只在在读读写写周周期期中中为为被被选选中中的的设设备备开开放放与与系系统统数数据据总总线线的的连连接接,即即输输入入要要经经三三态态;另另外外,通通过过对对CPUCPU的的输输出出总总线线周周期期的的分分析析,相相对对于于普普通通外外设设而而言言,CPUCPU的的输输出出周周期期很很短短,即即#WR#WR信信号号有有效效电电平平持持续续时时间间很很短短,无无数数据据锁锁存存能能力力的的输输出出设设备备要要在在很很短短的的时时间间内内接接收收数数据据并并驱驱动动是是几几乎乎不不可可能能的的,所所以以需需加加锁锁存存器器锁锁存存数数据据,在在输输出出总总线线周周期期结结束束后后,保保持持该该数数据据提提供供外外设设使使用用,以以协协调调主主机机和和外外设设间间数数据据传传送送速速度度不不匹匹配配的的矛矛盾盾,即即输输出出要要锁锁存。存。9.9.习题解答习题解答 3 3说明接口电路中控制寄存器和状态寄存器的功能。说明接口电路中控制寄存器和状态寄存器的功能。答答:控控制制寄寄存存器器用用来来存存放放CPUCPU发发出出的的命命令令,以以便便控控制制接接口口和和外外部部设设备备的的动动作作;状状态态寄寄存存器器用用来来存存放放外外部部设设备备或或者者接接口口部部件件本本身身的的状状态态,CPUCPU通通过过对对状状态态寄寄存存器器的的访访问问可可以以检检测测外外设设和和接口部件当前的状态。接口部件当前的状态。5 58255A8255A工工作作方方式式。与与方方式式1 1的的主主要要区区别别是是什什么么?方方式式2 2的的特点是什么特点是什么?答答:8255A8255A的的3 3个个端端口口PAPA、PBPB和和PCPC都都具具有有工工作作方方式式O O,而而只只有有PAPA、PBPB有有工工作作方方式式1 1。工工作作于于方方式式0 0时时,端端口口是是基基本本输输入入、输输出出,即即输输入入缓缓冲冲、输输出出锁锁存存,无无控控制制及及状状态态联联络络线线,3 3个个端端口口相相互互独独立立;工工作作于于方方式式1 1时时,PAPA、PBPB要要利利用用PCPC的的某某些些线线作作为为控控制制及及状状态态联联络络线线,可可以以工工作作于于中中断断方方式式,输输入入缓缓冲冲且且锁锁存存(#STB#STB信信号号锁锁存存数数据据入入端端口口寄寄存存器器)、输输出出锁锁存存。方方式式2 2的的特特点点是是:只有只有PAPA口具有方式口具有方式2 2,总线式双向口,输入输出均锁存且缓冲。,总线式双向口,输入输出均锁存且缓冲。9.9.习题解答习题解答 8 8试比较试比较82538253方式方式O O与方式与方式4 4,方式,方式1 1与方式与方式5 5有什么区别有什么区别?答:答:(1)(1)方式方式O O与方式与方式4 4比较。比较。方方式式0 0和和方方式式4 4有有许许多多相相似似之之处处:都都是是计计数数器器功功能能,即即计计数数到到“0”“0”后后便便结结束束操操作作;计计数数启启动动条条件件相相同同,都都是是写写入入初初值值后后自自动动启启动动计计数数;门门控控信信号号对对计计数数过过程程的的影影响响相相同同,即即GATEGATE为为高高电电平平时时允允许许计计数数,低低电电平平将将暂暂停停计计数数。但但是是它它们们也也有有不不同同:复复位位后后(写写入入控控制制字字后后)OUT)OUT输输出出电电平平不不同同,方方式式0 0时时输输出出低低电电平平,而而方方式式4 4时时输输出出高高电电平平;相相应应地地,计计数数结结束束时时OUTOUT输输出出波波形形也也不不同同,方方式式0 0计计数数结结束束时时,OUTOUT输输出出高高电电平平,方方式式4 4计计数结束时,数结束时,OUTOUT输出一个宽度为一个输出一个宽度为一个CLKCLK的负脉冲。的负脉冲。(6 6)各种工作方式的输出波形)各种工作方式的输出波形二、8253/8254的工作方式的工作方式方式方式 0方式方式 1方式方式 2方式方式 3方式方式 4方式方式 50N0N0N0/N110NN/2 N/2 0/N0N0 1N0 1N0 1 9.9.习题解答习题解答 (2)(2)方式方式1 1与方式与方式5 5比较。比较。方方式式1 1和和方方式式5 5有有许许多多相相似似之之处处:都都是是计计数数器器功功能能,复复位位后后OUTOUT输输出出都都是是高高电电平平,都都是是由由GATEGATE的的上上升升沿沿启启动动计计数数,并并且且GATEGATE对对计计数数过过程程的的影影响响相相同同(计计数数过过程程中中GATEGATE可可为为高高或或低低,但但其其上上升升沿沿将将启启动动另另一一次次计计数数)。它它们们不不同同之之处处在在于于:OUTOUT输输出出波波形形不不同同,方方式式1 1启启动动计计数数后后,OUTOUT输输出出立立即即变变成成低低电电平平,计计数数结结束束时时输输出出高高,而而方方式式5 5启启动动计计数数后后,OUTOUT输输出出仍仍保保持持高高电电平,计数结束时平,计数结束时OUTOUT输出一个宽度为一个输出一个宽度为一个CLKCLK的负脉冲。的负脉冲。9.9.习题解答习题解答 99假假定定8255A8255A的的端端口口地地址址分分别别为为0060H0060H00963H00963H,请请编编写写出出下列各情况的初始化程序。下列各情况的初始化程序。(1)(1)将将A A口口、B B口口设设置置成成方方式式O O,端端口口A A和和c c作作为为输输入入口口,B B口口作为输出口。作为输出口。(2)(2)将将A A口口设设置置成成方方式式1 1输输入入口口,PCPC6 6、PCPC7 7作作为为输输出出端端;B B口口设置成方式设置成方式1 1、输入口。、输入口。解解:(1)(1)易易知知此此时时方方式式控控制制字字为为10011001B10011001B,则则8255A8255A的的初初始化程序片段为始化程序片段为 MOV ALMOV AL,99H 99H OUT 63H OUT 63H,AL AL 如果采用间接端口寻址方式,则初始化程序片段为:如果采用间接端口寻址方式,则初始化程序片段为:9.9.习题解答习题解答 MOV AL MOV AL,99H99H MOV DX MOV DX,63H63H OUT DX OUT DX,ALAL (2)(2)易易知知此此时时方方式式控控制制字字为为10110111B(10110111B(或或10110110B10110110B,因因为为下下半半PCPC口口均均作作联联络络线线,方方向向可可任任意意定定义义,不不影影响响默默认认联联络络线方向线方向),则,则8255A8255A的初始化程序片段为的初始化程序片段为 MOV AL MOV AL,0B7H0B7H OUT 63H OUT 63H,ALAL 9.9.习题解答习题解答 1111已已知知某某系系统统中中82538253的的连连接接如如图图8 82727所所示示。82538253通通道道0 0每每隔隔1 ms1 ms向向CPUCPU申请中断。申请中断。(1)8253 (1)8253各通道及控制寄存器的地址号是什么各通道及控制寄存器的地址号是什么?设设#CS=#CS=(2)(2)编编写写出出相相应应的的初初始始化化程程序序,并并将将程程序序引引导导到到中中断断服服务务程程序序入入口口(设设82598259相相应应的的端端口口地地址址为为80H80H、81H81H。IRIR0 0中中断断源源的中断类型码为的中断类型码为48H)48H)。(3)(3)当当片片选选输输入入信信号号A A0 0=1=1时时,82538253的的数数据据线线应应如如何何与与80868086数据线连接数据线连接?9.9.习题解答习题解答 9.9.习题解答习题解答 解解:(1)(1)根根据据80868086系系统统中中I IO O地地址址库库被被分分成成奇奇偶偶两两个个地地址址库库的的特特点点,图图8 82727中中82538253的的数数据据线线与与系系统统数数据据总总线线的的低低8 8位位相相连连,A A0 0=0=0参参加加片片选选端端#CS#CS的的译译码码,82538253各各通通道道及及控控制制寄寄存存器器的的地地址址号号应应该该都都是是偶偶数数,它它们们分分别别是是:计计数数器器O O#,地地址址为为3EOH,3EOH,计计数数器器1 1#,地地址址为为3E2H3E2H;计计数数器器2 2#,地地址址为为3E4H3E4H;控控制制寄寄存存器器地地址址为为3E6H3E6H。(2)(2)依依题题意意,82538253的的计计数数器器0 0#应应该该工工作作于于方方式式22分分频频器器方方式式,已已知知输输入入时时钟钟CLKCLK。的的频频率率是是1 1 MHzMHz,要要求求输输出出频频率率是是1 1 kHz(kHz(周期为周期为1 ms)1 ms),所以分频系数为,所以分频系数为 9.9.习题解答习题解答 初始化程序片段如下:初始化程序片段如下:MOV AL MOV AL,34H 34H ;计数器;计数器O O#的控制字为的控制字为OOll0100BOOll0100B MOV DX MOV DX,3E6H3E6H 0UT DX,AL 0UT DX,AL MOV AL MOV AL,OE8H OE8H ;先送低;先送低8 8位初值位初值 MOV DX MOV DX,3EOH I3EOH I计数器计数器O O#的初值寄存器地址为的初值寄存器地址为3EOH3EOH 0UT DX 0UT DX,ALAL MOV AL MOV AL,03H 03H ;再送高;再送高8 8位初值位初值 OUT DX OUT DXALAL 9.9.习题解答习题解答 若采用十进制计数,则初始化程序片段如下:若采用十进制计数,则初始化程序片段如下:MOV AL MOV AL,35H 35H ;计数器;计数器O O#的控制字为的控制字为O0110101BO0110101B MOV DX MOV DX,3E6H3E6H 0UT DX 0UT DX,ALAL MOV AL MOV AL,O O ;先送低;先送低8 8位初值位初值 MOV DX MOV DX,3EOH 3EOH ;计数器;计数器O O#的初值寄存器地址为的初值寄存器地址为3EOH3EOH 0UT DX 0UT DX,ALAL MOV AL MOV AL,10H 10H ;再送高;再送高8 8位初值位初值 0UT DX,AL 0UT DX,AL 9.9.习题解答习题解答 为为了了能能将将程程序序引引导导到到中中断断服服务务程程序序入入口口,必必须须设设置置正正确确的的中中断断矢矢量量,即即在在中中断断矢矢量量表表中中填填入入正正确确的的中中断断矢矢量量,假假设设中中断断服服务务子程序名为子程序名为OUT0SEROUT0SER,则设置中断矢量的程序片,则设置中断矢量的程序片段如下:段如下:MOV AXMOV AX,O O ;将;将ESES:DIDI指向中断矢量在中断矢量表中的位置指向中断矢量在中断矢量表中的位置 MOV ES MOV ESAXAX MOV DI MOV DI,48H*4 48H*4 ;OUTOUT0 0的中断类型号为的中断类型号为48H48H MOV AX MOV AX,OFFSET OUTOSEROFFSET OUTOSER CLD CLD STOSW STOSW MOV AX MOV AX,SEG OUT0SER SEG OUT0SER STOSW STOSW 9.9.习题解答习题解答 (3)(3)当当片片选选输输入入信信号号A A0 0=1=1时时,82538253的的数数据据线线应应与与80868086系系统统数数据据总总线线的的高高8 8位位相相连连,即即82538253的的数数据据线线D D0 0D D7 7与与80868086系系统统数数据据总总线线的的D D8 8D D1515依依次次相相连连,这这时时82538253占占用用的的4 4个个地地址址均均为为奇奇地地址,分别为:址,分别为:3E1H3E1H,3E3H3E3H,3E5H3E5H,3E7H3E7H。9.9.习题解答习题解答 1212设设82538253通通道道O O#、1 1#、2 2#的的端端口口地地址址分分别别为为0040H0040H、0042H0042H、0044H0044H,控控制制端端口口地地址址为为0046H0046H。如如将将O O#设设置置成成方方式式3(3(方方波波),1 1#设设置置成成方方式式2(2(分分频频类类),0 0#的的输输出出脉脉冲冲作作为为1 1#的的时时钟钟输输入入;CLKCLK0 0连连接接总总线线时时钟钟为为4 477 77 MHzMHz、1 1#输输出出OUTOUT1 1约约为为40 40 HzHz。编编写写实现上述功能的初始化程序片段。实现上述功能的初始化程序片段。解解:根根据据题题中中描描述述可可知知,本本题题中中采采用用计计数数器器O O#和和1 1#串串接接实实现现对对输输入入时时钟钟信信号号的的分分频频。实实际际上上,82538253的的方方式式2 2、方方式式3 3都都是是对对输输入入时时钟钟信信号号作作N N分分频频(N(N是是计计数数器器的的初初值值),只只不不过过两两种种方方式式下下OUTOUT输输出出的的波波形形不不同同:方方式式2 2输输出出的的是是周周期期为为N N个个CLKCLK的的负负脉脉冲冲信信号号,高高电电平平为为N-1N-1个个CLKCLK,低低电电平平为为1 1个个CLKCLK,所所以以说说它它是是对对输输入入CLKCLK的的N N分分频频;方方式式3 3输输出出的的是是周周期期为为N N个个CLKCLK的的方方波波或或近近似似方方波波信信号号,也也是是对对输输入入CLKCLK的的N N分分频频。假假设设计计数数器器0 0#的的计计数数初值为初值为N N0 0,计数器,计数器1 1#的计数初值为的计数初值为N N1 1,则,则 9.9.习题解答习题解答 任任选选一一组组满满足足上上式式的的分分频频系系数数作作为为计计数数器器的的初初值值,如如N N0 0=50=32H=50=32H,N N1 1=2385=0951H=2385=0951H,则,则82538253的初始化程序片段如下;的初始化程序片段如下;MOV ALMOV AL,16H 16H ;计数器;计数器0 0#的控制字为的控制字为00010110B00010110B MOV DX MOV DX,46H46H OUT DX OUT DX,ALAL MOV AL MOV AL,32H 32H ;只送低;只送低8 8位初值位初值N N0 0=32H=32H MOV DX MOV DX,40H 40H ;计数器;计数器0 0#的初值寄存器地址为的初值寄存器地址为40H40H OUT DX OUT DX,AL AL ;计数器;计数器0 0#的初始化完成的初始化完成 MOV AL MOV AL,74H 74H ;计数器;计数器1 1#的控制字为的控制字为01110100B01110100B MOV DX MOV DX,46H46H 9.9.习题解答习题解答 OUT DX OUT DX,ALAL MOV AL MOV AL,51H 51H ;先送;先送N N1 1的低的低8 8位值位值 MOV DX MOV DX,42H 42H ;计数器;计数器1 1#的初值寄存器地址为的初值寄存器地址为42H42H OUT DX OUT DX,AL AL MOV AL MOV AL,09H 09H ;再送;再送N N1 1的高的高8 8位值位值 OUT DX,AL OUT DX,AL 9.9.习题解答习题解答 9.9.习题解答习题解答