一、填空
1、MCS-51单片机访问外部存储器时,利用 ALE 信号锁存来自 P0 口的低8位地址信号。
2、MCS-51系统中,当信号有效时,表示从P0口稳定地读入了 程序指令 。
3、通常单片机上电复位时PC=0000H,SP= 07H ;而工作寄存器则缺省采用第 0 组,这组寄存器的地址范围是从 00H~07H开始。
4、MCS-51单片机的存储器从物理结构上可划分 4 个空间,从逻辑上分别可划分 3 个空间。
5、MCS-51单片机8031中有 2 个16位的定时/计数器,可以被设定的工作方式有 4 种。
6、MCS-51有 5 中断源,有 2 中断优先级,优先级由软件填写特殊功能寄存器 IP 加以选择。
7、当/EA接地时,MCS-51单片机将从 PC 的地址0000H开始执行程序。
8、中断请求信号有 电平 触发和 边沿 触发两种触发方式。
9、用串行口扩展并行口时,串行接口的工作方式应选为 方式0 。
10. MCS-51复位后
·CPU从 0000 H单元开始执行程序。
·SP的内容为 07 H , 第一个压入堆栈的数据将位于 内部 RAM的 08 H单元。
·SBUF的内容为 不确定 。
·ADDC A , #54H指令执行后 , PSW寄存器的内容将等于 01 H。
11. 8051AH
·片内设置有4KB的ROM , 当端保持高电平时 , PC(程序计数器)值超过 0FFF H
时 , 将自动转向执行外部程序存储器的程序。
·可做通用I/O的至少有_P1_口的I/O线。_P0_口作地址/数据总线, 传送地址码的
_低_8位 , P2 口作地址总线 , 传送地址码的_高_8位。
12.存储器组织
·8051片内RAM有 128 个字节 , 片外RAM寻址范围为 K 个字节。
·对8051来说,MOV A , @R0指令中的R0之取值范围最大可为 FF H。
·位地址7FH还可写成 7F H.1_ 。
·访问片外RAM , 读选通信号为 /RD , 写选通信号为 /WR , 地址指针分别为
SP (8位)和 DPTR (16位)。
·MCS-51专用寄存器中IE是 中断控制 寄存器 , TMOD是 定时器方式控制 寄存器, SCON是 串行口控制 寄存器。
13.定时器和串行口
·定时器工作于方式2为 8 位计数器 , 工作于方式1为 16 位计数器,工作于方式0为 13 位计数器 。
·在串行通讯中, 串行口工作于方式1, 若字符传送率为120字节/秒, 则波特率等于 1200 波特。
·8051的 定时器T1 作串行口方式1和方式3的波特率发生器。
14.中断系统
·定时器T0和定时器T1的中断标志分别是 TF0 和 TF1 。
·在外部中断中 , 当IT1为1时为 边沿 触发 , 当IT1为0时为 电平 触发。
·在单一中断系统里 , 外部中断响应时间约在 3 到 8 个机器周期之间。
·和的中断标志分别是 IE0 和 IE1 。
·外部中断 的中断矢量地址为 0013 H ,串行口中断的矢量地址为 0023 H。
· RETI 指令以及任何访问 IE 和 IP 寄存器的指令执行过后,CPU不能马上响应中断。
15.指令系统
·在R7初值为00H的情况下 , DJNZ R7 , rel 指令将循环执行 256 次。
·欲使P1口的高4位输出为1而低4位不变 , 应执行一条 ORL P1 ,#0F0H 指令。
·欲使P3口的低4位输出0而高4位不变,应执行一条 ANL P3,#0F0H 指令。
·欲使P2口的低4位输出取反而高4位不变,应执行一条 XRL P2,#0FH 指令。
· MUL AB指令执行后 , OV标志为1 , 则(B)≠ 00 H。
·DIV AB指令执行后,OV标志为1,则此指令执行前(B)= 00 H。
·MCS-51的两条查表指令是 MOVC A,@A+DPTR 和 MOVC A,@A+PC 。
二、选择题(从备选答案中选择一个正确答案,并将代号写在括号内。每题2分,共20分)
1、在CPU内部,反映程序运行状态或反映运算结果的一些特征寄存器是( B )
(A)PC (B)PSW (C)A (D)SP
2、MCS-51单片机外扩存储器芯片时,4个I/O口中用作数据总线的是(B )
(A)P0和P2口 (B)P0口 (C)P2和P3口 (D)P2口
3、在中断服务程序中,至少应有一条( D )
(A)传送指令 (B)转移指令 (C)加法指令 (D)中断返回指令
4、访问外部数据存储器时,不起作用的信号是( C )
(A) (B) (C)/ (D)ALE
5、以下指令中,属于单纯读引脚的指令是( C )
(A)MOV P1,A (B)ORL P1,#0FH
(C)MOVC C ,P1.5 (D)DJNZ P1,LAB
6、要用传送指令访问MCS-51片外RAM,它的指令操作码助记符应是( B )
(A)MOV (B)MOVX (C)MOVC (D)以上都是
7、若MCS-51中断源都编程为同级,当它们同时申请中断时,CPU首先响应(B)
(A) (B) (C)T1 (D)T0
8、MCS-51响应中断时,下面哪一个条件不是必须的( D )
(A)当前指令执行完毕 (B)中断是开放的
(C)没有同级或高级中断服务 (D)必须有RETI指令
9、当MCS-51进行多机通讯时,串行接口的工作方式应选为(C )
(A)方式0 (B)方式1 (C)方式2 (D)方式0或方式2
10、某种存储器芯片是8KB*4/片,那么它的地址线根数是( C )
(A)11根 (B)12根 (C)13根 (D)14根
三、简答题
1、MCS-51单片机内部包括哪些主要逻辑功能部件?
答:MCS-51单片机主要由下列部件组成: 1个8位CPU;1个片内振荡器及时钟电路;4KB ROM程序存储器,256BRAM;21个特殊功能寄存器;2个16位定时/计数器;4个8位并行I/O口及1个可编程全双工串行接口;可寻址KB的外部程序存储器空间;可寻址KB的外部数据存储器空间;5个中断源、两个优先级中断嵌套中断结构。
2、简述MOV、MOVX、MOVC三条指令的异同点。
答:MOV是用来访问内部RAM的,MOVX是用来访问外部RAM的,MOVC是用来访问内部ROM的。
3、MCS-51单片机能提供几个中断源?几个中断优先级?在同一优先级中各中断源优先顺序如何确定?
答:提供5个中断源,2个优先级,从高到低依次是:外部中断0,定时器0,外部中断1,定时器1,串口中断。
4、简述MCS-51单片机实现多机通讯的过程。
答:主机SM2位设为0,从机刚开始都设为1,说明从机刚开始只接受地址帧,当主机把地址帧发送给从机后,从机把接受的地址帧与自身地址相比较,与自身地址相同的从机把SM2清零,其他从机SM2保持1,这样当主机发来数据帧时,只有SM2为0的从机才能接受到数据帧,从机接受完数据帧之后又把SM2置位。
5、简述串行口接收和发送数据的过程。
答:接受数据:当串口接收数据时,接受完后RI置1,然后把SBUF中的数据传送到A
发送数据:先把要发送的数据放到A中,然后移入SBUF,当TI置1时,说明数据发送完毕。
6、简述程序状态寄存器PSW中各位的含义。
CY(PSW.7)进位标志位。 AC(PSW.6)辅助进位标志位
F0(PSW.5)标志0 RS1、RS0(PSW.4、PSW.3)寄存器区选择控制位1和0
OV(PSW.2)溢出标志位 P(PSW.0)奇偶标志位
7、MCS-51单片机设有4个8位并行端口,实际使用中数据信息由哪个端口传送?16位地址如何
形成?
答:P0口SBUF中的数据输出数据信息,同时P0口输出16位地址中的低四位,P2口输出16位地址中的高四位
四、软件分析和设计
(1)把布尔表达式P1.0=20H.7·PSW.1+用四条指令解出来:
① MOV C,20H.7 ② ANL C,PSW.1 ③ ORL C,F0 ④ MOV P1.0,C 。
(2)填好下列程序段中的空白指令或数据
① RL A ② CPL P1.3
RL A = SWAP A CPL P1.4 = XRL P1,18H
RL A
RL A
MOV A,@R0
MOVX @DPTR,A
INC R0
INC R1
DEC R2
CJNE R2,#0,LOOP
END
(3)试编写一段程序 , 将内部数据存储器以30H开始的16个单元内容传送到外部数据存储器以1000H开始的单元中去。
答:ORG 0000H
SJMP MAIN
ORG 0030H
MAIN:
LOOP: MOV R0,#30H
MOV DPTR,#1000H
MOV R2,#16
(4)试编写一段程序 , 将2000H、2001H单元中的低半字节分别送入2002H单元中的高半字节和低半字节中。
MOV @DPTR,A
ANL 2000H,#0F0H
MOV DPTR,#2000H
MOV A,@DPTR
ORL 2002H,A
END
答:ORG 0000H
SJMP MAIN
ORG 0030H
ANL 2001H,#0FH
MOV DPTR,#2001H
MOV A,@DPTR
MOV DPTR,2002H
(5)8051单片机系统中,外部中断用作键盘输入,选用电平触发方式;定时器10工作于模式0定时,采用查询方式;定时器T0工作于模式1计数,采用中断方式。试对寄存器TMOD、TCON、IE进行初始化编程。
答:MOV TMOD,#00000101B
MOV TCON,#01010100B
MOV IE,#10001110B
(6)已知内部数据存储器50H和60H单元的内容分别为30H和31H , 执行下列一段程序后,试分析有关单元内
容。
MOV R0 , #50H
MOV A , @R0
MOV @R0 , 60H
MOV 60H , A
MOV R0 , #60H
(R0)= 60H ; (A)= 30H ; (50H)= 31H ; (60H)= 30H 。
MOVX @DPTR,A
MOV A,50H
ANL A,#0F0H
MOV DPTR,#2000H
MOV @DPTR,A
END
(7)试编写一段程序 , 将内部数据存储器50H单元中的字节内容拆开,高半字节送外部数据存储器2000H单元,低半字节送外部数据存储器2001H单元。
答:ORG 0000H
SJMP MAIN
ORG 0030H
MAIN:
MOV A,50H
ANL A,#0FH
MOV DPTR,#2001H
(8)8051单片机系统中,外部中断用作键盘输入,选用边沿触发方式;定时器T0工作于模式1定时,采用中断方式;定时器T1工作于模式2计数,采用查询方式。试对寄存器TMOD、TCON、IE进行初始化编程。
答:MOV TMOD,0X61H
SETB EA
SETB EX1
SETB IT1
SETB TR1
SETB ET0
SETB TR0
五、硬件分析和设计
1 . fosc=6MHZ , 要求在P1.0脚输出一周期为40ms的方波。
方波的周期由定时器T0确定,采用查询方式实现。
MOV TL0,#0F0H
D0:JBC TF0,D1
JMP D0
D1:CPL P1.0
JMP D2
RET
END
ORG 00H
START:CLR LED
MOV TMOD,#01H
MOV TH0,#0D8H
MOV TL0,#0F0H
SETB TR0
D2:MOV TH0,#0D8H
2 . 8051外扩4K EPROM作为程序存储器的电路如
下图所示,试标出图中引脚符号①~③的名称,并指
出程序存储器的地址范围。,
①、数据位D0~D7
②、地址低八位A0~A7
③、外部ROM读选通信号
地址范围:5000H~5FFFH
3.fosc=12MHZ , 要求在P1.0脚输出一周期为40ms的方波。
方波的周期由定时器T1确定,采用中断方式 , 编写有关的程
SETB ET1
SETB TR1
SJMP $
RET
T1INT:CPL LED
MOV TH1,#3CH
MOV TL1,#0B0H
RETI
END
序段实现。
答: ORG 0000H
LJMP START
ORG 001BH
LJMP T1INT
START:CLR LED
MOV TMOD,#10H
MOV TH1,#3CH
MOV TL1,#0B0H
SETB EA
5.根据下图的连接,写出启动ADC0809通道IN5的两条指令和读转换结果的两条指令。
74LS373
P0
8051
WR
P2.5
RD
启动IN5: A0 A1 A2
CLR P2.5
D0~D7
START A
ALE B
C
OE
ADC0809
CLR P3.6
+ ++
读转换结果: ○●
●
+
CLR P2.5
○
CLR P3.7
6、编写航标灯控制程序。要求航标灯在白天熄灭,
在夜晚断续点亮,时间间隔2秒,即亮2秒,息2秒,
MOV TL1,#10H
JMP $
RET
T0INT:
CLR P1.0
SETB P1.0
MOV TH0,#00H
MOV TL0,#0C8H
RETI
T1INT:
CPL P1.7
MOV TH1,#27H
MOV TL1,#10H
RETI
END
周期循环进行。
ORG 0000H
LJMP START
ORG 000BH
LJMP T0INT
ORG 001BH
LJMP T1INT
START:MOV TMOD,#5BH
SETB EA
SETB ET0
SETB ET1
SETB TR0
SETB TR1
MOV TH0,#00H
MOV TL0,#0C8H
MOV TH1,#27H
7. 用2KB的EPROM存储器2716设计一外扩4KB的程序存储器,画出详细的硬件电路图,写出各存储器芯片的地址空间。
8.用8KB的SRAM存储器62设计一外扩16KB的数据存储器,画出详细的硬件电路图,写出各存储器芯片的地址空间下载本文