单片机原理及应用试题及答案
广西工学院 2002 — 2003 学年第 2 学期课程考核试题 考核课程 单片机原理及应用 考核班级 自动化00级
学生数 145 印数 150 考核方式 闭卷 考核时间 120 分钟
一.填空题(每空1分,共20分)
1、单片机与普通计算机的不同之处在于其将 CPU 微处理器 、 存储器 和 I/O口 三部分集成于一块芯片上。
2、使用双缓冲方式的D/A转换器,可实现多路模拟信号的 同时 输出。习题11.4
3、通过堆栈操作实现子程序调用,首先就要把 PC 的内容入栈,以进行断点保护。调用返回时,再进行出栈保护,把保护的断点送回到 PC 。习题2.17
4、在基址加变址寻址方式中,以 累加器A 作变址寄存器,
以 DPTR 或 PC 作基址寄存器。3.3
5、假定累加器A中的内容为40H,执行指令
1000H:MOVC A,@A+PC
后,把程序存储器 1041H 单元的内容送入累加器A中。
6、在寄存器间接寻址方式中,其“间接”体现在指令中寄存器的内容不是操作数,而是操作数的 地址 。3.10
7、假定A=83H,(R0)=17H,(17H)=0B5H,执行以下指令:
ANL A,#17H
ORL 17H,A
XRL A,@R0
CPL A
后,A的内容为 4BH 。
解析: ANL A,#17H ;A中83H与17H相与,(A)=03H
ORL 17H,A ;(17H)中0B5H与(A)中03H相或,(17H)=B7H XRL A,@R0 A ;(A)中03H与(17H)中B7H异或,(A)=B4H
CPL A ;对A取反, A=4BH
8、已知程序执行前有A=01H,SP=42H,(41H)=FFH,(42H)=FFH。下述程序执行后:
POP DPH
POP DPL
MOV DPTR,#3000H
RL A
MOV B,A
MOVC A,@A+DPTR
PUSH A
MOV A,B
INC A
MOVC A,@A+DPTR
PUSH A
RET
ORG 3000H
DB 10H,80H,30H,80H,50H,80H
请问:A= 80H ,SP= ,(41H)= ,(42H)= 。
9、在存储器扩展中,无论是线选法还是译码法,最终都是为了扩展芯片的 片选 端提供信号。
10、在MCS-51中,PC和DPTR都用于提供地址,但PC是为了访问 程序 存储
器提供地址,而DPTR是为访问 数据 存储器提供地址。
11、16KB RAM存储器的首地址若为3000H,则末地址为 H。
解析:1000H=0001 0000 0000 0000B=2^12=4K,16K就是4000H,即:0100 0000 0000 0000B=2^14
所以末地址为:7000H-1=6FFFH
二.选择题(每题2分,共16分)
1、8051与8751的区别是:
A、内部数据存储但也数目的不同 B、内部程序存储器的类型不同
C、内部数据存储器的类型不同 D、内部的寄存器的数目不同
2、判断以下有关PC和DPTR的结论是否正确?
A、DPTR是可以访问的,而PC不能访问。
B、它们都是8位的存储器
C、它们都有加1的功能。
D、DPTR可以分为两个8位的寄存器使用,但PC不能。
3、PC的值是
A、当前正在执行指令的前一条指令的地址 B、当前正在执行指令的下一条指令的地址
C、当前正在执行指令的地址 D、控制器中指令寄存器的地址
4、判断下列说法是否正确
A、 8031共有21个特殊功能寄存器,它们的位都是可以用软件设置的,因此,是可以进行位寻址的。
B、 内部RAM的位寻址区,只能供位寻址使用,而不能供字节寻址使用。
C、 程序计数器PC不能为用户编程时直接使用,因为它没有地址。
5、下列说法错误的是:
A、 各中断发出的中断请求信号,都会标记在MCS-51系统的IE寄存器中。
B、 各中断发出的中断请求信号,都会标记在MCS-51系统的TCON与SCON寄存器中。
C、 各中断发出的中断请求信号,都会标记在MCS-51系统的IP寄存器中。
D、 各中断发出的中断请求信号,都会标记在MCS-51系统的TMOD寄存器中。
6、在MCS-51中,需要外加电路实现中断撤除的是:
A、电平方式的外部中断 B、定时中断
C、外部串行中断 D、脉冲方式的外部中断
7、 判断下列的说法是否正确?
A、 特殊功能寄存器SCON,与定时器/计数器的控制无关。
B、 特殊功能寄存器TMOD,与定时器/计数器的控制无关。
C、 特殊功能寄存器IE,与定时器/计数器的控制无关。
D、 特殊功能寄存器TCON,与定时器/计数器的控制无关。
8、 判断下列说法是否正确?
A、在8155H芯片中,决定端口和RAM单元编址的信号线是AD7-AD0和WR。
B、 由于8155H不具有地址锁存功能,因此在与8031的接口电路中必须加地
址锁存器。
C、8255A的B口可以设置成方式2。
D、8255A具有三态缓冲器,因此可以直接挂在系统的数据总线上。
9、区分MCS-51单片机片外程序存储器和片外数据存储器的最可靠的方法是:
A、看其芯片的型号是ROM还是RAM
B、 看其离MCS-51芯片的远近
C、看其位于地址范围的低端还是高段看其是与RD信号连接还是与PSEN信号
连接
10、下列说法正确的是:
A、 同一级别的中断请求按时间的先后顺序响应。
B、 同级中断不能嵌套。
C、 低优先级中断请求不能中断高优先级中断请求,但是高优先级中断请求能中断低优先级中断请求。
D、 同一时间同一级别的多中断请求,将形成阻塞,系统无法响应。
三.简答题(每题4分,共20分)
1、片内RAM低128个单元划分为哪3个主要部分?各部分的主要功能是什么?
2、如果手中仅有一台示波器,可通过观察哪个引脚的状态,来大致判断MCS-
51单片机正在工作?
3、若SP=60H,标号LABEL所在的地址为3456H。LCALL指令的地址为2000H,执
行指令如下:
2000H LCALL LABEL
后,堆栈指针SP和堆栈内容发生了什么变化?PC的值等于什么?如果将指令LCALL 直接换成ACALL是否可以?如果换成ACALL指令,可调用的地址范围是什么?
4、定时/计数器用作定时器时,其计数脉冲由谁提供?定时时间与哪些因素有关?
5、常用的I/O接口编址有哪两种方式?它们各有什么特点?MCS-51的I/O端口编址采用的是哪种方式?
四.计算与编写程序(共40分)
1、试编写程序,查找在内部RAM的40H~60H单元中是否有0FFH这一数据。若
有,则将51H单元置为“00H”;若未找到,则将51H单元置为“01H”。(5分)
2、编写出外部中断1为跳沿触发的中断初始化程序。(5分)
3、编写一段程序,功能要求为:当P1.0引脚的电平正跳变时,对P1.1的输入
脉冲进行计数;当P1.2引脚的电平负跳变时,停止计数,并将计数值写入R0、R1(高位存R1,低位存R0)。(15分)
4、根据硬件图计算ADC0809的8个模拟量输入通道的地址,并编写程序实现8个通道的模拟量循环采集,采集结构存放至片内RAM 40H~47H中。(15分)
广 西 工 学 院 课 程 考 试
试题答案要点及评分细则
课程名称 单片微机原理及应用 /单片机技术 专业年级: 自动化00级; 填写人: 蔡启仲 方华 2002—2003 学年第 2 学期
参 考 答 案 及 得 分 要 点 评分标准(得分)
一.填空题(每空1分,共20分)
1、答:CPU、存储器、I/O口
2、答: 同步
3、答:PC、PC
4、答:累加器A,DPTR、PC
5、答:1041H
6、答:地址
7、答:A的内容为 4BH 。
8、答:A= 80H ,SP= 42H ,(41H)= 30H ,(42H)= 80H ,PC= 8030H 。
9、答: 片选 。
10、答: 程序 、 数据
11、答: 6FFF H。
二.选择题(每题2分,共16分)
1、答:B
2、答:对、对、对、对
3、答:B
4、答:错、错、对。
5、答:A、C、D
6、答:A
7、答:A对,B、C、D错
8、答:错、错、错、错
9、答:A、D对
10、答:A、B、C对
三.简答题(每题4分,共20分)
1、片内RAM低128个单元划分为哪3个主要部分?各部分的主要功能是什么?
答:工作寄存器区、位寻址区、数据缓冲区
2、答: ALE引脚
3、答:1)SP=SP+1=61H (61H)=PC的低字节=03H
SP=SP+1=62H (62H)=PC的高字节=20H
2)PC=3456H
3)可以
4)2KB=2048 Byte
4、答:定时/计数器作定时时,其计数脉冲由系统振荡器产生的内部时钟信号12分频后提供。定时时间与时钟频率和定时初值有关。
5、常用的I/O接口编址有哪两种方式?它们各有什么特点?MCS-51的I/O端口编址采用的是哪种方式?
解:一.独立编址方式:独立编址方式就是I/O地址空间和存储器地址空间分开编址。独立编址的优点是I/O地址空间和存储器地址空间相互独立,界限分明。但是,却需要设置一套专门的读写I/O的指令和控制信号。二.统一编址方式:这种编址方式是把I/O端口的寄存器与数据存储器单元同等对待,统一进行编址。统一编址的优点是不需要专门的I/O指令,直接使用访问数据存储器的指令进行I/O操作,简单、方便且功能强大。MCS-51单片机使用的是I/O和外部数据存储器RAM统一编址的方式。
四.计算与编写程序(共40分)
1、答:START: MOV R0,#40H
MOV R2,#20H
LOOP: MOV A,@R0
CJNE A,#0FFH,NEXT
MOV 51H,#00H
LJMP EXIT
NEXT: INC R0
DJNZ R2,LOOP
MOV 51H,#01H
EXIT: RET
2、答:SETB IT1
SETB EX1
SETB EA
3、答:将P1.1的输入脉冲接入T0,即使用T0计数器完成对P1.1口的脉冲计数。编写程序如下:
ORG 0000H
LJMP MAIN
ORG 000BH
LJMP IT0P
MAIN: JNB P1.0,MAIN
MOV TMOD,#05H ;定时器/计数器T0为计数方式1
SETB TR0 ;启动T0,开始计数
SETB ET0 ;允许T0中断
SETB EA ;CPU开中断
WAIT: JB P1.2,WAIT
CLR EA
CLR TR0
MOV R0,TL0
AJMP $
IT0P: INC R2 ;在电平负跳变前,如果计数器溢出,则进位存入R2
RETI
4、根据硬件图计算ADC0809的8个模拟量输入通道的地址,并编写程序实现8个通道的模拟量循环采集,采集结构存放至片内RAM 40H~47H中。(15分) 解:根据电路连接图可计算出ADC0809的8个模拟量输入通道的地址为: 7F00H~7F07H (5分) 循环采集的程序设计如下:
ORG 0000H
AJMP MAIN
ORG 0030H
MAIN:
MOV DPTR,#7F00H
MOV R0,#40H
MOV R7,#8
LOOP:
MOVX @DPTR, A
JNB P3.2,$
MOVX A,@DPTR
MOV @R0,A
INC DPTR
INC R0
DJNZ R7,LOOP
MOV DPTR,#7F00H
MOV R0,#40H
AJMP LOOP
END (10分) 或: ORG 0000H
AJMP MAIN
ORG 0003H
LJMP INT0_INT
ORG 0030H
MAIN: MOV DPTR,#7F00H
MOV R0,#40H
MOV R7,#8
SETB EX0
SETB EA
MOVX A,@DPTR
SJMP $
INTO_INT:
MOVX A,@DPTR
MOV @R0,A
INC DPTR
INC R0
MOVX @DPTR,A
DJNZ R7,LOOP
MOV DPTR,#7F00H
MOV R0,#40H
MOV R7,8
LOOP: RETI
广西工学院 2003 — 2004 学年第 2 学期课程考核试题 考核课程 单片机原理及应用 考核班级 自动化01级
学生数 160 印数 170 考核方式 闭卷 考核时间 120 分钟
一、填空题(30分)(每空1分)
1)8051系列单片机中,片内数据存储区一共分为3个区,这3个区分别为: ; ; 。
2)8K╳8位的存储器共有地址线 根。
3)3 — 8译码器74LS138在全译码寻址方式中,译码器的输出端通常与单片机
接口芯片的 端连接。
4)当单片机接到外设的中断申请时,单片机响应中断,单片机将暂
停 的执行,转去执行 程序,执行
完 ,再执行 程序。
5)8051单片机的中断源有: , , , , 。
6) 单片机P0口为 总线和 总线的复用端口,74LS373
与P0口连接,其输出线作为系统的 ,74LS373的G端与单片机 连接。
7) 当单片机接到外设的中断申请时,单片机响应中断,单片机将暂
停 执行,转去执行 程序,执行完 ,再执行 程序。
8) 已知程序执行前有A=01H,SP=52H,(51H)=FFH,(52H)=FFH。下述程序执行后:
POP DPH
POP DPL
MOV DPTR,#3000H
RL A
MOV B,A
MOVC A,@A+DPTR
PUSH A
MOV A,B
INC A
MOVC A,@A+DPTR
PUSH A
RET
ORG 3000H
DB 10H,80H,30H,80H,50H,80H
请问:A=( ),SP=( ),(51H)=( ),(52H)=( ),PC=( )。
9) 如果DPTR=507BH,SP=32H,(30H)=50H,(31H)=5FH,(32H)=3CH,则
执行下列指令后:
POP DPH
POP DPL
POP SP
则:DPH=( ),DPL=( ),SP=( )
10) 假定A=83H,(R0)=17H,(17H)=34H,执行以下指令:
ANL A,#17H
ORL 17H,A
XRL A,@R0
CPL A
后,A的内容为( )。
二、简答题(20分)
1) 单片机的复位(RST)操作有几种方法,复位功能的主要作用。(5分)
2) 编制中断服务程序时,为什么在主程序的初始化程序中,必须设置 SETB EA
这条指令,以及在中断服务程序中为什么通常需要保护现场和恢复现场?(10分)
3) 中断服务子程序返回指令RETI和普通子程序返回指令RET有什么区别?(5
分)
三、判断下列指令的正误:(10分)
1)MOV 28H,@R2 ( )
2)DEC DPTR ( )
3)INC DPTR ( )
4)MOV C,30H ( )
5)CPL R5 ( )
6)MOV R0,R1 ( )
7)PUSH DPTR ( )
8)MOV F0,C ( )
9)MOV F0,ACC.3 ( )
10)RLC R0 ( )
四、编程题(40分)
1、编制中断初始化程序,外部中断0(边沿触发)、定时器0开中断(中断允许);外部中断1、定时器1关中断(不允许中断)。(5分)
2、编程将片内RAM 40H 单元开始的16个数传送到片外RAM 2000H 开始的单元中。(5分)
3、使用定时器中断方式编程实现从P1.0引脚上输出一个周期为1s的方波。(系统时钟为6MHz)(15分)
4. 根据硬件图计算ADC0809的8个模拟量输入通道的地址,并编写程序实现8个通道的模拟量循环采集,采集结构存放至片内RAM 40H~47H中。(15分)
广 西 工 学 院 课 程 考 试
试题答案要点及评分细则
课程名称 单片微机原理及应用 /单片机技术 专业年级: 自动化01级;
填写人: 蔡启仲 方华 2003—2004 学年第 2 学期
参 考 答 案 及 得 分 要 点 评分标准(得分)
一、填空题(每空1分)
1、寄存器区、位寻址区、数据缓冲区
2、13
3、片选端
4、中断服务程序,中断服务程序,主程序
4、外部0中断,定时器T0中断,外部1中断,定时器T1中断,串行口通讯中断
5、数据,地址,地址,ALE
6、中断服务,中断服务,主
7、30H,50H,80H,30H,3080H
8、3CH,5FH,4FH
9、0CBH
二、简答题
1、单片机的复位操作方式有:1、上电复位;2、手动复位。 (2分) 复位功能的主要作用是:复位时,PC初始化为0000H,使MCS-51单片机从0000H开始执行程
序。 (3分)
2、中断允许寄存器IE中有1个总的开关中断控制位EA,当EA=0时,所有的中断请求被屏蔽,CPU不接受任何中断;只有当EA=1时,CPU才开放中断。所以主程序的初始化程序中,必须设置 SETB EA 这条指
令。 (5分)
现场是指中断时刻单片机中某些寄存器和储存器单元中的数据或状态,为了使中断服务程序的执行不破坏这些数据和状态,以免在中断返回后影响主程序的运行,因此要这些数据和状态送入堆栈保存,这就是现场保护。中断结束后,在返回主程序谦,则需要把保存的现场数据和状态从堆栈中弹出,以恢复那些寄存器和存储器单元中的原有内容,这就是现场恢
复。 (5分)
3、中断服务子程序返回指令RETI和普通子程序返回指令RET的区别在于: RETI指令在返回的同时清除相应的优先级触发器,以允许下次中
断。 (5分)
三、判断下列指令的正误:(10分)
1、 ×
2、 ×
3、 √
4、 √
5、 ×
6、 ×
7、 ×
8、 √
9、 ×
10、×
四、编程题
1、编制中断初始化程序,外部中断0(边沿触发)、定时器0开中断(中断允许);外部中断1、定时器1关中断(不允许中
断)。 (5分)
解:SETB EX0
SETB IT0
SETB ET0
CLR ET1
CLR EX1
SETB EA
2、编程将片内RAM 40H 单元开始的16个数传送到片外RAM 2000H 开始的单元中。 (5分)
解: MOV R0,#40H
MOV R7,#16
MOV DPTR,#2000H
LOOP: MOV A,@R0
MOVX @DPTR,A
INC R0
INC DPTR
DJNZ R7,LOOP
NOP
END
3、使用定时器中断方式编程实现从P1.0引脚上输出一个周期为1s的方波。(系统时钟为6MHz)
解:使用定时器T0产生50ms的定时,然后在计数10次,从而500ms的定
时。 (5
ORG 0000H
AJMP MAIN
ORG 000BH
LJMP TMR0_INT
ORG 0030H
MAIN:
MOV TMOD,#01H
MOV TH0,#9EH
MOV TL0,#58H
MOV R7,#10
SETB ET0
SETB EA
SETB TR0
SJMP $
TMR0_INT: CLR TR0
LOOP: MOV TH0,#9EH
MOV TL0,#58H
SETB TR0 DJNZ R7,LOOP MOV R7,#10 CPL P1.0 分)
RETI (10分)
3、根据如下电路连接图计算ADC0809的8个模拟量输入通道的地址,并编写程序实现8个通道的模拟量循环采集,采集结构存放至片内RAM 40H~47H中。 解:根据电路连接图可计算出ADC0809的8个模拟量输入通道的地址为: 7F00H~7F07H
循环采集的程序设计如下:
ORG 0000H
AJMP MAIN
ORG 0030H
MAIN:
MOV DPTR,#7F00H
MOV R0,#40H
MOV R7,#8
LOOP:
MOVX @DPTR, A
JNB P3.2,$
MOVX A,@DPTR
MOV @R0,A
INC DPTR
INC R0
DJNZ R7,LOOP
MOV DPTR,#7F00H
MOV R0,#40H
MOV R7,#8
AJMP LOOP
END (5分) (10分)
或: ORG 0000H
AJMP MAIN
ORG 0003H
LJMP INT0_INT
ORG 0030H
MAIN: MOV DPTR,#7F00H
MOV R0,#40H
MOV R7,#8
SETB EX0
SETB EA
MOVX A,@DPTR
SJMP $
INTO_INT:
MOVX A,@DPTR
MOV @R0,A
INC DPTR
INC R0
MOVX @DPTR,A
DJNZ R7,LOOP
MOV DPTR,#7F00H
MOV R0,#40H
MOV R7,8
LOOP: RETI
广西工学院 2004 — 2005 学年第 2 学期课程考核试题 考核课程 单片机原理及应用 考核班级 自动化、测控、电子02级
学生数 568 印数 600 考核方式 闭卷 考核时间 120 分钟
一.填空题(每空1分,共20分)
1、在MCS-51单片机中,如果采用24MHz晶振,1个机器周期为( )。
2、若A中的内容为0E6H,那么,P标志位的值为( )。
3、MCS-51单片机程序存储器的寻址范围是由程序计数器PC的位数所决定的,因为MCS-51的PC是16位的,因此其寻址的范围为( )KB。
4、指令格式是由( )和( )所组成,也可能仅由( )组成。
5、在MCS-51中,PC和DPTR都用于提供地址,但PC是为访问( )存储器提供地址,而DPTR是为访问( )存储器提供地址。
6、已知程序执行前有A=01H,SP=52H,(51H)=FFH,(52H)=FFH。下述程序执行后:
POP DPH
POP DPL
MOV DPTR,#4000H
RL A
MOV B,A
MOVC A,@A+DPTR
PUSH A
MOV A,B
INC A
MOVC A,@A+DPTR
PUSH A
RET
ORG 4000H
DB 70H,90H,10H,40H,30H,20H
请问:A=( ),SP=( ),(51H)=( ),(52H)=( )。
7、假定A=55H,R3=0ABH,在执行指令ANL A,R3后,A=( ),R3=( )。
8、假定,SP=60H,A=30H,B=70H,执行下列指令:
PUSH B
PUSH A
后,SP的内容为( ),61H单元的内容为( ),62H单元的内容为( )。
9、假定A=83H,(R0)=17H,(17H)=0B5H,执行以下指令:
ANL A,#17H
ORL 17H,A
XRL A,@R0
CPL A
后,A的内容为( )。
10、12根地址线可选( )个存储单元,8KB存储单元需要( )根地址线。
二.判断题(依照字母顺序写出“对”或“错”)(每题2分,共16分)
1、判断下列说法是否正确:
A、PC可以看成使程序存储器的地址指针。
B、在MCS-51中,为使准双向的I/O口工作在输入方式,必须保证它被事先预置为1。
C、区分片外程序存储器和片外数据存储器的最可靠的方法是看其位于地址范围的低端还是高端。
D、8031的CPU是由RAM和EPROM所组成。
2、判断下列说法是否正确
A、 8031共有21个特殊功能寄存器,它们的位都是可以用软件设置的,因此,是可以进行位寻址的。
B、 内部RAM的位寻址区,只能供位寻址使用,而不能供字节寻址使用。
C、 程序计数器PC不能为用户编程时直接使用,因为它没有地址。
3、判断下列说法是否正确?
A、 单片机的主频越高,其运算速度越快。
B、 PC是1个不可寻址的特殊功能寄存器。
C、 在MCS-51单片机中,1个机器周期等于1us。
D、特殊功能寄存器SP内装的是栈顶首地址单元的内容。
4、判断下列说法是否正确。
A、 立即寻址方式是被操作的数据本身在指令中,而不是它的地址在指令中。
B、 指令中直接给出的操作数称为直接寻址。
C、 指令周期是执行一条指令的时间。
5、中断查询确认后,在下列各种8031单片机运行情况中,能立即进行响应的是:
A、 当前正在执行高优先级中断处理
B、 当前正在执行RETI指令
C、 当前指令是DIV指令,且正处于取指令的机器周期
D、当前指令是MOV A,R3
6、下列说法正确的是:
A、 同一级别的中断请求按时间的先后顺序响应。
B、 同级中断不能嵌套。
C、 低优先级中断请求不能中断高优先级中断请求,但是高优先级中断请求能中断低优先级中断请求。
D、同一时间同一级别的多中断请求,将形成阻塞,系统无法响应。
7、区分MCS-51单片机片外程序存储器和片外数据存储器的最可靠的方法是:
A、 看其芯片的型号是ROM还是RAM
B、 看其离MCS-51芯片的远近
C、 看其位于地址范围的低端还是高段
D、 看其是与RD信号连接还是与PSEN信号连接
8、判断下列说法是否正确?
A、 转换速率这一指标仅适用于A/D转换器, D/A转换器不用考虑转换速率
这一问题。
B、 输出模拟量的最小变化量称为A/D转换器的分辨率。
C、 ADC0809可以利用转换结束信号EOC向8031发出中请求。
D、 对于周期性的干扰电压,可使用双积分的A/D转换器,并选择合适的积
分元件,可以将该周期性的干扰电压带来的转换误差消除。
三.简答题(每题4分,共24分)
1、当MCS-51单片机运行出错或程序陷入死循环时,如何来摆脱困境?
2、下列程序段的功能是什么?
PUSH A
PUSH B
POP A
POP B
3、中断服务子程序返回指令RETI和普通子程序返回指令RET有什么区别?
4、THX与TLX(X=0,1)是普通寄存器还是计数器?其内容可以随时用指令更改吗?更改后的新值是立即刷新还是等当前计数器计满后才能刷新?
5、I/O接口和I/O端口有什么区别?I/O接口的功能是什么?
6、MCS-51与DAC0832接口时,有哪两种连接方式?各有什么特点?各适合在什么场合使用?
四.计算与编写程序(每题8分,共40分)
1、计算下面子程序中指令的偏移量和程序执行的时间(晶振频率为 6MHz)。 MOV R3,#15 ;1个机器周期
DL1:MOV R4,#200 ;1个机器周期
DL2:MOV P1,R3 ;2个机器周期
DJNZ R4,DL2 ;2个机器周期
DJNZ R3,DL1 ;2个机器周期
RET ;2个机器周期
2、试编写程序,查找在内部RAM的30H~60H单元中出现“0FFH”这一数据的次数。并将查找到的结果存入61H单元。
3、如果采用晶振的频率为6MHz,定时器/计数器工作方式0、1、2下,其最大的定时时间为多少?
4、编写程序,将外部数据存储器中的4000H—40FFH单元全部置“1”。
5、分析A/D转换器产生量化误差的原因,1个8位的A/D转换器,当输入电压为0~5V时,其最大的量化误差是多少?
广 西 工 学 院 课 程 考 试
试题答案要点及评分细则
课程名称: 单片(微)机原理及应用 /单片机技
术
专业年级: 自动化、测控、电子信息 02级;
填写人: 蔡启仲 韩峻峰 方华 2004—2005 学年第 2
学期
参 考 答 案 及 得 分 要 点 评分标准(得分)
一.填空题(每空1分,共20分)
1、0.5us。
2、若A中的内容为0E6H,那么,P标志位的值为(1)。
3、64。
4、操作码、操作数、操作码。
5、程序、数据。
6、A=(40H),SP=(50H),(51H)=(10H),(52H)=(40H)。
7、A=(01H ),R3=(0ABH )。
8、SP的内容为(62H ),61H单元的内容为(70H ),62H单元的内容为(30H )。
9、A的内容为(4BH )。
10、4KB、13。
二.判断题(依照字母顺序写出“对”或“错”)(每题2分,共16分)
1、对、对、错、错
2、错、错、对
3、对、错、错、错
4、对、错、对
5、错、错、错、对
6、对、对、对、错
7、对、错、错、对
8、错、错、对、对
三.简答题(每题4分,共24分)
1、答:软件陷阱、复位
2、答:交换A、B的内容
3、答:RETI指令在返回的同时清除相应的优先级触发器,以允许下次中断
4、THX与TLX(X=0,1)是普通寄存器还是计数器?其内容可以随时用指令更改吗?更改后的新值是立即刷新还是等当前计数器计满后才能刷新?
答:THX与TLX(X=0,1)是由特殊功能寄存器构成的计数器,其内容可以随时用指令更改,更改后的新值是立即刷新。但在读THX、TLX的值时,应该先读THX值,后读TLX,再读THX。若两次读得THX相同,则可确定读得的内容正确。若前后两次读得的THX有变化,再重复上述过程。
5、I/O接口和I/O端口有什么区别?I/O接口的功能是什么?
答:I/O端口简称I/O口,常指I/O接口电路中具有端口地址的寄存器或缓冲器。I/O接口是指单片机与外设间的I/O接口芯片。
I/O接口功能:一.实现和不同外设的速度匹配;二.输出数据缓存;三.输入数据三态缓冲。
6、MCS-51与DAC0832接口时,有哪两种连接方式?各有什么特点?各适合在什么场合使用?
答:二种方式:
(1) 单缓冲方式。其特点是DAC0832内部的两个数据缓冲器有一个处于直通方式,另一个处于受MCS—51控制的锁存方式。适用于只有一路模拟量输出,或虽是多路模拟量输出但并不要求多路输出同步的情况下。
(2) 双缓冲方式。其特点是数字量的输入锁存和D/A转换输出是分两步完成的。适用于在多路D/A转换中,要求同步进行D/A转换输出的情况下。
四.计算与编写程序(每题8分,共40分)
1、
答:24096us
析:[((2+2)×200+1+2)×15+1+2] ×2 us=24096us
2、试编写程序,查找在内部RAM的30H~60H单元中出现“0FFH”这一数据的次数。并将查找到的结果存入61H单元。
答: START: MOV 61H,#0
MOV R0,#30H
MOV R2,#30H
LOOP: MOV A,@R0
CJNE A,#0FFH,NEXT
INC 61H
NEXT: INC R0
DJNZ R2,LOOP
RET
3、如果采用晶振的频率为6MHz,定时器/计数器工作方式0、1、2下,其最大的定时时间为多少?
答:因为机器周期,
所以定时器/计数器工作方式0下,其最大定时时间为
;
同样可以求得方式1下的最大定时时间为
;
方式2下的最大定时时间为
512。
4、编写程序,将外部数据存储器中的4000H—40FFH单元全部置“1”。
ORG 0000H
MAIN: MOV A,#0FFH ;送预置数给A
MOV R0,#0FFH ;设置循环次数
MOV DPTR,#4000H ;设置数据指针的初值
LOOP: MOVX @DPTR,A ;当前单元清零
INC DPTR ;指向下一个单元
DJNZ R0,LOOP ;是否结束
END
5、分析A/D转换器产生量化误差的原因,1个8位的A/D转换器,当输入电压为0~5V时,其最大的量化误差是多少?
答:量化误差是由于有限位数字且对模拟量进行量化而引起的; 1.95%;
广西工学院 2006 — 2007 学年第 2 学期课程考核试题 考核课程 单片(微)机原理及应用 /单片机技术
( A 卷) 考核班级 自动化041~044,测控041~042,电子信息041~043,电科041~042 学生数 464 印
数 480 考核方式 闭 卷 考核时间 120 分钟
一、填空题、选择题(30分)
1. 8031单片机复位后,R4所对应的存储单元的地址为( )H。因上电时PSW=( )H,这时当前的工作寄存器区是第( )组工作寄存器区。
2. 在MCS-51中,PC和DPTR都用于提供地址指针,但PC是为了访问( )存储器提供地址指针,而DPTR是为访问( )存储器提供地址指针。
3. 计算机三总线分别为:( ) 总线;( )总线;( )
总线。
4. 在串行通讯中,帧格式为1个起始位,8个数据位和1个停止位的异步串行通信方式是方式( )。
5. 51单片机有两个物理上独立的接收、发送缓冲器SBUF;通过串行口发送数据时,在程序中应使用:( ) 指令;在接收数据时,在程序中应使用:( ) 指令。
6. 单片机与普通计算机的不同之处在于其将( )、( )和( )三部分集成于一块芯片上。 7. 下列指令中有错误的是( )。(2分)
A、MOV A,R4 B、MOV 20H,R4 C 、MOV R4,R3 D、MOV ﹫R4,R3
8. 8031复位后,PC与SP的值为( )、( )。
9. 8051内部有( )个并行端口,P0口直接作为I/O端口使用时,必须外接( );并行端口作输入端口时,必须先执行( ) 指令,然后执行输入指令,才能正确的读入端口的状态。
10. 当单片机接到外设的中断申请时,单片机响应中断,单片机将暂停
( )的执行,转去执行( )程序,执行完 ( ),再执行( )程序。
11.定时器/计数器的工作方式3是指将 ( ) 拆成两个独立的8位计数
器。而另一个定时器/计数器此时通常只可作为( )使用。
12. 串行口每一次传送( )字符。
A. 1位 B. 1串 C. 1帧 D. 1波特
13. 执行下列程序段后,(P1)=( )。(2分)
MOV P1,#5DH
CPL P1.1
CLR P1.6
SETB P1.7
二、简答与计算题(24分)
1. MCS51的中断系统有几个中断源?(1分)几个中断优先级?(1分)如何
用指令设置各中断源的优先级别? (1分)如果同一级别同时存在多个中断申请时,CPU按什么顺序响应(按自然优先级顺序写出各个中断源)(2.5分)?各个中断源的入口地址是多少?(2.5分);(共8分)
2. 在MCS-51单片机系统中,外接程序存储器和数据存储器共用16位地址线和
8位数据线,会不会发生冲突,并说明为什么?(6分)
3. 已知程序执行前有A=02H,SP=52H,(51H)=80H,(52H)=00H。下述程序执行后:
POP DPL
POP DPH
RL A
MOV B,A
MOVC A,@A+DPTR
PUSH A
MOV A,B
INC A
MOVC A,@A+DPTR
PUSH A
RET
ORG 8000H
DB 10H,80H,30H,50H,30H,50H
请问:A=( ),SP=( ),(51H)=( ),(52H)=( ),PC=( )。
(10分)
三、编程题(28分)
1. 编程将片内RAM20H~2FH 单元开始的16个数传送到片外RAM 3000H~300FH 开始的单元中。(12分)
2. 将存放在单片机片内数据存储器30H,31H,32H三个单元中不同的数据按从小到大的顺序排序,并将结果存放在片内RAM的30H~32H中。(10分)
3. 编制中断初始化程序,外部中断0(边沿触发)、外部中断1(电平触发)、定时器0开中断(中断允许);定时器1关中断(不允许中断)。(6分)
四、综合应用题(18分)
MCS-51单片机系统硬件连接示意图如下图所示,系统采用12MHZ的晶体振荡器;并扩展了一片数据存储器6264和一片通用I/O接口芯片8255,并通过8255的PA端口驱动8个发光二极管,各发光二极管的阴极一起连接到地
(GND)。
完成以下要求:
1. 写出数据存储器6264的地址范围。 (2分)
2. 写出8255各端口地址。 (4分)
3. 编程实现连接在8255的PA端口上的发光二极管循环闪亮(即“走马灯”显示)的控制程序,(要求循环闪亮的时间间隔为50ms。采用定时中断的方式来实现)
(注:“/n” 说明此引脚为低电平有效,如8255的/CS端。) (12分)
8255的控制字格式:
TMOD的格式
GATE C//T M1 M0 GATE C//T M1 M0 TCON的格式
TF1 TR1 TF0 TR0 IE1 IT1 IE0 IT0
广 西 工 学 院 课 程 考 试
试题答案要点及评分细则
课程名称: 单片(微)机原理及应用 /单片机技 (_A_卷) 专业年级:自动化041~044,测控041~042,电子信息041~043,电科041~042
填写人: 蔡启仲 陈文辉 柯宝中 马兆敏 2006—2007 学
年第 2 学期
参 考 答 案 及 得 分 要 点 评分标准(得分)
一、填空题、选择题(30分)(每空1分,特殊标注出为2分)
1. 04H 00 0 2. 程序 数据
3. 数据总线 地址总线 控制总线。 4. 方式( 1 )。
5. MOV SBUF , A MOV A,SBUF 6. CPU MEMORY I/O
7. C D 8. 00H, 07H
9. 4 上拉电阻 输出高电平
10. 当前主程序 中断服务子程序 中断服务子程序 中
断前执行的主程序 11.T0 波特率发生器 12. A
13. (P1)=( 9FH )。(2分)
二、简答与计算题(24分)
1. 答:MCS51单片机有5个中断源(1分),2个中断优先级,(1分)中断优先级由特殊功能寄存器IP控制,(1分)在出现同级中断申请时,CPU按如下顺序响应各个中断源的请求:INT0、T0、INT1、T1、串口,(2.5分)各个中断源的入口地址分别是0003H、000BH、0013H、001BH、0023H(2.5分)。(共8分)
2.答:不会,因为控制信号线的不同:(2分)
外扩的RAM芯片既能读出又能写入,所以通常都有读写控制引脚,记为OE和WE。外扩RAM的读、写控制引脚分别与MCS-51的RD和WR引脚相连。(2分) 外扩的EPROM在正常使用中只能读出,不能写入,故EPROM芯片没有写入控制引脚,只有读出引脚,记为OE,该引脚与MCS-51单片机的PSEN相连。(2分)
3.答:A=(50H ),SP=(50H ),(51H)=(30H ),(52H)=(50H ),PC=(5030H )。(10分,每空2分)
三、编程题
1、(12分)
MOV R0,#20H MOV DPTR,#3000H
MOV R7,#10H (6分) LOOP: MOV A,@R0 MOVX @DPTR,A INC R0 INC DPTR DJNZ R7,LOOP NOP END 2、(10分) MOV SP,#52H MOV A,30H CLR C SUBB A,31H JC LP1 MOV A,31H XCH A,30H MOV 31H,A LP1:
MOV A,30H CLR C SUBB A,32H JC LP2 MOV A,32H XCH A,30H XCH A,31H MOV 32H,A SJMP LP3 分)
LP2: MOV A,31H
6分) (3分) (3(
CLR C SUBB A,32H JC LP3 MOV A,31H XCH A,32H MOV 31H,A SJMP LP3
LP3: NOP SJMP $ 3、(6分)
SETB IT0 CLR IT1 SETB EX0 SETB EX1 SETB ET0 CLR ET1 SETB EA 四、
1、6264的地址范围:0000H~1FFFH 分)
2、8255的各端口地址:PA口地址:2000H;
PB口地址:2001H; PC口地址:2002H
控制端口地址:2003H 分)
3、 计算出定时器的初值正确得2分;TH0=3CH TL0 程序中(入口地址 2分 定时器方式及付初值 2分 8255控制字 2分
(4分) (2(4=0B0H
中断初始化 2分
中断服务子程序 2分)共10分 具体程序如下(10分)
ORG 0000H
AJMP MAIN ORG 000BH LJMP T0_INT ORG 0030HMAIN: MOV TMOD,#01H 2分)
MOV TH0,#3CH MOV TL0,#0B0H
MOV DPTR,#2003H MOV A,#80H MOVX @DPTR,A 2分)
SETB ET0 SETB TR0 SETB EA MOV DPTR,#2000H MOV A,#01H SJMP $ 2分)
T0_INT:
MOV TH0,#3CH MOV TL0,#0B0H MOVX @DPTR,A
( ( (
RL A
RETI