单片机与应用复习题含参考答案.docx
- 文档编号:9928483
- 上传时间:2023-02-07
- 格式:DOCX
- 页数:22
- 大小:267.91KB
单片机与应用复习题含参考答案.docx
《单片机与应用复习题含参考答案.docx》由会员分享,可在线阅读,更多相关《单片机与应用复习题含参考答案.docx(22页珍藏版)》请在冰豆网上搜索。
单片机与应用复习题含参考答案
、选择
1、8051单片机共有4个I/O口,但实际上可由用户无条件用作普通I/O接口的是A
A.P1口B.P2口C.P3口D.P0口
2、设8051时钟振荡频率为12MHz,则一个机器周期的时间为D
A.0.8usB.5usC.2usD.1us
3、8051执行输出操作时D
A.WR低电平,RD低电平B.WR高电平,RD高电平
C.WR高电平,RD低电平D.WR低电平,RD高电平
4、在微机应用系统中,常采用“看门狗”电路,其作用是在系统有故障时C
A.切断主机电源B.迫使CPU中断
C.复位CPUD.迫使CPU单步执行
5、8051单片机启动时,自检和系统初始化程序是由
6、程序计数器(PC)中存放的是D
D.指令地址
A.操作数B.操作码C.指令
7、8051IP和PC依次属于A
A.SFR、非SFRB.SFR、SFRC.非SFR、SFRD.非SFR、非SFR
&8051工作寄存器组0〜工作寄存器组3C
A.可同时选用
B.功能不完全相同
C.功能完全相同
D.工作寄存器组0比工作寄存器组3有更强的功能
9、8051复位后,SP的初始状态为A
A.07HB.10HC.80HD.00H
10、8051下列特殊功能寄存器中,既能位寻址又可字节寻址的是B
a.SCON
b.TCON
c.TMOD
d.P2
A.a,bB.a,b,dC.c,dD.b,c
11、8051特殊功能寄存器
A.可以扩展寄存器功能
SFR中采用可以位寻址的寄存器,是因为
B.可以缩短指令执行时间
C.便于控制应用
D.可以扩展存储空间
12、对于地址/数据复用的CPU,为获得地址信息,系统中必须使用
A.单向三态缓冲器B.OC门C.锁存器D.双向三态缓冲器
13、对8位二进制数中的某位用“1”与其作“人”运算,对该位所起的作用是D
A.屏蔽B.置位C.清零D.取反
14、已知X=CCH,Y=96H,则X二丫二丫的结果为B
A.33HB.CCHC.DFHD.F8H
15、用8位地址实现输入和输出口寻址,可寻址的输入、输出口数最多为B
A.8个B.256个C.512个D.128个
16、微机系统中的一个输入口和一个输出口用同一地址,A
18、8051外部中断的触发方式为A
A.低电平或下降沿触发B.仅下降沿触发
C.仅低电平触发D.高电平触发
19、8051关于外部中断的正确说法是D
A.外部中断INTO为电平触发,而1NT1是边沿触发
B.外部中断INT0为边沿触发,而1NT1是电平触发
C.外部中断INT0、INT1为电平触发还是取决于TCON的IE0、IE1
D.对于边沿触发器的外部中断请求,进入中断服务程序时,外部中断请求标志由内部硬件清零
20、若8051系统中断源同时请求中断,则最先响应的中断为B
A.由指令设置而定B.INT0C.TF0D.RI
21、8051单片机中,响应中断请求时,其中优先级最高的是D
A.IE1B.TF1C.RI+TID.TF0
22、8051响应中断后,需由用户采用软件来清除中断标志的是A
A.TI、RIB.TF0、TF1C.IE0、IE1D.IE0、TF0
23、能用于消除键盘抖动的硬件电路为A
A.基本RS触发器B.D触发器C.驱动器D.缓冲器
A.两级三态缓冲E.—级锁存C.两级锁存D.—级或两级锁存均可
25、某医用冰箱温度控制范围为0°C〜一70°C,已选用了合适的温度传感器和CPU,除此以外,还
必须选用主要芯片为B
A.A/D、D/A、定时器B.A/D、D/AC.A/D、定时器D.D/A、定时器
26、两片DAC0832与8位CPU相连,要求两片DAC0832同时对不同的数据进行D/A转换,则两片
DAC0832共需地址端口数为D
A.1B.2C.3D.4
27、某数据采集系统需在同一时刻采集三路模拟量数据,为满足这一要求,在下述几种设计方案中,合
理的应为B
a.四选一模拟开关—采样保持器—A/D—CPU采样保持器1
b.采样保持器2—四选一模拟开关—A/D—CPU
采样保持器3
采样保持器1—A/D—缓冲器
c.采样保持器2—A/D—缓冲器—CPU
采样保持器3—A/D-缓冲器
A.a或bB.b或cC.c或aD.仅a
A/D转换过程。
设A/D转换器的输入电压范围为0~5V,若
80分贝,要求分辨率为4mv,应选ADC芯片的位数、转换
C.甲机的
RTS、TXD、RXD分别与乙机的
GS、TXD、RXD相连
D.甲机的DTR、RXD、DSR分别与乙机的DSR、RXD、DTR相连
30、串口通信中,正确的发送或接收指令为B
a.SBUF=a;
while(RI==0);RI=0;
b.SBUF=a;
while(TI==0);TI=0;
c.while(RI==0);RI=0;b=SBUF;
d.while(TI==0);TI=0;
e.
b=SBUF;
31、宏定义#defineINOXBYTE[0x8000]中常量INO是B
A.片内RAM的地址
B.片外RAM的地址
C.存放在地址为0x8000的片外RAM中的无符号字节型数据
D.存放在地址为0x8000的片外ROM中的无符号字节型数据
34、8051一个键盘/显示器的单片机系统,其监控程序通常应包括D
a.键盘管理
b.显示
c.初始化
d.存储器管理
A.a,bB.a,b,cC.b,c,dD.a,b,c,d
、填空
1、一个机器周期=12个晶振周期
2、8051串口工作方式3为11位、波特率可变的传输方式,写出11位数据格式1位起始位,8位数
据位,1位可编程位,1位停止位
3、8051单片机复位后,其特殊功能寄存器SP的值为07H
4、用8位地址实现输入和输出口寻址,可寻址的输入、输出口数量最多为256个
5、8051单片机中,定时器1的中断入口地址是001BH,用C51表示8051定时器1的中断服务函数为voidT1-IRS(void)interrupt3
6、若时钟晶振为12MHz,则8051单片机定时器0、1的最长定时时间间隔是65.536ms
7、数码显示器有静态显示和动态显示两种显示方式
&8051外部中断INT0、iNTT有低电平触发和下降沿触发两种方式
9、语句TMOD=(TMOD&0xf0)|0x01;功能设置T0工作于方式1,T1不变
10、正常情况下,8051单片机一个机器周期内包括2个ALE信号。
11、若unsignedchara=15,则执行a<<=3;后,a的结果为120
12、AT89S51单片机内部有4k的FlashROM,若要用内部的ROM引导则EA应接高电平
三、简答题
1、8051单片机内部资源概述;
(1)一个8位CPU
(2)一个片内振荡器及时钟电路
(3)4KBROM程序存储器
(4)128BRAM数据存储器
(5)两个16位定时器/计数器
(6)可寻址64KB外部数据存储器和64KB外部程序存储器空间的控制电路
(7)32条可编程的I/O线
(8)一个可编程全双工串行接口
(9)具有5个中断源、两个优先级嵌套中断结构
2、8051单片机片内RAM的空间划分与地址段分配;
工作寄存器区0:
00H~07H
工作寄存器区1:
08H~0FH
工作寄存器区2:
10H~17H
低128BRAM
工作寄存器区3:
18H~1FH
位寻址区:
20H~2FH
数据缓冲器:
30H~7FH
5
高128BRAM
特殊功能寄存器(SFR)
3、8051四个并行接口各自的功能;
P0口:
P0口可以作为输入输出口,但在实际应用中常作为地址/总线口,即低8为地址与数据线分
时使用P0口。
低8位地址由ALE信号的负跳变使它锁存到外部地址锁存器中,而高8位地址由P2口
输出。
P1口:
P1口的每一位都能作为可编程的输入或输出线。
P2口:
P2口可以作为输入口或输出口使用,外接I/O设备时,又作为扩展系统的地址总线,输出
高8位地址,与P0口一起组成16位地址总线。
P3口:
P3口为双功能口。
作为第一功能使用时,其功能同P1口。
4、8051单片机试外部中断INTO、定时器中断T0、串行口中断产生中断的原理;
(1)、外部中断INT0的原理
若INT0中断允许(使能EX0=1,EA=1),则CPU立即停止当前程序,跳转到INT0对应的中断入口(ROM保留地址0x0003)执行中断服务程序(中断服务程序后CPU自动对中断标志清零:
IE0=0),待INT0中断服务程序执行完毕后再回原执行程序处;
若INT0中断未允许,则程序不能跳转到INT0中断入口,不执行中断服务程序(中断标志IE0不能自动清0)。
(了解:
当INT0引脚输入如下信号:
下降沿(IT0=1)或低电平(IT0=0)
CPU自动(硬件)产生中断标志(IE0=1))
(2)、定时器中断T0原理
若T0中断允许(使能ET0=1,EA=1),则CPU立即停止当前程序,跳转到T0对应的中断入口(ROM保留地址0x000B)执行中断服务程序(中断服务程序后CPU自动对溢出标志清零:
TF0=0),待T0中断服务程序执行完毕后再回原执行程序处;
voidTIMER0_ISR(void)interrupt1
{//定时器0中断服务程序
}
若T0中断未允许,则程序不能跳转到T0中断入口,不执行中断服务程序(中断标志此时TF0不
能自动清0)。
(了解:
手工启动定时器(TR0=1)后,T0开始对机器周期计数(硬件对TH0、TL0构成的16位
计数器递增计数);当计至TH0=0xff,TL0=0xff后,再计一次则定时器产生溢出(溢出标志TF0=1))
(3)、串行口中断产生中断的原理
执行串口发送指令SBUF=a;通过TXD口发送串行数据,发送结束后CPU自动产生发送结束标志
(TI=1);此时若串行中断使能(ES=1,EA=1),则程序立即停止当前程序,跳转置中断号为4的串行口中断入口地址(0x0023),执行中断服务程序voidUART_ISR(void)interrupt4,CPU不具有自动清
零功能;
同样,若串口在RXD引脚接收到数据,硬件自动产生接收结束标志(RI=1),若此时若串行中断
使能(ES=1,EA=1),则程序立即停止当前程序,跳转置中断号为4的串行口中断入口地址(0x0023),
执行中断服务程序voidUART_ISR(void)interrupt4,CPU不具有自动清零功能,可通过b=SBUF;指令
取出暂存在数据缓冲区内的数据。
5、8051单片机的5个中断源名称、各自对应的中断号与中断入口地址,中断服务程序函数形式,各自
的中断标志位名称,中断优先级等。
中断源名称
中断号(n)
中断入口地址(8n+3)
中断服务程序函数形式
中断标志位名称
中断优先级
外部中断0
(INT。
)
0
0003H
voidINT0_ISR(void)interrupt0
{}
r
定时/计数器0
溢出中断(T0)
1
000BH
voidT0_ISR(void)interrupt1
{}
TF。
外部中断1
(INT1)
2
0013H
voidINT1」SR(void)interrupt2{}
IE1
定时/计数器1溢出中断(T)
3
001BH
voidT1_ISR(void)interrupt3
{}
帀
串行接口
4
0023H
voidUART_ISR(void)interrupt
4
{}
RI、TI
6、若串口通信率为9600bps,每个字节以10位方式传输。
若要传输1K字节大概多少时间?
1
t=1024101.07s
方式0:
tma^f2213二
fosc
方式1:
tmax
12
osc
216
方式2:
tmax二f228二
fosc
9600
&8051单片机应用系统的开发语言与开发步骤;
(1)开发语言:
C语言、汇编语言
(2)开发步骤:
①了解系统功能、要求、任务
2确定设计方案
3硬件设计
4软件设计
5系统调试
9、标志位:
EXO、EX1、ETO、ET1、ES;IEO、IE1、TFO、TF1、RI、TI;ITO、IT1;TRO、TR1;SMOD
的功能;
EXO:
外部中断0中断允许位。
1允许;0禁止
EX1:
外部中断1中断允许位。
1允许;0禁止
ETO:
定时/计数器0的溢出中断允许位。
1允许;0禁止
ET1:
定时/计数器1的溢出中断允许位。
1允许;0禁止
ES:
串行接口中断允许位。
1允许;0禁止
RI:
串行接口接收中断标志。
在串行接口方式
0中,收到第8位数据时,由硬件置位;其它方式中,收到停止位的
中间位置时硬件置位。
中断服务子程序中,软件清0
TI:
串行接口发送中断标志。
在串行接口方式0中,每当发完8位数据时由硬件置位;其它方式中,停止位开始时
置位。
中断服务子程序中,软件清0。
TFO:
TO的溢出中断标志。
当TO溢出时,硬件使其置1。
CPU响应该中断时,硬件清0。
TF1:
T1的溢出中断标志。
当T1溢出时,硬件使其置1。
CPU响应该中断时,硬件清0。
TRO:
TO的运行控制位。
1启动计数;0停止计数。
TR1:
T1的运行控制位。
1启动计数;0停止计数。
IT0:
外部中断0触发方式控制位。
1下降沿出发;0低电平触发。
IT1:
外部中断1触发方式控制位。
1下降沿出发;0低电平触发。
IE0:
外中断0中断请求标志。
当INTO为低电平或下降沿时,IE0由硬件置1。
CPU响应该中断时,硬件使IE0清0IE1:
夕卜中断1中断请求标志。
当両为低电平或下降沿时,IE1由硬件置1。
CPU响应该中断时,硬件使IE1清0
SMOD:
波特率选择位。
串口工作于方式2时,0波特率为振荡器频率的1/64,1波特率为振荡器频率的1/32;串口
工作于方式1或方式3时,0波特率为定时器1溢出率的1/32,1波特率为定时器1溢出率的1/16。
TH0:
T0高8位
TLO:
T0低8位<
TH1:
T1高8位
TL1:
T1低8位
TMOD:
GATE
C/T
M,
GATE
丁e方式揑制
TMOD
Eg6656Qi6
图2-14TMOD寄存胖各位定义
Mr
%
1方式
说明
0
0
0
13世定时器/计数器
0
1
J■J
0位定时器/计藪器
10
21
自动装人时闾常數妁S佗定时強广计歆器
J
]
1
对T*分为两个8位计数器;对比童方盒弓时停止工作
GATE:
一般取0。
C/T:
1计数器方式;0定时器方式。
(一般取0)
TCON:
6
1>6
D5
5
6
D丄
5
Do
TCON
TFi
TRi
TRfl
L±(
ITi
用于外部中析
图2-15TCO訝寄存器各位定义
SCON:
SMO,SM1:
串口操作方式选择位。
(表2-9)
SM2:
允许方式2和方式3的多机通信使能位。
(一般取0)
REN:
允许串行接收位。
1允许;0禁止。
(一般取1)
TB8:
方式2和3中要发送的第9位数据。
(任意项)
RB8:
方式2和3中已接收的第9位数据。
(任意项)
TI,RI:
发送、接收中断标志。
(一般取0)
PCON:
SBUF:
存放串口已接收或要发送的一个字节的数据
四、程序设计
写出完成的源程序,包括主程序与定时器中断服务程
voidmain(void)
{
X.a=65535-COUNT;
TMOD=(TMOD&0xf0)|0x01;
TH0=X.b[0];
TL0=X.b[1];
ET0=1;
EA=1;
TR0=1;
while
(1)
{}
}
周期为2ms,占空比为75%的方波。
2、给定晶振,在P1.0引脚上产生一要求的方波,序;
#include"reg51.h"
#defineCOUNT445〃修改周期
unionMY1
{
unsignedinta;
unsignedcharb[2];
}
unionMY1X;
sbitp1_0=P1A0;
voidT0_ISR(void)interrupt1
{
staticunsignedchari=0;
TH0=X.b[0];
TL0=X.b[1];
i++;
if(i==3){p1_0=0;}//修改占空比
if(i==4)
{
p1_0=1;
i=0;
}
}
3、给定fosc=11.0592MHz,根据串口通信波特率参数要求,写出串口初始化程序voidsbuf_init(),要
求有计算过程。
方式2:
波特率=2SMOD
64
方式3:
与方式1一样
voidsbuf_init(void)
〃11.0592MHz--10
9600bps,SMOD=0,T1计数值n=3
SCON=0x50;
PCON=0X00;
//01010000串口工作于方式1
〃最高位SMOD=0
位异步通信方式,
{
波特率计算方法:
TMOD=(TMOD&0x0f)|0x20;〃T1工作于方式2,8位计数器TL1溢出后,TH1的值自动载入TL1.
TH1=0Xfd;
TL1=0xfd;
TR1=1;
〃T1计数值为3
//T1计数值为3
//T1启动
4、会定时器相关计算。
(参考简答题7)
五、分析设计题
1、A/D转换(实验七)
(1)会分析与设计ADC0809与AT89S51的接口电路;
叫!
4JDCM
wc
50皐
a
z
cr
2
2
CM
a
2
EQ
2
DI
3
%>rjii A1X (Jt rut 4XMULIO -I t-i 汽」 (2)会根据硬件电路确定ADC0809的外部RAM地址; 上图中ADC引脚(实验中接P2.7)为0时,芯片被选中。 (3)会分析与设计基于查询方式的A/D转换程序; #inelude"reg51.h" #inelude"absacc.h" #defineAIN0XBYTE[0x0000] sbitEOC=P3A3; voidmain(void) { unsignedchari=0;unsignedchara;while (1) { //开始AD转换 //等待转换完成 //转换结果放在变量a中 AIN0=0; i=i; i=i;while(EOC==0); a=AIN0; (4) n: 采集到的数字量 会根据采集到的数字量与输入模拟量进行对应的计算。 V: 参考电压(VREF()-VREF(_)) 测得模拟电压u=? V 2、D/A转换(实验八) 16 15 T7 13 DOL5B) VCC Dll DI2 VEEF D13 D14 DIS D16 Rih nir- 2 1 & 3 6 5 8 7 10 9 12 11 14 13 16 15 r2 i 13 TT~ XFEEAGND ILEDGMD DACQ832 D7-D0 HEADER8X2 DAC0832 I0UT1 I0UT2 AD/DACON DAC LM74LWS: R210k VCC 30T 11 12 +12V CON2 (1)会设计DAC0832与AT89S51的单缓冲方式接口电路; (3)会编写锯齿波或三角波程序; 三角波: voidtriangle(void)〃三角波子函数,如要改成锯齿波,只需去除产生下降沿的For循环。 { unsignedchari; for(i=0;i<255;i++)//三角波上升沿 { DAC0832=i;delay (1); } for(i=0;i<255;i++)〃三角波下降沿,去除此循环即为锯齿波。 { DAC0832=255-i; delay (1); }
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 单片机 应用 复习题 参考答案