微机原理与接口技术习题集1_第1页
微机原理与接口技术习题集1_第2页
微机原理与接口技术习题集1_第3页
微机原理与接口技术习题集1_第4页
微机原理与接口技术习题集1_第5页
已阅读5页,还剩38页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、 . . 43/43在8253过对其中一个_的编程设定和控制工作方式,其端口地址是当 A1A0=_是的地址。参考答案P169 例2控制口,11B。若要在8253A的计数工程中读取计数值,应该_。直接用IN指令读出CE的容先对8253A写入一个锁存命令,将当前的CE容锁存入OL中,然后再用IN指令将OL的容取到CP中,再发出命令让OL的容开始与CE同步先对8253A写入一个锁存命令,将当前的CE容锁存入OL中,然后再用IN指令将OL的容取到CPU中,此后OL的容自动开始与CE同步参考答案P169 例3C。在某微机系统中,8253的3个计数器的端口地址分别为3F0H、3F2H和3F4H,控制自寄存

2、器的端口地址为3F6H,要求8253的通道0工作于方式3,采用BCD计数,输入脉冲频率为2MHz,输出方波频率为2KHz,使编写初始化程序片断。分析:计算计数初值确定方式控制字参考答案P169 例4初始化程序片断MOVAL,37HMOVDX,3F6HOUTDX,AL;送方式控制字到控制口MOVAL,00MOVDX,3F0HOUTDX,AL;送计数初值低字节到通道0MOVAL,10HOUTDX,AL;送计数初值高字节到通道0设定时器/计数器8253的CLK1端输入时钟信号的频率为2.5kHz,要求在OUT端产生频率为1Hz的方波,则8253的计数器1#应工作于方式_,且送入计数器1#的计数初值为

3、_。参考答案P170例53,2500。可编程计数/定时器8253的工作方式共有_,共有_个I/O地址。A3种、4B4种、5C6种、3D6种、4参考答案P170例1D。当Intel8253可编程定时/计数器工作在方式0,在初始化编程时,一旦写入控制字后,_。A输出信号端OUT变为高电平B输出信号端OUT变为低电平C输出信号保持原来的点位值D立即开始计数参考答案P170例2B。定时/计数器8253无论工作在哪种方式下,在初始化编程时,写入控制字后,输出端OUT便_。A变为高电平B变为低电平C变为相应的高电平或低电平D保持原状态不变,直至计数结束参考答案P170例3C。8253.芯片包含有_个独立的

4、计数通道,它有_种工作方式,若输入时钟CLK1=1MHz,计数初值为500,BCD码计数方式,OUT1输出为方波,则初始化时该通道的控制字应为_。参考答案P171例43,6,77H。若8253PIT的通道计数频率为1MHz,每个通道的最大定时时间为_。32.64ms97.92ms48.64ms65.536ms参考答案P171 例5D已知图如下。要求使用地址总线的A9到A0,利用74LS138(可适当添加逻辑电路)给8253编一个I/O地址,使当CPU输出I/O地址为200H203H时,分别选中8253的0#、1#、2#计数器与控制字寄存器,并使8253能正常工作。是在图中画出所有的相关连线。设

5、8253的0#计数器作为十进制计数器用,其输入计数脉冲频率为100kHz,要求0#计数器输出频率为1kHz的方波,试写出设置8253工作方式与计数初值的有关指令。(控制字格式如图8.4所示)。BCD=1:8253工作在十进制计数器方式;BCD=0:8253工作在二进制计数器方式。参考答案P172 例6连线图如图8.5所示初始化程序MOVAL,37HMOVDX,203HOUTDX,AL;送方式控制字到控制口MOVAL,00MOVDX,200HOUTDX,ALMOVAL,1OUTDX,AL;送计数初值到通道0已知加在8253上的外部计数器时钟频率为1MHz,试说明若再不增加硬件芯片的情况下,使82

6、53产生周期为1s的对称方波应如何实现?参考答案P174 题1由外部计数器时钟频率为1MHz,得时钟周期为1/1MHz=1s;单通道最大定时时间为216*1s1s,所以,要采用计数通道串联的形式。设通道0、通道1都工作在房时3,通道0的输出作为通道1的输入,如图8.6所示。通道0的计数初值=输入脉冲频率/输出方波频率=1000通道1的计数初值=输入脉冲频率/输出方波频率=10008253端口地址为40H43H,CH0作为计数器,技术试种频率1MHz.下列程序段执行后,输出脉冲的宽度是_。MOVAL,36HOUT43H,ALMOVAX,20000OUT40H,ALMOVAL,AHOUT40H,A

7、L参考答案P174 题210ms。已知电路原理图如图8.7所示。编写初始化程序,使在OUT0端输出图示波形(控制字格式同前述题6)。参考答案P175 题3从输出波形上看,该波形的周期是1ms,负脉冲宽度是1s。显然,这是8253工作在方式2下的输出波形。计算计数初值时钟周期=1/CLK0=1/1MHz=1s计数初值=输出脉冲周期/时钟周期=1000确定方式控制字初始化程序片断:MOVAL,35HMOVDX,203H OUTDX,AL;送方式控制字到控制口MOVAL,1000H MOVDX,200HOUTDX,ALMOVAL,AHOUTDX,AL;送计数初值到通道0有如图8.8所示的接口间画图,

