华南理工大学大三电子信息专业单片机原理试卷及答案

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

华南理工大学试卷(闭卷A)
备注:答题一律写在答题纸上并连同试卷一起上交。

一.填空题(每空1分,共15分)
1. 1个机器周期由()个状态周期及()个振荡周期组成。

2.MCS-51单片机的外部数据存储器和外部I/O口实行()编址,并使用相同的选通控制信号,均使用()指令访问。

3. 51 系列单片机内部数据存储器地址范围为00~7FH。

地址的前()个单元称为寄存器区。

可用作();R0与R1可作()使用。

4. 8XX51单片机的堆栈设在内部RAM区,深度不大于(),初始化时SP指向()。

5.对于串行口中断,CPU响应中断后,没有用硬件清除()标志TI、RI,必须用()清除。

6. 中断处理的过程分为4个阶段:()、()、()和()。

二.简答题(每小题3分,共15分)
1. 在51系列单片机的汇编指令集中,有哪些寻址方式?
2. 8051单片机的PSEN、RD、WR信号分别是什么功能?可由哪些指令产生?
3. 若51系列单片机进行了系统扩展,其P0,P2还能作为I/O口用吗?它们在系统扩展后的功能是什么?
4. 定时/计数器的启动与GATE控制位有何关系?请作简单说明。

5. MXX51系列单片机的中断系统共分几类优先级?如何设定?
三、程序设计(每小题10分,共20分)
1. 双字节的被加数、加数分别存放在R1R0、R7R6中,请编写程序,实现双字节加法运算,要求R1R0+R7R6 (32H)(31H)(30H),其中,R0、R6、(30H)分别表示被加数、加数以及和的最低位。

2. 片内RAM地址为50H-5FH的单元中存放着16个无符号数,请按从小到大的顺序依次排列它们。

A2
四.接口应用与扩展(每小题15分,共30分)
1. 用8XX51的P1口接8个LED 发光二极管,由INT 1接一消抖开关产生 中断请求信号,开始P1.0的LED 亮,以后每中断一次,下一个LED 亮, 顺序下移,且每次只一个LED 亮,周而复始。

试画出电路图,并编制程序。

2. 在8XX51单片机上扩展1片EPROM27128(16KB ×8),1片RAM6264 (8KB ×8)和1片8255,采用线选法,画出扩展原理图,并写出各芯片的 地址范围。

五.综合题(20分)
设8XX51采用的晶振为6MHz 。

设计8XX51和DAC0832接口,要求访问 DAC0832的接口地址为F7FFH ,满量程输出电压为5V ,采用单缓冲工作方 式。

试完成下述工作:
1. 画出满足题设要求功能的电路图。

(5分)
2. 编程使其输出具有幅值为3V ,周期为任意的三角波。

(4分)
3. 编程使其输出具有幅度为4V ,周期为2ms 的方波,且方波周期的时间由 定时器T0实现。

(5分)
4. 周期为6ms 的阶梯波,如图所示,阶梯的电压幅度分别为
0V ,1V ,2V , 3V ,4V ,5V ,每一阶梯为1ms ,且每一阶梯的宽度所需的时间由定时器T1
实现。

(6分) 第五题 4小题图
5V 0V
t
V
…1ms 1ms
1ms
武汉理工大学教务处
试题标准答案及评分标准用纸
课程名称单片机原理及应用( A 卷)
一填空题(每空1分,共15分)
1. 6,12
2.统一,MOVX
3. 32,通用寄存器,间址寄存器
4. 128字节,07H
5.中断请求,软件
6. 中断请求、中断响应、中断处理、中断返回
二简答题(每小题3分,共15分)
1. 答:有立即数寻址、直接寻址、寄存器寻址、寄存器间接寻址、变址寻址、相对寻址、位寻址。

2. 答:PSEN为读片外ROM存储器信号、RD为读片外RAM存储器或I/O空间地址信号、WR为写片外RAM存储器或I/O空间地址信号。

PSEN信号由MOVC A,@DPTR+A指令或取指令时产生,RD信号由MOVX A,@DPTR指令产生, WR信号由MOVX @DPTR,A指令产生.
3. 答:51单片机片若进行了系统扩展,则P2用作16位地址总线中的高8位,P0用作16位地址总线中的低8位和8位数据总线。

由于随时要对总线上设备进行访问,故P2、P0不能用作一般的I/O 口。

4. GATE=0时,定时/计数器的运行只受TCON中运行控制位TR0/TR1的控制。

当TR X=1时,即可启动定时器/计数器工作。

GATE=1时,定时/计数器的运行同时受TR0/TR1和外中断输入信号的双重控制。

当TR X=1,且INTx=1时,可启动定时器/计数器工作。

5. MXX51中断系统共分2类优先级。

其中断源的优先级由IP寄存器管理,一个中断源对应一位,如果对应的位置“1”,该中断源优先级别高,如果对应的位置“0”,该中断源优先级别低。

当某几个中断源在IP寄存器相应位同为“1”或同为“0”时,由内部查询确定优先级,优先响应先查询的中断请求。

