当前位置:首页 > 自动化单片机原理及应用答案
一、填空题(每空1.分,共30分)
1、MCS-8051系列单片机字长是 8 位,有 40 根引脚。
2、8051有 4 个并行I/O,每个端口都是 8 位准双向I/O,每个端口都包含 一个 锁存器 、一个输出 驱动器 、一个输入 缓冲器 ,每个I/O端口均 有 两种 读入方法。
3、MCS-51系列单片机的程序存储器容量为 4KB ,片内、外 统一 编址;但数据存储器则为片内、外 独立 编址,内部为 128B ,外部为 64KB . 4、8051复位后,PC= 0000 H。若希望从片内存储器开始执行,EA脚应接 高 平, PC值超过 0FFFH H时,8051会自动转向片外存储器继续取指令执行。 5、8051的中断向量表在 0003 H、 000B H和0013H、001BH、0023H。 6、MOV A,40H 指令对于源超作数的寻址方式是 直接 寻址。 7、将CY与A的第0位的非求或的指令是 ORG /ACC.0 ,C ,若原A=0,执行
后A= FFH 。 8、已知(A)=64H,(R0)=28H,(28H)=0BCH,写出执行如下程序后A= 67H 。 ANL A, #25H
ORL 28H, A XRL A, @R0 CPL A
9、MCS-51单片机中的串行接口是 一个全双工通信接口 ,能同时进行发送和接收;共有 四种 工作方式。通过对特殊寄存器SCON、PCON的设置,确定串行通信方式。
10、MCS—51单片机的工作寄存器分成 4 个组,每组为 8 个单元,
用 R0—R7 表示,复位后,工作寄存器位于 0 组。
二、简答题(共30分:每题5分) 1、写出8051单片机的40引脚的功能。
答:电源:Vss(20)接电源地端;Vcc40接电源+5V端。
外部时钟信号:XTAL2(18)外接晶体的一个引脚;XTAL1(19)外接晶体另一
个引脚。
RST/Vpd(9):用于输入复位信号,也可用于备用电源输入端。
PSEN(29):用于输出外部程序存储器选通信号。 ALE/PROG(30):用于输出允许地址锁存信号。
EA/VPP(31):用于输入是从外部程序存储器取指还是从内部程序存器取
指的选择信号。
P0口(32-39):为双向输入/输出口,如果系统接有外部存储器,则P0
口作为数据总线和低8位的地址总线共用口。
P1口(1—8):为准双向输入/输出口
P2口(21—28):为准双向输入/输出口,如果系统接有外部存储器,则
为高8位地址。
P3口(10—17):为准双向输入/输出口, P3.0(RXD):串行输入端 P3.1(TXD):串行输出端
P3.2(INT0):外部中断0输入端,低电平有效。 P3.3(INT1):外部中断1输入端,低电平有效。 P3.4(T0):定时/计数器0外部事件计数输入端。
P3.5(T1):定时/计数器1外部事件计数输入端。 P3.6(WR):外部数据存储器写选通信号,低电平有效。 P3.7(RD):外部数据存储器读选通信号,低电平有效。
2、片内数据存储器RAM低128个单元划分哪三个主要部分?每部分的地址空
间如何分配的?
答:1)、工作寄存器区:地址空间00—1FH;0组00H—07H;1组08H—0FH;2
组10H—17H;3组18H—1F;
2)、位寻址区:地址空间20H—2FH;位地址为00H—7FH
3)、用户区:30H—7FH
3、从P1口输入一个数,若为正数则存入30H单元中,若为负数则将其取反存入30H单元中。(编写程序) 答: MOV A, P1
JNB ACC.7, STOR CLP A
STOR: MOV 30H,A
4、 指出下列每条指令操作数的寻址方式和功能。
(1) MOV A, #00H (立即数寻址 )
(2) MOV A,26H (直接寻址 )
(3) MOV A,@R7 (寄存器间接寻址) (4) MOV A,R3 (寄存器寻址 ) (5) MOVC A,@A+PC (变址寻址 ) (6) SJMP LOOP (相对寻址 )
5、试编程产生三角波信号经D/A转换输出(设DAC0832的入口地址00FEH) OGR 0030H
MOV DPTR,#00FEH; 指向0832的端口地址
MOV A,#00H
LP1: MOVX @DPTR,A
INC A
JNZ LP1; 上升到最大值FFH
LP2: DECA
MOVX @DPTR, A;
JNZ LP2; 下降到最小值00H SJMP LP1; 重复输出
6、串行接口工作过程在发送和接收分别由几个条件约束? 答:串行接口工作过程在发送两个条件:
1)由软件对TI清零;
2)执行一条将数据写入SBUF的指令。 串行接口接收三个条件: 1) REN=1允许接收; 2) RI已经清零;
3) 监测到RXD引脚从1到0的跳变 。
三、改错题(10分)
请判断MCS-51单片机的下列各条指令的书写格式是否有错误,如有错误请改正。 1、 CLR A (正确 ) 2、 MUL R0,R1 (错误,正确为:MUL AB ) 3、 MOV DPTR,1050H (错误,正确为:MOVX DPTR,#1050H ) 4、 MOV A,@R7 (错误,正确:MOV A,@R0 ) 5、 ADD 30H,20H (错误,正确:MOV A, 30H;ADD A,20H) 6、 MOV R1,C (错误,正确:MOV BIT,C ) 7、 JMP @RO+DPTR (错误,正确:JMP @ A+DPTR ) 8、 MOV A,#3000H (错误,正确:MOV A,#30H ) 9、 MOVC @A+DPTR,A (错误,正确:MOVC A, @A+DPTR ) 10、 MOVX A,@A+DPTR (错误,正确:MOVX A,@DPTR )
四、使用定时器T0以工作方式2,由P1.6输出周期为100 ,连续等宽方波。已知进晶振频率为12MHZ。(10分)
解:(1)计算计数初值
等宽方波周期100 定时器应为50 ,设计数初值为:
(28-X)X12/(12X106)=50X10-6
X=28-50=100H-32H=0CEH
( 2 ) 程序设计
主程序:
ORG 1000H
MAIN: MOV TMOD,#02H
MOV TH0,#0CEH MOV TL0,#0CEH
SETB EA SETB ET0 SETB TR0 SJMP $
中断服务程序:
ORG 000BH CPL P1.6 RETI
五、(10分)已知电路如图所示,试编程程序实现如下功能: (1)若S0闭合、S1断开,红灯亮、绿灯、黄灯灭; (2)若S0断开、S1闭合,绿灯亮,红灯、黄灯灭; (3)若S0-S1均闭合或断开,黄灯亮、红灯、绿灯灭。
S0 P1.0 P1.1 P1.2 P1.3 P1.4 +5V S1 红 绿 黄 图 电路图
解:编写程序如下:
MOV P1, #03H ;红灯、黄灯、绿灯均灭
LOOP: JNB P1.0, LP1 ;S0断开,转判S1
JINB P1.1, RED ;S0闭合,S1断开,转红灯亮
YELW: SETB P1.4
CLRP1.2 CLRP1.3
SJMP LOOP ;转循环
LP1: JNB P1.1, YELW ;S0、S1均断开,转黄灯亮 GRN: SETB P1.3 ;绿灯亮
CLRP1.2 CLRP1.4
SJMP LOOP
RED: SETB P1.2 ;红灯亮
CLR P1.3 CLR P1.4 SJMP LOOP
六、设8255A控制字寄存器地址为7FFFH,PA口为输入接一组开关,PB口
为输出接一组指示灯,如果要将8051的寄存器R2的内容送指示灯显示,将开关状态读入8051的累加器A,PC口为输出口,并且用都是用工作方式0,试对8255A初始化编程。(10分)
答: MOV DPTR,#7FFFH; 置8255A控制口地址
MOV A , #90H ; 工作方式控制字口地址 MOVX @ DPTR, A; 工作方式控制字送8255A控制口 MOV DPTR, #7FFFDH; 置8255A的B口地址 MOV A, R2
MOVX @DPTR, A; 将R2内容从B口输出 MOV DPTR, #7FFCH; 置8255A的A口地址 MOVX A, @DPTR; 将A口内容读入
共分享92篇相关文档