8、要是发光二极管点亮2秒,熄灭2秒,但该过程共进行20秒即终止,编写出程序。(伪指令可省略)参考答案P176 题48253口地址通道0:98H通道1:9AH通道2:9CH控制口:9EH计数初值和控制字通道0:方式2输入频率=1MHz/2=500kHz,设输出频率=100Hz,所以,计数初值n0=500kHz/100zHz=5000控制字00110101B=35H通道2:方式0输入频率=100Hz,则时钟周期=1/100Hz=0.01s,而定时时间20s所以,计数初值n2=20s/0.01s=2000控制字10110001B=B1H通道1:方式3输入频率=100Hz,则时钟周期=1/100Hz=0

9、.01s,而输出周期=2+2=4s所以,计数初值n1=4s/0.01s=400控制字01110111B=77H参考程序;通道0初始化MOVAL,35HOUT9EH,AL;通道0控制字MOVAL,00HOUT98H,ALMOVAL,50HOUT98H,AL;通道0计数初值;通道1初始化MOVAL,77HOUT9EH,AL;通道1控制字MOVAL,0HOUT9AH,ALMOVAL,4HOUT9AH,AL;通道1计数初值;通道2初始化MOVAL,0B1HOUT9EH,AL;通道2控制字MOVAL,0HOUT9CH,ALMOVAL,20HOUT9CH,AL;通道2计数初值已知8253连接示意图如图8.

10、9所示,阅读程序后回答OUT2段输出的波形和频率。CODESEGMENTASSUMECS:CODEORG100HSTART:MOVDX,406HMOVAL,37HOUTDX,ALMOVDX,400HMOVAL,00HOUTDX,ALMOVAL,75HOUTDX,ALMOVDX,406HMOVAL,0B7HOUTDX,ALMOVDX,404HMOVAL,00HOUTDX,ALMOVAL,10HOUTDX,ALHERE:JMPHERECODEENDSENDSTART参考答案P177 简答题1方波,频率0.1Hz。已知8253的通道0工作在方式2,通道1工作在方式3。OUT1与CLK0相连,CLK1

11、引脚上输入2MHz的时钟信号。GATE1和GATE2接在高电平,OUT0 通过一反向器输出周期为150s、高电平宽度为5s的周期信号。试计算通道0和通道1的计数初值n0和n1。参考答案P178 简答题2N0=30,n1=10。在8253控制字节中,若RL1RL0 =11,表示_,此时若向计数器0的CR预置初值时,须有_条输出指令。参考答案P178 填空题1先读/写计数器低字节、后读/写计数器高字节,2。8253可编程定时/计数器有_种工作方式,若系统要求输出一个连续的方波信号,则8253的某一个定时/计数器应工作在_。参考答案P178 填空题26,方式3。某系统中,Intel8253所使用的计

12、数脉冲频率为0.5MHz,若给8253的计数器预置的初值N=500,则当计数器计到数值为“0”时,定时时间T=_。参考答案P179 填空题31ms。在8086系统中,8253的通道0工作于方式3(方波发生器),所用的时钟脉冲频率为2MHz,要求输出频率为5kHz的连续方波,其时间常数N0=_;通道1工作于方式1,要求产生宽度为500s的单脉冲,应取时间常数N1=_。参考答案P179 填空题4400,10008253无论工作在哪种工作方式,在初始化编程时,当写入控制字后,输出端OUT就_。为高电平为低电平据设定的工作方式,变为相应的高电平或低电平持原状态不变,直至计数结束参考答案P179 选择题

13、1C8253 PIT有3个16位计数器通道,每个通道有_种工作方式。5346参考答案P179 选择题2D8253计数/定时器中有3个独立的16位计数器,可分别按加或减计数方式工作。参考答案P179 判断题1错误8253PIT工作方式2和方式3的一样之处是都能产生周期性信号输出。参考答案P179 判断题2正确如果8253(或8254)一PIT通道0的时钟输入频率为100kHz,那么这个通道的最大定时时间可以达到1s。参考答案P179 判断题3错误Intel8253可变程定时/计数器工作在方式0计数过程中,当GATE=0时,不影响当前的计数过程。参考答案P179 判断题4错误设8253的通道02和

14、控制端口的地址分别为300H303H,定义通道0工作在方式3,CLK0=2MHz。试编写初始化程序,并画出硬件连线图。要求通道0输出2000Hz的方波,通道1用通道0的输出作计数脉冲,输出频率为400Hz的序列负脉冲。参考答案P179 简答题1通道0工作在方式3,计数初值1000,控制字00110110B=36H通道1 工作在方式2,计数初值5,控制字01010100B=54H初始化程序:;通道0MOVDX,303HMOV AL,36HOUTDX,AL;送通道0控制字MOVAX,1000MOVDX,300HOUTDX,ALMOVAL,AHOUTDX,AL;送通道0计数初值;通道1MOVDX,3