CPU查询的顺序是:INT0、T0、INT1、T1、TI/RI
三、程序设计(20分)
1. 双字节的被加数、加数分别存放在R1R0、R7R6中,请编写程序,实现双字节加法运算,要求R1R0+R7R6 (32H)(31H)(30H),其中,R0、R6、(30H)分别表示被加数、加数以及和的最低位。

(10分)
解:注意两高字节相加应加低字节相加时的进位,同时,要考虑最高为的进位。

ORG 0000H
MOV A, R0
ADD A,R6 (2分)MOV 30H, A
MOV A, R7
ADDC A, R1MOV 31H, A (4分)MOV A, #0
ADDC A, #0
MOV 32H, A (2分)SJMP $
END (2分)
2. 片内RAM 地址为50H -5FH 的单元中存放着16个无符号数,请按从小到大的顺序依次排列它们。

(10分)
ORG 0000H START : CLR 00H CLR C
MOV R7,#10H MOV R0,#50H
MOV A ,@R0 (2分) LOOP : INC R0
MOV R2,A SUBB A ,@R0 MOV A , R2 JC NEXT
SETB 00H XCH A ,@R0 DEC R0
XCH A ,@R0
INC R0 (6分) NEXT :MOV A ,@R0
DJNZ R7,LOOP JB 00H ,START SJMP $
END (2分)
四.接口应用与扩展(
1. 用8XX51的P1口接8个P1.0的LED LED 亮,周而复始。

试画
出电路图,并编制程序。

(15
题四(1)图 (5分)
ORG 0000H
MAIN :MOV A ,#0FEH (5分)
8KB ×8)和
题四图(2) (5分)
P2.7 P2.6
A15 A14 A13 A12
0 0 ××0000H~3FFFH (27128)(3分)
1 0 1 ×8000H~BFFFH (6264)(4分)
0 1 1 1 1 1 1 1,1 1 1 1,1 1 ××7FFCH~7FFFH (8255)(3分)
五.综合题(20分)
设8XX51采用的晶振为6MHz。

设计8XX51和DAC0832接口,要求访问DAC0832的接口地址为F7FFH
1.
2.
3. T0实现。

(5分)
4. 周期为6ms,4V,5V,每一阶梯为1ms
解:1.
题五图(5分)
3V模拟量对应的数字量为:5V/3V = 255/X,X=153=99H。

同理:1V时,X=33H;2V时,X=66H;4V时,X=CCH
2. 三角波(4分)
ORG 0000H
MAIN:MOV DPTR,#0F7FFH NEXT1:MOV A,#0
NEXT:MOVX @DPTR,A
NOP
NOP
INC A
CJNZ A,#99H,NEXT (2分)NEXTA:
MOVX @DPTR,A
NOP
NOP
DEC A
CJNE A,#0,NEXTA
SJMP NEXT1 (2分)
END
3. 方波(5分)
4V对应的数字量为CCH
机器周期MC = 12/fosc = 2us
应计脉冲的个数:2ms/2us = 1000 =3E8H
采用方式1时,16位定时计数(1000)补= (65536-1000)= FC18H (FCH 18H),TMOD = 01H 采用方式0时,13位定时计数(1000)补= (8192-1000)= 1C18H = 0001 110 0 000 1 1000 (E0H 18H),TMOD = 01H
ORG 0000H
AJMP MAIN
000BH
AJMP INVT
ORG 0030H
MAIN:MOV TMOD,#01H;T0定时方式1 MOV TH0,#0FCH
MOV TL0,#18H
SET ET0
SET EA
SETB TR0
MOV DPTR,#0F7FFH
MOV A,#0
MOVX @DPTR,A (3分)
SJMP $
INTV:MOV TH0,#0FCH
MOV TL0,#18H
XRL A,#0CCH
MOVX @DPTR,A (2分)
RETI
4. 阶梯波(6分)
4V对应的数字量为CCH
机器周期MC = 12/fosc = 2us
应计脉冲的个数:1ms/2us = 500
采用方式1时,16位定时计数(500)补= (65536-500)= FE0CH (FEH 0CH),TMOD = 10H
采用方式0时,13位定时计数(500)补= (8192-500)= 1E0CH = 0001 111 0 000 0 1100 (F0H 0CH ),TMOD = 10H
ORG 0000H
AJMP MAIN
001BH
AJMP INVT
ORG 0030H
MAIN:MOV TMOD,#10H;T1定时方式1
MOV TH1,#0FEH
MOV TL1,#0CH
SET ET1
SET EA
SETB TR1
MOV DPTR,#0F7FFH
NEC:MOV A,#0
MOVX @DPTR,A
SJMP $ (2分)
INTV:MOV TH1,#0FEH
MOV TL1,#0CH
CJNE A,#0FFH,NEXTA
MOV A,#0
SJMP NEXTB
NEXTA:ADD A,#33H
NEXTB:MOVX @DPTR,A
RETI (4分)
END
、。

相关文档
最新文档