微机原理习题.docx
- 文档编号:8611814
- 上传时间:2023-02-01
- 格式:DOCX
- 页数:14
- 大小:416.91KB
微机原理习题.docx
《微机原理习题.docx》由会员分享,可在线阅读,更多相关《微机原理习题.docx(14页珍藏版)》请在冰豆网上搜索。
微机原理习题
1、如图8-8所示给出的是一个用AD574A作ADC,用8255作ADC接口,用8254作定时器的PC系列机参数监控系统的硬件电路图。
其中8255的A口、B口均工作于方式0,PC7用于驱动发光二极管报警,PC6、PC5用于控制A/D转换器的启动和读数,PC0用于寄存器转换是否结束的状态;8254三个通道串行连接,均工作于方式2(n分频方式,也叫速率波发生器方式),分别产生1ms、1s和600s的定时信号,为系统提供600s的周期性采样定时中断信号。
已知8255和平共处254的工作方式控制字格式。
(1)写出8255和8254使用的端口地址。
(2)确定8254三个通道的计数初值和控制字。
(3)确定8255的工作方式控制字。
解:
(1)从接线图可知,8255的端口地址为:
200H-203H
8254的端口地址为:
204-207H
(2)8254三个通道的计数初值和控制字。
通道0:
计数初值=
=
=5000
控制字=34H
通道1:
计数初值=
=1000
控制字=74H
通道2:
计数初值=
=600
控制字=B4H
(3)按题意要求:
A口、B口方式0输入,C口高4位输出,低4输入。
所以8255工作方式控制字=93H。
(4)初始化程序:
INI8255:
MOVDX,203H
MOVAL,93H
OUTDX,AL
MOVAL,OEH
OUTDX,AL
IN18254:
MOVDX,207H;通道0设置
M0VAL,34H
0UTDX,AL
M0VDX,204H
M0VAX,5000
0UTDX,AL
M0VAL,AH
0UTDX,AL
M0VDX,207H;通道1设置
M0VAL,74H
0UTDX,AL
M0VAX,1000
M0VDX,205H
0UTDX,AL
M0VAL,AH
0UTDX,AL
M0VDX,207H;通道2设置
M0VAL,OB4H
0UTDX,AL
M0VDX,206H
M0VAX,600
0UTDX,AL
M0VAL,AH
0UTDX,AL
中断服务流程图如图8-14所示。
2、如图8-9所示为一秒时钟电路原理图。
显示范围00-59秒并且循环重复显示,8253产生1秒定时中断信号,中断类型号为47H,8255用于控制数码管显示,试编程实现。
其中有关8259的编程不予考虑。
解:
BUFFERDB0
TAB:
DB3FH,06H,5BH,4FH,66H,6DH,7DH,O7H,7FH,6FH
INI8255:
M0VDX,0FF8FH;8253初始化,A□、B□均为方式0输出
M0VAL,80H
0UTDX,AL
INI8253:
M0VDX,0FF87H;8253初始化,通道0、方式3、BCD计数
M0VAL,34H
0UTDX,AL
M0VDX,0FF84H;写计数初值为0
M0VAL,O
0UTDX,AL
0UTDX,AL
CLI;写中断向量
M0VAX,0
M0VDS,AX
MOVSI,47H*4
M0VBX,SEGDISP;取偏移地址
M0V[SI],BX
INCSI
INCSI
M0VBX,SEGDISP;取段地址
M0V[SI],BX
STI
中断服务程序:
DISPPROCFAR
PUSHAX
PUSHDX
PUSHCX
PUSHBX
M0VCL,BUFFER;读计数值
CMPCL,3CH;为60秒清零
JNZNEXT
X0RCL,CL
NEXT:
M0VAL,CL;转换成十进制数
X0RAH,AH
M0VBL,OAH
DIVBL
M0VBX,OFFSETTAB;十位转换为7段显示码
XLAT
MOVDX,OFF9CH;输出到显示器
OUTDX,AL
MOVAL,AH;个位转换输出
XLAT
INCDX
OUTDX,AL
INCCL;计数值加1
MOVBUFFER,CL
POPBX
POPCX
POPDX
POPAX
IRET
DISPENDP
3、若某微机系统的接口电路中,包含1个并行I/O的8255A和1个定时/计数器8253。
设8255A和8253的片选信号分别为
、
,其片内地址线A1、A0分别接到地址总线的A2、A1。
要求完成
(1)设
、
的编址范围分别为218H-ZlFH、200H-207H,在表对应的空格处填写各端口的编程地址。
(2)若8255A的A口和B口设为方式0,且A口作输出口(A口初始状态为全0)B口作输入口,试完成该接口电路的初始化程序。
(3)设8253的1号、2号计数器分别采取工作方式0和方式3,1号计数器的计数预置值为8位二进制数M,2号计数器的计数预置值为4位十进制数L,试完成该接口电路的初始化程序。
解:
(1)端□地址为:
8255A:
A□218H;B□2lAH;C□21CH;控制寄存器21EH;
8253:
0号计数器200H;l号计数器202H;
2号计数器204H;控制寄存器206H。
(2)INI8255:
MOVDX,2lEH
MOVAL,82H
OUTDX,AL
XORAL,AL
MOVDX,218H
OUTDX,AL
(3)INI8253:
MOVDX,206H
MOVAL,5OH
OUTDX,AL
MOVAL,M
MOVDX,202H
OUTDX,AL
MOVDX,206H
MOVAL,OB7H
OUTDX,AL
MOVDX,204H
MOVAX,LH
OUTDX,AL
M0VAL,AH
0UTDX,AL
4、现要求通过8253芯片,在输入1.19MHz频率信号时、能在0号通道输出18.2Hz的方波作电子钟时间基准。
8253的接线如图8-10所示,请写出其初始化程序,并画出
、CLK、OUT引脚的时序示意图。
假定8255A的地址为0060H~0063H,试编写下列情况的初始化程序,A组设置为方式1,且端口A作为输入,PC6和PC7作为输出,B组设置为方式1,且端口B作为输入。
解:
MOVDX,0063H
MOVAL,OB6H
OUTDX,AL
已知某8088微机系统的I/O接口电路如图7-8所示。
要求:
(1)按图7-8中接线,写出8253、8255各端口的地址编码。
(2)完成8253、8255的接口初始化程序,其中,设8253的1#计数器输出为100Hz方波,8255的A口为输出,B口和C口为输入。
(3)为8255编写一个I/0操作子程序,其功能为:
每调用一次,首先检测PC0的状态,PC0=0则循环等待;PC0=1,即从PB读取当前K的位值(0~7),经转换计算从A口的PA3~PA0输出该位值的二进制编码,以供七段LED作数字显示。
解:
(1)8253:
0000H~0003H;8255:
8000H~8003H。
(2)INI8255:
MOVDX,8003H;置8255控制端口地址
MOVAL,8BH;置8255控制字:
A口输出,B口、C口输入
OUTDX,AL
INI8253:
MOVDX,0003H;置8253控制端口地址
MOVAL,77H;通道1,方式3,BCD计数
OUTDX,AL
MOVAL,0;计数初值为0
MOVDX,0001H;通道1地址
OUTDX,AL;写低字节
OUTDX,AL;写高字节
RET
(3)IO-PROC
WAIT:
MOVDX,8002H;置端口C地址
INAL,DX;读入端口C状态
TESTAL,01H;测试PC0
JZWAIT
MOVDX,8001H;置端口B地址
INAL,DX;读开关状态
MOVAH,0;置开关编号
AGAIN:
TESTAL,01H;测试开关状态
JZNEXT
SHRAL,1;下一开关状态
INCAH;开关编号加1
JMPAGAIN
NEXT:
MOVDX,8000H;置A口地址
MOVAL,AH
OUTDX,AL;输出开关编号
有一个8088CPU组成的微机系统,通过并行口8255驱动打印机,8255工作在中断方式,向8259的IR7发中断请求信号,具体连接如图7-9所示。
已知8255的端口地址为88H、89H、8AH、8BH;中断服务程序入口地址为2000H:
l000H。
请完成下列工作:
(1)在图7-9上填出引脚有“?
”处的连接信号(共10处)。
(2)编制主程序。
(东南大学2000年)
解:
(1)IO/M;G2A:
A7;G2B:
A6+A5+;A:
A2;B:
A3;C:
A4;A1:
A1;A0:
A0
(2)MOVAL,0A0H;置8255控制字,A口方式1输出,C口低4位输出
OUT8BH,AL
MOVAL,01H;PC0置1
OUT8BH,AL
MOVAL,0DH;PC6置1,使INTE=1,允许A口中断
OUT8BH,AL
CLI
MOVAX,0000H;填写中断向量
MOVDS,AX
MOVBX,IR7;取IR7的中断类型号
MOVCL,2
SHLBX,CL
MOVAX,1000H
MOV[BX],AX
MOVAX,2000H
MOV[BX+2],AX
STI
MOVAL,0AH;输出换行符
OUT88H,AL
MOVAL,0;从PC0输出负脉冲
OUT8BH,AL
MOVAL,01H
OUT8BH,AL
某输出设备的引线及工作时序如图7-11所示。
当此外设为忙时可经D0~D7向它送出要输出的数据,在数据稳定后利用STB脉冲锁存于该外设并启动其工作,此后外设变忙(BUSY为高电平)。
当BUSY变低时,表示外设已处理结束,可重复上述过程输出下一个数据。
(1)现规定使用可编程并行接口8255将该输出设备连接到8088系统总线上,接口地址4000~40FFH全部分配给此接口使用,试画出连接电路图。
(2)若将内存DS所决定的数据段、偏移地址为BUFF开始的顺序单元中存放着要输出的数据。
这些数据以两个连续的字节:
先ODH后OAH结束。
试编写程序将这些数据从该输出设备上输出。
解:
(1)连接电路图如图7-12所示。
(2)START:
MOVDX,4003H
MOVAL,81H;8255方式字:
A口方式0输出,C口
;高4位输出
OUTDX,AL;低4位输入
MOVAL,0FH;PC7=1
OUTDX,AL
MOVSI,BUFF
MOVDX,4002H
LOOP:
INAL,DX;测试外设是否忙
TESTAL,01H
JNZLOOP
MOVAX,WORDPTR[SI];是否为结束字符
CMPAX,0A0DH
JZEXIT
MOVDX,4001H;输出一个字节
MOVAL,BYTEPTR[SI]
INCSI;指向下一单元
OUTDX,AL
MOVDX,4003H;PC7输出一个负脉冲
MOVAL,0EH
OUTDX,AL
MOVAL,0FH
OUTDX,AL
MOVDX,4002H
JMPLOOP
EXIT:
HAL
系统硬件图如下图所示,要求芯片8253A的计数器0工作于方式3,输出方波的频率为2KHz;设输入脉冲的频率为2.5MHz要求:
1)(6分)试分析各通道的端口地址、控制字,
2)(4分)写出初始化程序段。
五、应用题(本题共10分)
1、如图所示存储器扩展电路图,请回答下列问题:
1)(2分)说明图中所扩展的EPROM芯片容量是多少?
2)(2分)译码器的作用是什么?
3)(6分)图中所扩展的存储器芯片的地址分别为多少?
用下图所示的74S138译码器和RAM2716(2K*8b),为某8位CPU设计一个6KB的ROM存储器。
该存储器采用全译码方式进行片选。
试完成:
1)(2分)该存储器共需2716芯片几片?
2)(4分)画出该存储器的总线连接图?
3)(4分)写出2716每块芯片的地址范围?
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 微机 原理 习题
![提示](https://static.bdocx.com/images/bang_tan.gif)