15、03HMOVAL,54HOUTDX,AL;送通道1控制字MOVAL,5MOVDX,301HOUTDX,AL;送通道1计数初值硬件连线如图不B.4所示在某微机中,8253t通道1工作于方式2,用它长生间隔为15s的负脉冲信号用于对动态RAM刷新的定时信号,技术脉冲输入为2MHz,试计算出应写入的计数值是多少?并编写初始化程序。(设8253的计数通道0、1、2的地址分别为40H、41H、42H,空置端口地址为43H)参考答案P179 简答题2计数值是30。通道1:计数初值30,控制字01010101B=55H初始化程序:MOVDX,43HMOV AL,55HOUTDX,AL;送控制字MOVAX,3

16、0HMOVDX,41HOUTDX,AL;送计数初值用8253芯片的通道0生产间隔为10ms的定时信号,技术脉冲的输入频率为2MHz,试说明所采用的工作方式是什么?计算出应写入的计数初值是多少?写出初始化程序。(端口地址假设为:40H43H)参考答案P179 简答题3所采用的工作方式是方式2。计数初值是20000。通道0:计数初值20000,控制字00110100B=34H初始化程序:MOVAL,34HOUT43H,AL;送控制字MOVAX,20000OUT40H,ALMOVAL,AHOUT40H,AL;送计数初值已知原理图如图8.10所示(8253的控制字格式同前述例6)。设有2MHz方波信号

17、源,若利用8253的0#和1#计数器进行串联分频,实在1#计数器的输出端输出分频后的波形。要求:画出电路中缺少的连线已知有关初始化程序如下,问:8253的0#和1#计数器个输出什么波形,频率各是多少?8253初始化程序MOVDX,203HMOVAL,25HOUTDX,ALMOVAL,56HOUTDX,ALMOVDX,200HMOVAL,1OUTDX,ALINCDXMOVAL,64HOUTDX,AL参考答案P180 简答题4补画的连线如图8.10所示。通道0:负脉冲序列,20kHz;通道1:方波,200Hz。8255A中,A组有_种工作方式,它们是_;B组有_种工作方式,它们是_。当A组工作于方

18、式2时,B组可以工作于_。参考答案P184 例13,方始0、方式1和方式2,2,方式1和方式2。8255应用在8088CPU系统中,假定其端口地址为60H、61H、62H、63H;如果将CPU换成8086,此时PA端口仍然为60H,则其端口C的地址为_。参考答案P185 例264H。8255A的方式选择字和位置复位字都写到什么端口?用什么方式区分它们?参考答案P185 例38255A的方式选择字和位置复位字都写到控制端口,靠字的D7位进行区分。若8255A的端口B工作在方式1,并为数出口,置位PC2的作用为_。参考答案P185 例4允许端口B输出中断。设8255Ade A口、B口、C口和控制口

19、的端口地址分别是60H、62H、64H和66H.要求A口工作在方式0输入,B口工作在方式0输出,C口的高4位输入,C口的低4位输出,使编写8255A的初始化程序。参考答案P185 例58255A的初始化程序:MOVAL,98HOUT66H,AL当8255A端口PA、PB分别工作在方式2、方式1时,其PC端口引脚为_。2位I/O2个4位I/O全部作应答联络线1个8位I/O参考答案P186 例1C当8255A的A口工作在方式1,B口工作在方式1时,C口仍然可按基本的输入/输出方式工作的端口线有_。0条2条3条5条参考答案P186 例2B对8255Ade C口执行按位置位/复位操作时,写入得端口地址

20、是_。端口A端口B端口C控制端口参考答案P186 例3D8255A的引脚、信号电平分别为_时,可完成“数据总线8255A数据寄存器”的操作。1、1、00、1、00、0、11、0、1参考答案P186 例4B要将8255Ade 3个8位I/O端口全部设定潍坊市0的输入,其摄制的方式控制字为_。98H9BH9AH99H参考答案P187 例5B设8255工作在方式0下,从A口读入数据,将其高4位清0,低4位保持不变,然后送B口输出。试编写8255初始化程序。(设8255A口地址为60H,B口地址为61H,控制端口地址为63H)参考答案P187 例6参考程序:;8255A初始化MOVAL,99HOUT6

21、3H,AL;8255A工作中INAL,60H;从A口读入数据ANDAL,0FH;高4位清0,低4位保持不变OUT61H,AL;送B口输出已知原理图如图9.4所示。要求对所给电路编写有关程序段,使当开关接至为至1到7时,数码管显示相应的数字1到7,当开关接至为至8时,退出程序。(注意:不必写出所有程序,控制字格式如图25所示。)试说明本电路是如何实现接口的基本功能的。参考答案P188 例7有关程序段DATASEGMENTTABLEDB 06H, 5BH, 4FH, 66H, 6DH, 7DH, 07H;17的共阴极显示码DATAENDS;代码段MOVAX,DATAMOVDS,AX;数据段段寄存器

