一、填空题(25分,每空1分)
1、MCS-51系列单片机为 8 位单片机
2、MCS-51系列单片机的典型芯片分别为 8031 、 8051 、 8751 。
3、8031的异步通信口为 全双工 (单工/半双工/全双工) 内容来自单片机之家www.dpj100.com
4、8031有 2 级中断, 5 个中断源
5、8031内部数据存储器的地址范围是 00H~7FH ,位地址空间的字节地址范围是 20H~2FH ,对应的位地址范围是 00H~7FH ,外部数据存储器的最大可扩展容量是 64K 。
6、MCS-51系列单片机指令系统的寻址方式有__寄存器寻址__、____直接寻址____、___寄存器间接寻址_____、_立即寻址____、 基址寄存器加变址寄存器寻址 。 。
7、如果(A)=34H,(R7)=0ABH,执行XCH A, R7;结果(A)= 0ABH ,
(R7)= 34H 。
8、8255可以扩展 3 个并行口,其中 8 条口线具有位操作功能;
9、当单片机复位时PSW= 00 H,这时当前的工作寄存器区是 00 区,R4所对应的存储单元地址为 04 H。
10、若A中的内容为67H,那么,P标志位为 1 。
11、74LS138是具有3个输入的译码器芯片,其输出作为片选信号时,最多可以选中 8 片芯片。
二、判断以下指令的正误:(5分)
(1)MOV 28H,@R4; ( × )
(2)INC DPTR; ( √ ) 内容来自单片机之家www.dpj100.com
(3)DEC DPTR ; ( × ) 内容来自单片机之家www.dpj100.com
(4)CLR R0 ; ( × )
(5)MOV T0,#3CF0H; ( × )
三、简答题
1、 如果(DPTR)=507BH,(SP)=32H,(30H)=50H,(31H)=5FH,(32H)=3CH,则执行下列指令后:
POP DPH;
POP DPL;
POP SP;
则:(DPH)=___3CH___;(DPL)=_____5FH_____;(SP)=_____50H_____;(6分)
2、采用6MHz的晶振,定时1ms,用定时器方式0时的初值应为多少?(请给出计算过程)(6分)
解:∵采用6MHZ晶振
∴机器周期为2us
(213-X)×2×10-6=1×10-3
∴X=7692(D)=1E0CH=1 1110 0000 1100(B),
化成方式0要求格式为 1111 0000 1100 B
即0F00CH
综上可知:TLX=0CH, THX=0F0H
3、分析下列程序的功能(5分)
PUSH ACC
PUSH B
POP ACC
POP B
解:该程序的功能是通过累加器ACC与寄存器B数据交换。
内容来自单片机之家www.dpj100.com
五、简述MCS-51系列单片机主从结构多机通信原理,设有一台主机与三台从机通信,其中一台从机通信地址号为01H,请叙述主机呼叫从机并向其传送一个字节数据的过程。(请给出原理图) (10分)
原理图如上图所示,假设主机呼叫01H从机,首先呼叫:主机发送地址帧0000 00011(TB8)
此时各从机的SM2位置1,且收到的RB8=1,故激活RI。各从机将接收到的地址与地机地址比较,结果1#机被选中,则其SM2清零;0#、2#机不变。接着传数;主机发送数据帧,
六、简述一种多外部中断源系统的设计方法。(给出图和程序)(10分)
答:原理电路如图所示
程序如下: 内容来自单片机之家www.dpj100.com
INT:PUSH PSW 内容来自单片机之家www.dpj100.com
PUSH A
JNB P1.0, IR0 ;扫描中断请求
JNB P1.1 , IR1
JNB P1.2, IR2
JNB P1.3, IR3
INTIR: POP A ;返回
POP PSW 内容来自单片机之家www.dpj100.com
IR0: 中断服务子程序 :中断服务 内容来自单片机之家www.dpj100.com
AJMP INTIR
IR1: 中断服务子程序
AJMP INTIR
IR2: 中断服务子程序
AJMP INTIR
IR3: 中断服务子程序
AJMP INTIP 内容来自单片机之家www.dpj100.com
七、简述行列式扫描键盘的工作原理。(8分)
答: 扫描键盘工作原理
(1) 首先X0~X3,始终接高电平,Y0~Y3给低电平,扫描P1.0~P1.3若全为高电平,则没有键按下,若有低电平,则有键按下。
(2) 接着Y0输出低电平,Y1~Y3输出高平,扫描P1.0~P1.3,若全为高电平,则没有键按下,若有低电平,则找出相位,得到所按的键。
(3) 再Y1输出低电平,Y0,Y2,Y3输出高电平,重复第2 步骤作.
(4) 再Y2输出低电平,Y0,Y1,Y3输出高电平扫描
(5) 再Y3输出低电平,Y0,Y1,Y2输出高电平扫描
根据据以上扫描,确定以上各键是否按下。
八、请回答:(共20分)
1、下图中外部扩展的数据存储器容量是多少?(2分)
2、三片6264的地址范围分别是多少?(地址线未用到的位填1) (6分,)
3、若外部程序存储器已扩展(未画出),请编写程序,要求:
(1) 将30H~3FH中的内容送入6264 1# 的前16个单元中;(6分)
(2) 将6264 2# 的前32个单元的内容送入40H~5FH中;(6分)
解:1.外部扩展的数据存储器为3片8K的RAM帮外扩容量为24中
2. A15 A!4 A13 地址范围
0 1 1 6000H~7FFFH
1 0 1 A000H~BFFFH
3.(1)程序如下:
ORG 0000H
RESET: AJMP MAIN ;复位,转主程序 内容来自单片机之家www.dpj100.com
ORG 0100H 内容来自单片机之家www.dpj100.com
MAIN: mov DPL,#ooH ;初始化DPTR
Mov DPH,#60H
Mov Ro,#30H. ;初始化R0
Loop: mov A,@R0
movx @DPTR, A
INC Ro
INC DPTR
CJNE R0,#40H,Loop
NOP
RET
(1) 程序如下:
ORG 0000H
RESET:AJMP MAIN ;转主程序
ORG 0100H
MAIN: MOV DPL#00H ;初始化DPTR
MOV DPH,#0A0H
MOV R0,#40H ;初始化 R0
Loop2: movx A,@DPTR
Mov @Ro,A
INC DPTR
INC Ro
CJNE Ro,#60H,Loop2
NOP
RET
单片机考试试题及答案(4)
一、填空题(15分,每空1分)
1.MCS—51单片机的P0—P4口均是 I/O口,其中的P0口和P2口除了可以进行数据的输入、输出外,通常还用来构建系统的 和 ,在P0—P4口中, 为真正的双向口, 为准双向口。
2.MCS—5l单片机的堆栈区只可设置在 ,堆栈寄存器5P是 位寄存器。
3.MCS—51单片机外部中断请求信号有电平方式和 ,在电平方式下,当采集到INT0、INT1的有效信号为 时,激活外部中断。
4.定时器/计数器的工作方式3是指的将 拆成两个独立的8位计数器。而另一个定时器/计数器此时通常只可作为 使用。
5.MCS—96单片机的最大寻址空间是 ,该空间的地址范围为 ,系统上电及复位的程序入口地址为 ,芯片配置字节CCB的地址为 。
二、简答题(15分,每小题5分)
1.51系列单片机具有几个中断源,分别是如何定义的其中哪些中断源可以被定义为高优先级中断,如何定义
2.各中断源对应的中断服务程序的入口地址是否能任意设定
3.如果想将中断服务程序放置在程序存储区的任意区域,在程序中应该作何种设置请举例加以说明。
三、参数计算题(16分)
已知一单片机系统的外接晶体振荡器的振荡频率为11.059MHz,请计算该单片机系统的拍节P、状态S、机器周期所对应的时间是多少 指令周期中的单字节双周期指令的执行时间是多少
四、改错题(共5分,每小题1分)
以给出的指令操作码为依据,请判断MCS—5l单片机的下列各条指令的书写格式是否有错误,如有请说明错误原因。
1.MUL R0R1
2.MOV A,@R7
3.MOV A,#3000H
4.MOVC @A+DPTR,A
5.LJMP #1000H
五、寻址方式(5分,每问1分)
说明MCS—51单片机的下列各条指令中源操作数的寻址方式(可直接在每条指令后面书写)
1.ANL A,20H
2.ADDC A,#20H
3.JZ rel
4.CLR C
5.RRA
六、使用简单指令序列完成以下操作(12分)
1.请将片外RAM20H—25H单元清零
2.请将ROM3000H单元内容送R7
七、编程题(18分)
已知一MCS—51单片机系统的片内RAM 20H单元存放了一个8位无符号数7AH,片外扩展RAM的8000H存放了一个8位无符号数86H,试编程完成以上两个单元中的无符号数相加,并将和值送往片外RAM的01H、00H单元中,同时将所编写程序运行完成后的数据和状态添入下表中给出的PSW的有关位以及寄存器A、DPTR和RAM单元中。
| A | DPTR | 片外01H | 片外00H | 片外8000H |
|
|
|
|
|
|
八、判读电路题(14分)
下图为MCS—51单片机系统中混合扩展多片存储器2764、6264芯片部分连线电路图。
试分析电路并回答下列问题:
1.请简单叙述2764芯片的功能、容量,在电路中起什么作用
2.请简单叙述6264芯片的功能、容量,在电路中起什么作用
3.请分析各片2764、6264所占用的单片机数据存储空间的地址范围是多少
单片机模拟试卷004参考答案
一、填空题(15分,每空1分)
1.并行 数据总线 地址总线 P0 P1—P3
2.片内数据存储区(器)
3.脉冲方式 低电平
4.定时器/计数器0 串行口的波特率发生器
5.64K 0000H—FFFFH 2080H 2018H
二、简答题(15分,每小题5分)
1.具有5个中断源,分别是外部中断INT0和外部中断INT1、定时器溢出中断0和定时器溢出中断1以及串行中断。通过对中断优先级寄存器IP的设置,每个中断源都可以被定义为高优先级中断。(6分)
2.各中断源的入口地址已经在中断地址区中被定义了,不能任意设定。(3分)
3.如果要将中断服务程序放置在程序存储区的任意区域,在程序中要通过在中断地址区的对应地址上设置跳转指令才可实现对中断服务程序的执行。
例如:外部中断O的中断服务程序INTOP放置在程序存储区的任意区域,此时,通过以下方式,可实现对中断服务程序的执行:(4分)
ORGO003H (2分)
JMP INTOP
列举其他中断跳转的例子也可,但叙述的中断源要与中断地址相对应才可得分,如外中断0对应0003H地址。
三、参数计算题(16分)
P=1/f=(1/11.059×106)=0.09×10-6s
=90ns
S=2P=2×90ns=180ns
机器周期=12P=12×90ns=1.08μs
双指令周期=2×机器周期=2.16μs
判题标准:每问4分,结果错,分值全扣;结果正确,量纲错或
四、改错题:(共5分,每小题1分)
以给出的指令操作码为依据,请判断MCS—51单片机的下列各条指令的书写格式是否有错误,如有请说明错误原因。
1.MUL RoRl 乘法指令应使用A、B寄存器操作
2.MOV A,@R7 间接寄存器使用R7有误,间址寄存器只能使用R0、R1
3.MOV A, #3000H 8位累加器A不能接受16位数据
4.MOVC @A+DPTR,A MOVC指令为对程序存储区操作指令,累加器的内容不可通过变址方式送入程序存储器,两操作数写反了。
5.UMP #1000H 长转移指令中的操作数为16位转移地址,不能用立即数的形式来表达。
五、寻址方式(5分,每问1分)
说明MCS—51单片机的下列各条指令中源操作数的寻址方式(可直接在每条指令后面书写)
1.ANL A,20H 直接寻址
2.ADDC A, #20H 立即寻址
3.JZ rel 相对寻址
4.CLR C 位寻址
5.RRA 寄存器寻址
六、使用简单指令序列完成以下操作(12分,每小题6分)
1.请将片外RAM 20H—25H单元清零
MoV R0,#20H
MOV R7,#06H
CLR A
LOOP:MOVX @R0,A
INC R0
DJNZ R7,LOOP
2.请将ROM 3000H单元内容送R7
MOV DPTR, #3000H
CLR A
MOVC A,@A+DPTR
MOV R7,A
七、编程题(18分,其中编程12分,表中每一空1分)
| A | DPTR | 片外01H | 片外00H | 片外8000H |
0 | 01H | 8000H | 0lH | 00H | 86H |
MOV DPTR,#8000H ;加数单元地址送DPTR
MOVX A,@DPTR ;取加数之一
ADD A,20H ;两数相加
MOV R0,#00H ;和值的低位送片外00H单元
MOVx @R0,A
INC R0
CLR A ;计算和值的高位
ADDC A,#00H
MOVx @R0,A ;高位送片外01H单元
RET
编程要考虑将进位位的值作为结果的一部分取出来。采用其他编程方式也可以,但结果是不会改变的,和值=100H
八、判读电路题(14分)
1.请简单叙述2764芯片的功能、容量,在电路中起什么作用(3分)
2764为EPROM型存储器,其容量为8K,在电路中通常是作为程序存储器使用。
2.请简单叙述6264芯片的功能、容量,在电路中起什么作用(3分)
6264为随机存储器,其容量为8K,在电路中通常是作为数据存储器使用。
3.请分析各片2764、6264所占用的单片机数据存储空间的地址范围是多少
U3:0000H—1FFFH (8分,各2分)
U4:2000H—3FFFFH
U5:Co00H—DFFFH
U6:E000H—FFFFH