22、DS赋值MOVAL,8BHMOVDX,203HOUTDX,AL;写入方式控制字AGAIN:MOVDX,201HINAL,DX;从B口读入开关状态TESTAL,80HJZEXIT;当开关接至为至8时,退出程序;以下判断开关接至17端点中的哪一个端点MOVCX,7MOVBX,0NEXT:SHRAL,1;从最低位开始逐位检查JNCBRIGHTINCBXLOOPNEXTJMPAGAINEXIT:MOVAH,4CHINT21HBRIGHT:MOVAL,TABLEBX;换码MOVDX,200HOUTDX,AL;送A口显示JMPAGAIN8255A工作在方式0时,输入的数据不锁存,输出的数据锁存。在对PB口

23、进行读操作时,8255A部的读/写控制逻辑和B组控制逻辑能使开关状态经8255A的数据引脚,送到系统的数据总线上,实现了输入数据的缓冲作用。在对PA口进行写操作时,8255A部的读/写控制逻辑和A组控制逻辑能使系统数据总线传来的数据锁存在8255A,并立即反映在PA口线上,实现了输出数据的锁存功能。 由软件译码的某多路复用4位LED显示器接口电路,如图45所示。入中4个7段LED复用一个8255A的端口A和一个驱动(反相)器。为使LED显示器的各位能显示不同的数字,各个显示器不同时发亮,每个LED显示器的公共阴极由8255A端口B的一条输出线控制,只有阴极为低电平时,该LED显示器才能发亮。在

24、接口电路中数据和数位控制均有规律的不断更新(即扫描或刷新)。对每个LED显示器来说只按顺序固定显示某一定的短暂数据(例如1ms),当刷新速度够大时,由于视觉暂留现象,感觉4个LED显示器同时发亮且无闪烁感。若待显示字符为分离的BCD代码(在数据段DISBUF为首的存贮单元),其相应的显示代码表已存贮在数据段中DISCODE为首的存贮单元,是分析该接口电路了,回答问题,完成该接口电路的刷新显示程序的编程(若每个LED显示器的固定显示时间为1ms,并由编制好的DIMS软件延时1ms字程序实现)该接口电路中8255A的地址是什么?其中各端口的地址又是什么由那些引脚选择确定?分析该接口电路中A端口、B

25、端口应工作在什么方式下?试完成对8255A的初始化编程。如何将要县粮食的字符代码(如分离的BCD数)转换为显示代码? 用软件译码的原理方法是什么?请简述说明。根据图9.5所示接口原理,是定义一个过程,编程实现将DISBUTF缓冲区的4个字符代码(分离BCD数)显示于图示LED显示器上(即刷新显示程序)。已知数据段中存贮变量DISCODE与DISBUF如下:DATASEGMENTDISCODEDB40H,79H,24H,30H,19H,12HDB02H,78H,00H,18HDISBUFDB4 DUP(?)DATAENDS8255A的方式控制字:D7D6D5D4D3D2D1D0标志位=1A组方式

26、A口I/O方式上半C口I/O方式B组方式B口I/O方式下半C口I/O方式参考答案P190 题18255A的地址是200H203H,PA口的地址是200H,PB口的地址是201,PC口的地址是202H,控制口的地址是203H。由芯片上A1和A0引脚选择确定。该接口电路中A端口、B端口应工作在方式0下,都作为输出口。方式控制字为:1000I/O01I/O方式控制字标志A口方式0A口输出PC7PC4任意值B口方式0B口输出PC3PC0任意值当任意值取0时,方式控制字是82H,写到控制口203H。初始化程序MOVAL,82HMOVDX,203HOUTDX,AL软件查表的方法。MOVAL,5;假设要显示

27、的字符为5LEABX,DISCODEXLAT;AL的容为要显示的字符的显示代码程序提供的是共阳极显示代码,PA口作为段码输出口,输出的信号反向驱动后送给数码管,给定的数码管是共阴极数码管,而输出的信号反向后为共阴极显示代码。PB口作为位码输出口,输出的信号反向后送给数码管,所以PBi=1所对应的数码管亮。PA口地址是200H,PB口地址是201H。已知电路如图9.6所示(8255控制格式同前述44题)。途中的数码管为共阴极型,共阴极端接GND,数码管的a,b,g段依次接8255的PB0,PB1,PB6。要求对该电路进行编程,使数码管初始状态显示0。每按下一次S0键后,数码管显示的数字减1,减至

28、0后,再按S0件,则数码管显示9;每按下一次S1键后,数码管显示的数字加1,加至9后,在按S1键,则数码管显示0。若同时按下S0和S1键,则退出程序。参考答案P193 例2口地址从图上可看出,PA口的口地址是200H,PB口的口地址是201H,PC口的口地址是202,控制口的口地址是203H。方式控制字从图上可看出,PA口工作在方式0,输入口;PB口工作在方式0,输出口。所以方式控制字各位为:如任意值取1,则控制字是99H。故参考程序如下(不考虑按键的抖动)。;数据段DATASEGMENTTABLEDB40H,79H,24H,30H,19H,12H,02HDB78H,00H,18H;共阴极LE

29、D的09显示代码DATAENDS;代码段CODESEGMENTASSUMECS:CODE,DS:DATASTART:MOVAX,DATAMOVDS,AXMOVAL,99H;8255初始化MOVDX,203HOUTDX,ALLEABX,TABLE;BX指向存放显示代码的起始单元MOVDX,201HMOVAL,BX;数码管初始状态显示0OUTDX,AL;送PB口MOVDL,0H;CL为初始显示值AGAIN:MOVDX,200HINAL,DX;读入开关状态ANDAL,3;屏蔽高6位,保留低2位CMPAL,0 JEEXIT;2个键都按下,则退出程序运行CMPAL,3JEAGAIN;2个键都没按下,显示

30、数字不变,转去测试输入口SHRAL,1 JNCS0DOWN;S0 按下,转S0DOWN;以下是S1按下的处理S1DOWN:INAL,DXTESTAL,2;测试S1键是否释放JZS1DOWNINCCLCMPCL,10JCDISPLYMOVDL,0JMPDISPLY;以下是S0按下的处理S0DOWN:INAL,DXRESTAL,01H;测试S0键是否释放JZS0DOWNDECCLCMPCAL,0FFHJCDISPLYMOVCL,9DISPLY:MOVAL,CLXLAT;换码MOVDX,201HOUTDX,AL;送PB口显示MOVDX, 200HJMPAGAINEXIT:MOVAH,4CHINT21

31、HCODEENDSENDSTART硬件电路如图9.7所示,要求在8个7段显示器上依次不断重复显示19860524,在显示过程中,要求发光二极管L一直亮。显示数字01234567897段代码(H)3F065B4F666D7D077F6F参考答案P195 例38255A地址:A口是91H、B口是93H、口是95H、控制口是97H。A口工作在方式0用作输出接口,B口工作在方式0用作输出接口,所以方式控制字是90H,写到控制口97H。显示使用的是共阴极LED显示器,提供的是共阴极显示代码;为了使发光二极管L一直亮,只要使PA7输出恒为“0”即可。参考程序如下:DATASEGMENTDISPBDB1,9

32、,8,6,0,5,2,4TABDB3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH;8255A初始化DATAENDSCODESEGMENTASSUMECS:CODE,DS:DATASTART:MOVAX,DATAMOVDS,AXMOVAL,90H;控制哪一位亮OUT97H,ALLEABX,TAB;BX指向7段码表首AGAIN:MOVAL,SI;SI指向要显示数字的首部INCSIXLAT;换码,D7=0OUT91H,AL;送段码ROLDL,1MOVAL,DLOUT93H,AL;送位码(控制在哪个数码管上显示)CALLDISPLY;DISPLY为延时1ms的延时程序,

33、假定已存在CMPDL,80HJNZNEXTJLMPAGAINMOVAH,4CHINT21HCODEENDSENDSTART在某一8088微机控制系统中,扩展有中断控制器8259A、定时/计数器8253和并行接口8255A各一片。利用8253的定时器0和1 串接完成1小时定时,每次定时到,从OUT1输出一个负脉冲,通过8269A的IR2向CPU请求中断,在中断服务程序中启动一次打印报表程序,打印200个存于存缓冲区BUFFER处的字符。(8259A工作于边沿触发,中断类型码基值为28H,中断自动结束方式)图9.8所示是CPU通过8255A与打印机的连接图(其余部分略),8255A的PA口工作于方

34、式1输入,PB口工作于方式1输入,PB口工作于方式0输出,PC口上半部分为输入,下半部分为输出。打印报表时,当检测到打印机BUSY为“0”,则CPU通过PB口向打印机送新数据,同时送出一个负脉冲。8255A的命令字格式为:1D6D5D4D3D2D1D0A口方式A口输入/输出上半C口输入/输出B口方式B口输入/输出下半C口输入/输出(1=输入,0=输出)要求:请给出8255A的各端口地址,并给出8255A的初始化程序片断。编制程序完成中断矢量的设置,并给出打印报表的中断服务子程序。参考答案P196 简答题18255A的各端口地址:PA口地址是8CH,PB口地址是8DH,PC口地址是8EH,控制口

35、地址是8FH。方式控制字是0B8H,8255A的初始化程序片断如下:MOVAL,0B8HOUT8FH,ALMOVAL,00000001BOUT8FH,AL;将PC0置为“1”IR2的中断类型号是2AH,完成中断矢量的设置程序如下:INTSEVSEGMENTAT0ORG2AH*4DDPRINTFINTSEVENDS打印报表的中断服务子程序如下:PRINTFPROC;保护现场MOVBX,OFFSET BUFFERMOVCX,200NEXT:INAL,8EHTESTAL,80H;检测打印机BUSYJNZNEXTMOVAL,BXINCBXOUT8DH,AL;输出一个打印字符MOVAL,00000000

36、B;向PC0输出负脉冲OUT8FH,AL;拉低NOP;保持一定的宽度NOPNOPINCALOUT8FH,AL;拉高LOOPNEXT;恢复现场IRETRINTFENDP在8255A端口A工作于方式2时,端口B可以工作在_或_。参考答案P197 填空题1方式0,方式18255A部有_个输入输出端口,3个端口中只有端口_没有输入锁存器。参考答案P197 填空题24个输入输出端口, 即A口、B口、C口和控制口;C口8255A把_和_分别称为A组和B组,可组成两个独立的并行接口。参考答案P197 填空题3A口和C口上半部(PC7PC4)B口和C口下半部(PC3PC0)当数据从8255的端口C往数据总线上

37、读出时,8255的几个控制信号、A1、A0、分别是_、_、_、_、_。参考答案P197 填空题40;1;0;0;1。8255A的操作由、A1、A0信号组合确定,当CPU向8255A送控制字时,信号组合应当是:A1A000101011010011001110参考答案P198 选择题1D如果8255A的端口A工作在双方向方式,这时还有_根I/O线可作其它用。11121013参考答案P198 选择题2A(PB口8根+PC口3根)在Intel8255A中可以进行按位置位/复位的端口是_。端口A端口B端口C端口D参考答案P198 选择题3C当8255A的PC4PC7全部为输出线时,表明8255A的A端口

38、工作方式是_。方式0方式1方式2任何方式参考答案P198 选择题4AIntel8255可编程并行接口PB端口工作在方式1时,其中断请求信号是通过PC3发出的。参考答案P198 判断题1错误8255A工作于方式1或方式2时,其状态字通读端口C获得。参考答案P198 判断题2正确8255A工作于方式2时,A口、B口均作为双向数据传送端口,C口各位作为他们的应答控制线。参考答案P198 判断题3错误8255A并行接口芯片的端口A工作在双向方式,断口B工作在选通输入方式,这时端口C依然可以工作在位控方式。参考答案P198 判断题4错误一直原理图如图9.9所示(8255A控制字格式同前述44题)。途中的

39、自下而上4个开关依次为S0、S1、S2、S3,试对该原理图进行编程,使其满足下表要求,并使同时检测到开关状态中有奇数个打开时,则退出程序。开关状态微机S3S2S1S0屏幕显示闭闭闭闭0闭闭闭开1闭闭开闭2闭闭开开3闭开闭闭4闭开闭开5闭开开闭6闭开开开7闭闭闭闭8闭闭闭开9闭闭开闭A闭闭开开B闭开闭闭C闭开闭开D开开开闭E开开开开F参考答案P198 简答题1控制口地址:203,控制字:90HPA口地址:200H微机屏幕显示使用系统功能调用(2#)。参考程序如下:CODESEGMENTASSUMECS:CODESTART:MOVDX,203H;8255初始化MOVAL,90HOUTDX,ALMO

40、VDX,200HAGAIN:INAL,DX;读入开关状态,开关打开为高电平ANDAL,0FH;屏蔽高4位,同时产生标志JPOEXIT;奇数个“1”转走;以下完成将AL里的数字变换成ASCII码CMPAL,0AHJCDIGITADDAL,7DIGIT:ADDAL,30HMOVDL,ALMOVAH,2INT21H;系统功能调用JMPAGAINEXIT:MOVAH,4CHINT21HCODEENDSENDSTART设系统计外扩一片8255以与相应的实验电路,如图9.10所示。要求:先预置开关K3K1为一组状态,然后按下自复按钮产生一个负脉冲信号,输入到PC4()上。用发光二极管LEDi亮来显示K3K

41、1的状态。重复以上操作,直到主机键盘有任意键按下时结束演示。要求:K3K2K1=000时,LED1亮K3K2K1=001时,LED2亮K3K2K1=010时,LED3亮K3K2K1=011时,LED4亮K3K2K1=100时,LED5亮K3K2K1=101时,LED6亮K3K2K1=110时,LED7亮K3K2K1=111时,LED8亮K3K1闭合为0,断开为1。该接口电路中8255的地址是什么?其中各端口的地址又是什么?分析该接口电路中A端口、B端口应工作在什么方式下?试完成对8255的初始化编程。是完成程序主体实现题中要求。DATASEGMENTMESGDB8255 READY,0DH,0

42、AH,$TABDB11111110BDB11111101BDB11111011BDB11110111BDB11101111BDB11011111BDB10111111BDB01111111BDATAENDSCODESEGMENTASSUMECS:CODE,DS:DATASTART:MOVAX,DATAMOVDS,AXCALLI8255;8255初始化MOVAH,9MOVDX,OFFSET MESGINT21H;给出操作提示SCAN:MOVAH,1INT16HJNZRETURNRETURN:MOVAH,4CHINT21HI8255:CODEENDSENDSTART8255方式控制字:参考答案P1

43、99 简答题28255的地址是218H21BH,A端口的地址是218H,B端口的地址是219,端口的地址是21AH,控制端口的地址是21BH。A端口应工作在方式1,作为输入口,允许输入中断;B端口应工作在方式0,作为输出口。方式控制字为B0,初始化程序如下:MOVDX,21BHMOVAL,B0HOUTDX,AL实现题中,完成程序主体如下:MOVDX,218HINAL,DX;读入开关状态ANDAL,7;只保留低位LEABX,TABXLAT;换码MOVDX,219HOUTDX,AL;送口显示JMPSCAN设有一被测量温度的变化围为0100。要求测量误差不超过0.1,则应选用的A/D转换器的分辨率至

44、少应该为_位。参考答案P206 例110设有一被测量温度的变化围为201200。要求测量的误差不超过1,则应选用的A/D转换器的分辨率至少应该为_。4位8位10位12位参考答案P207 例2D用1片8位D/A 转换器(端口地址为port)、1片运放组成一个三角波发生器,波形幅度为(05V),试画出与CPU的电路连接图,并编程。参考答案P207 例3与CPU的电路连接图,如图10.6所示。参考程序如下:MOVDX,PORTMOVAL,0NEXT1:INCALOUTDX,AL;送到DAC CALLDELAY;设DELAY是延时子程序,已存在CMPAL,0FFHJNENEXT1NEXT2:DECAL

45、OUTDX,ALCALLDELAYCMAPAL,00JNENEXT2JMPNEXT1画出图10.7带不可控三态门的10位A/D转换器和8位CPU的接口电路图,并说明其工作原理(用文字说明)。参考答案P208 例4选用2片8位单向三态缓冲器74LS244。当时能端和得到低电平时,三态缓冲器的三态缓冲单元处于导通状态,数据从输入端原样传到输出端;当时能端和得到高电平时,三态缓冲器的三态缓冲单元处于高阻状态,输入端的数据传不到输出端。具体连线如图10.8所示。工作原理:当有效时,说明A/D转换结束,CPU从PORT1端口读取低8位,从PORT2端口读取高2位。CPU载队PORT1执行IN指令时,产生

46、的(为0)和端口地址PORT1让使能端和得到低电平,部三态门打开,A/D转换结果低8位数据通过74LS244送到系统数据总线,在从数据总线上送到CPU。CPU在对PORT2执行IN指令时,产生的(为0)和端口地址PORT2让使能端得到低电平,部三态门打开,A/D转换结果高2位数据通过74LS244送到系统数据总线D1D0,在从数据总线上送到CPU。一支部分A/D转换器原理图如图10.9所示。适当添加逻辑电路,满足如下要求:使当CPU对200H207H所对应的I/O地址进行写时,能启动ADC0809的通道0通道7进行A/D 转换。使当CPU对200H207H所对应的I/O地址进行读时,能读入A/

47、D转换后得到的数字量。编写汇编语言程序实现启动ADC0809的0通道进行A/D转换,并读入转换后得到的数字量(考虑A/D转换的延时时间)。参考答案P209 例5连接图如图10.10所示。参考程序如下:采用延时等待法MOVDX,200H;DX指向ADC通道0OUTDX,AL;锁存并启动A/D转换CALLDELAY;DELAY实延时子程序,延时时间A/D转换的延时时间INAL,DX;读入转换结果采用检查法将ADC0832的转换结果指示引脚EOC通过一个三态缓冲器接入系统数据总线D7,三态缓冲的控制见图,使用I/O地址208H20FH。MOVDX,200H;DX指向ADC通道0OUTDX,AL; 锁

48、存并启动A/D转换MOVDX,208H;DX指向状态口WAIT1:INAL,DX;读入EOC状态TESTAL,80H;测试D7JNZWAIT1;转换还没开始WAIT2:INAL,DX;读入EOC状态TESTAL,80HJZWAIT2;转换还没结束MOVDX,200HINAL,DX;读入转换结果采用中断将ADC0832的转换结束指示引脚EOC输出信号作为中断请求信号,送终端控制器(如8259A ),占用一个终端类型号n.在中断服务程序力读取转换结果。中断向量填入略。主程序:STIMOVDX,200H;DX指向ADC通道0OUTDX,AL;锁存并启动A/D转换中断服务程序:MOVDX,200HIN

49、AL,DX;读入转换结果IRET当ADC0809模拟量输入电压围为05V时,若引脚REF(+)接+5V,REF(-)接地,那么其最小分辨率为_。39.2mV19.6mV9.8mV4.9mV参考答案P211 例1BDAC0832是一种分辨率为_(选择从AD),输入具有_(选择从EH)功能的D/A转换器4位8位12位10位两级锁存一级锁存无所存其他参考答案P211 例2B、E有如图10.11所示的接口简化图,在0908德IN3上接了一个V(t)电压,要求连接对该电压采样并转换100个点,同时要求,没转换好一个数据,在保存到存之后再送给D/A转换器0832,写出实现该要求的程序。(为指令可省略)参考

50、答案P211 例3MOVCX,100;采样100个点MOVDI,BUF;假定BUF是在数据段里定义的100个字节空间的首址AGAIN:MOVAL,3;IN3的通道号OUT84H,AL;发通道索存信号,同时启动A/D转换WAIT1:INAL,80H;读取状态TESTAL,80H;查询状态JNZWAIT1;D7=1,转换还没开始WAIT2:INAL,80H;在读取状态TESTAL,80HJZWAIT2;D7=0,转换未结束,转去读取状态INAL,82H;读取转换结果MOVDI,AL;保存转换结果到存INCDIOUT86H,AL;再送给0832LOOPAGAIN图10.12给出的是一个不完整的由80

51、88CPU、8255、8253和A/D构成的数据采集系统。要求用8253通道0提供8kHz的采样频率给A/D。ADC每次转换结束用信号通知8255。8255端口A工作于方式1,用中断形式将数据采集DATBUF中,DATBUF长度为BUFLEN,中断类型号为0BH。一次连续采集的时间由按钮开关K控制(不考虑K的抖动问题)。假设8255起始地址为60H,8253起始地址为40H。请补画出有关的引脚、连线,写出初始化和中断处理子程序。(不考虑CPU连线、I/O译码和中断控制器作用)参考答案P212 例4;置中断向量DATA SEGMENT AT 0ORG 0BH*4DDINTSEVDATAENDS;

52、数据段DATA1SEGMENTDATBUFDB100 DUP(?)BUFLENEQU$-DATBUFDATA1ENDS;代码段CODESEGMENTASSUMECS:CODE,DS:DATA1START:MOVAX,DATA1MOVDS,AX;8253初始化MOVAL,35H;送控制字OUT 43H,ALMOV AL,25H;送时间常数OUT 40H,ALMOV AL,1OUT40H,AL;8253初始化MOVAL,0B0HOUT63H,AL;送工作方式字MOVAL,9OUT63H,AL;置端口A中断允许MOVBX,0STIJMP$;中断服务子程序INTSEV:;保护现场INAL,60HCMP

53、BX,BUFLEN;预留的存储空间是否满意JCSAV;预留的存储空间满处理;恢复现场IRETSAV:MOVDATBUFBX,ALINCBX恢复现场;IRETCODEENDSENDSTART已知原理图如图10.14(a)所示。编写一完整代码段程序,使在V0端输出1000个图10.14(b)所示波形。波形中上升与下降斜率与达到最大值的延迟时间自定,但要求一个周期正、负波形对称。如果要在V0端口产生一周期正弦波形,试说明编程实现的方法(不用具体编程)。参考答案P216 例5参考程序如下:CODESEGMENTASSUMECS:CODESTART:MOVCX,1000;重复1000次MOVDX,200

54、NEXT:MOVAL,K80HUP:OUTDX,AL;D/A转换INCALCMPAL,0B3H+1;超过上限了吗JNZUPCALLDELAY;调用延时子程序DELAY;延时时间根据高电平延时的要求而定MOVAL,80HDOWEN:OUTDX,AL;D/A转换DECALCMPAL,4DH-1;低于下限了吗JNZDOWNCALLDALAYLOOPNEXT;转下一个周期MOVAH,4CHIN21HCODEENDSENDSTART利用D/A转换器输出的模拟量与输入的数字量成比例的关系。设待输出正弦波周期为T,在每个正弦波里要均匀输出n个函数值。第一步先计算出相应的正弦函数值,并将其函数值有次序地保存到

55、存里(正弦函数数值表)。计算公式如下: step=1,2,,n第二步在需要周期性正弦波形输出时,由程序将它们依次取出,经相应处理后(如将其最高位取反变成偏移码送DAC等),并在程序中保证相邻两次写到DAC,操作间隔为T/n,并重复这个过程。即能产生周期性正弦波形。要改变正弦波形的周期,只要改变相邻两次给端口写数字量的时间间隔即可实现。已知原理图如图10.15所示,以与相应程序如下:MOVDX,200HMOVAL,0FFHOUTDX,AL要求:当VREF端输入正弦信号时,忽略R2的影响,画出与VREF对照的V0端输出波形。讨论R2和Cf对V0端输出波形的副值与相位的影响。参考答案P218 例6本

56、例主要考查DAC0832得转换原理,以与D/A转换与运算放大器应用的综合能力。设VREF=Vmsint。第一级运算放大器完成电流型模拟量输出转变成电压型模拟量输出,输出围0-VREF。当前输入的数字量固定为0FFH,所以第一级输出电压输入的数字量忽略R2的影响,第二级运算放大器和电容构成积分环节,所以画出对VREF对照的V0端输出波形如图10.16所示。图10.17时有关第二级运放原理图,其中由前一级输出知:求解该一阶微分方程,可得出V0与R2和Cf的关系。下面,采用电工理论介绍的符号法。有前已推出V0端输出波形的幅值讨论:当R2,即没有R2(R2支路断开)时,有:故,此时又比例-积分环节变为

57、积分环节。当Cf=0,即没有Cf(Cf支路断开)时,有:故,此时由比例-积分环节变为比例环节。所以,R2变化会影响V0端输出波形的幅值,也会影响V0端输出波形的相位。Cf变化会影响V0端输出波形的幅值,也会影响V0 R2端输出波形的相位。简答题,如图10.18所示。编写程序,使在V0端输出三角波。画出V0端波形,说明如何改变三角波的周期和幅值。参考答案P221 题1参考程序MOV AL,0MOVDX,200HDAWN:OUTDX,ALINCALCMPAL,0FFHJNZDOWNUP:OUTDX,ALDECALCMPAL,0JNZUPJMPDAWNV0端波形见图10.19。改变三角波的周期只要改变相邻两次给端口写数字量的时间间隔即可;改变三角波的幅值只要改变两条比较指令CMP中的数字即可。设有某BDC码输出型A/D转换器的有关引脚如图10.20(a)所示,端为模拟量输入端,为数字量输出端。Vx当输入的模拟量为01.999V时,D3D2D1D0转换后得到的数字量为0.0001.999,每位数字量以BCD码的形式从高位到低依

温馨提示

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

评论

0/150

提交评论