内容正文:
《单片机的C语言程序设计及应用》(电工版第4版)
期末复习卷(一)
时间:90分钟 总分:100分
班级 姓名 学号 成绩
一、选择题(本大题共15小题,每小题2分,共30分)
1.单片机的应用程序一般存放在 ( )
A.寄存器 B.RAM C.ROM D.CPU
2.89C51单片机的PSW寄存器中的RS1和RS0用来 ( )
A.指示复位 B.选择定时器
C.选择工作方式 D.选择工作寄存器组
3.AT89C51单片机共有多少个引脚 ( )
A.32 B.40 C.44 D.48
4.8051单片机有多少个中断源 ( )
A.2 B.3 C.5 D.32
5.MCS-51单片机中外部中断0中断的中断号n是 ( )
A.0 B.1 C.2 D.3
6.以下不是构成单片机的部件是 ( )
A.存储器 B.微处理器(CPU) C.I/O接口电路 D.打印机
7.51单片机的定时器/计数器工作模式0是 ( )
A.8位计数器结构 B.2个8位计数器结构
C.13位计数器结构 D.16位计数器结构
8.MCS-51单片机的CPU主要的组成部分为 ( )
A.运算器、控制器 B.加法器、寄存器
C.运算器、加法器 D.运算器、译码器
9.8051单片机的P0口,当使用外部存储器时它的功能是 ( )
A.传输低8位地址口 B.传输高8位数据口
C.传输高8位地址口 D.传输低8位地址/数据口
10.使用单片机软件调试C语言程序时,首先要新建文件,其扩展名是 ( )
A.*.asm B.*.c C.*.bin D.*.hex
11.以下与中断无关的寄存器是 ( )
A.TCON B. IP C.IE D.TMOD
12.地址总线是下列哪个端口 ( )
A.P0、P2 B.P0、P1 C.P1、P2 D.P2、P3
13.通常,开发一个单片机应用系统的过程应包括 ( )
A.系统方案设计 B.系统建造;系统调试
C.系统方案局部修改、再调试 D.A、B、C
14.使用_crol_函数时,必须包含的库文件是 ( )
A.reg51.h B.intrins.h C.absacc.h D.stdio.h
15.unsigned int类型变量的二进制的位数为 ( )
A.16 B.8 C.7 D.1
二、判断题(本大题共5小题,每小题2分,共10分)
1、MCS-51单片机有4个8位并行I/O口,其中P1-P3是准双向口。( )
2、通信有并行通信和串行通信两种方式。。()
3、ADC是实现将数字量转换成模拟量的器件。( )
4、8255A具有8种工作方式,通过向8255A的控制字寄存器写入方式选择字,就可以规定各端口的工作方式。( )
5、MCS-51单片机的复位信号是高电平。( )
三、填空题(本大题共10小题,每小题2分,共20分)
1.在89C51中,只有当EA引脚接 电平时,CPU才访问片内的程序存储器。
2.单片机的P1口作输入用途之前必须在相应端口先置 。
3.8051的几个端口中只有 口只作为通用I/O口,其它几个端口都具有第二功能。
4. 软件可以和Keil C软件联合仿真单片机。
5.一个机器周期等于 个状态周期,振荡脉冲12分频后产生的时序信号的周期定义为机器周期。
6.MCS-51单片机用特殊功能寄存器 来管理中断源的优先级别。
7.MCS-51单片机定时器/计数器有 种工作模式。
8.根据公共端的连接情况,8段LED数码显示器有共阴极和 两种。
9.开关抖动的处理可以分为 去抖动和硬件去抖动。
10.I2C总线的两根线分别为数据线SDA和时钟线 。
四、简答题(本大题共4小题,每小题5分,共20分)
1.51系列单片机的4种时序周期都是什么,若晶振频率为12MHz,则一个机器周期为多少。
2.51单片机的5个中断源分别是什么。
3.如图所示为8段数码管的结构图,根据公共端的连接情况判断是共阴极还是共阳极并写出如下数值的段码。
数码管 2 A
4.简述定时器/计数器的初始化步骤。
五、程序填空。按照题目要求,将正确的内容填入相应位置,使得程序完整(本题共1个小题,每空3分,共15分)
1.在AT89C51单片机上,P1口接8个发光二极管,P3.4和P3.5接2个按钮开关模拟计数器输入,定时器/计数器0有一个计数时,让P1.0位取反;当定时器/计数器1有三个计数时,让P1.7位取反。(请填空)
#include<reg51.h>
sbit LED0=P1^0; sbit LED7=P1^7;
void main( )
{ 【1】;
TH0=255;TL0=255;
TH1=【2】;
TL1=【3】;
EA=1; ET0=1; ET1=1;
【4】;TR1=1;
while(1);
}
void time0_int(void) interrupt 【5】
{ LED0=~LED0;}
void time0_int(void) interrupt 3
{ LED7=~LED7;}
六、读程题(本大题共1小题,共5分)
1、LED灯连接如图所示,该程序实现的功能是 。
#include<reg51.h>
sbit LED=P1^0;
void delay(unsigned int x)
{ unsigned char j;
while(x--)
{ for(j=0;j<125;j++);
}
}
void main(void)
{ while(1)
{ LED=0;
delay(500);
LED=1;
delay(500);
} }
原创精品资源学科网独家享有版权,侵权必究!
学科网(北京)股份有限公司
学科网(北京)股份有限公司
学科网(北京)股份有限公司
学科网(北京)股份有限公司
�
a
b
c
d
e
f
g
dp
D0
D1
D2
D3
D4
D5
D6
D7
a
b
c
d
e
f
g
dp
$$
《单片机的C语言程序设计及应用》(电工版第4版)
期末复习卷(一)
时间:90分钟 总分:100分
班级 姓名 学号 成绩
一、选择题(本大题共15小题,每小题2分,共30分)
1.单片机的应用程序一般存放在 ( )
A.寄存器 B.RAM C.ROM D.CPU
【答案】 C
2.89C51单片机的PSW寄存器中的RS1和RS0用来 ( )
A.指示复位 B.选择定时器
C.选择工作方式 D.选择工作寄存器组
【答案】 D
3.AT89C51单片机共有多少个引脚 ( )
A.32 B.40 C.44 D.48
【答案】 B
4.8051单片机有多少个中断源 ( )
A.2 B.3 C.5 D.32
【答案】 C
5.MCS-51单片机中外部中断0中断的中断号n是 ( )
A.0 B.1 C.2 D.3
【答案】 A
6.以下不是构成单片机的部件是 ( )
A.存储器 B.微处理器(CPU) C.I/O接口电路 D.打印机
【答案】 D
7.51单片机的定时器/计数器工作模式0是 ( )
A.8位计数器结构 B.2个8位计数器结构
C.13位计数器结构 D.16位计数器结构
【答案】 C
8.MCS-51单片机的CPU主要的组成部分为 ( )
A.运算器、控制器 B.加法器、寄存器
C.运算器、加法器 D.运算器、译码器
【答案】 A
9.8051单片机的P0口,当使用外部存储器时它的功能是 ( )
A.传输低8位地址口 B.传输高8位数据口
C.传输高8位地址口 D.传输低8位地址/数据口
【答案】 D
10.使用单片机软件调试C语言程序时,首先要新建文件,其扩展名是 ( )
A.*.asm B.*.c C.*.bin D.*.hex
【答案】 C
11.以下与中断无关的寄存器是 ( )
A.TCON B. IP C.IE D.TMOD
【答案】 D
12.地址总线是下列哪个端口 ( )
A.P0、P2 B.P0、P1 C.P1、P2 D.P2、P3
【答案】 A
13.通常,开发一个单片机应用系统的过程应包括 ( )
A.系统方案设计 B.系统建造;系统调试
C.系统方案局部修改、再调试 D.A、B、C
【答案】 D
14.使用_crol_函数时,必须包含的库文件是 ( )
A.reg51.h B.intrins.h C.absacc.h D.stdio.h
【答案】 B
15.unsigned int类型变量的二进制的位数为 ( )
A.16 B.8 C.7 D.1
【答案】 A
二、判断题(本大题共5小题,每小题2分,共10分)
1、MCS-51单片机有4个8位并行I/O口,其中P1-P3是准双向口。( )
【答案】正确
2、通信有并行通信和串行通信两种方式。( )
【答案】正确
3、ADC是实现将数字量转换成模拟量的器件。( )
【答案】错误
4、8255A具有8种工作方式,通过向8255A的控制字寄存器写入方式选择字,就可以规定各端口的工作方式。( )
【答案】错误
5、MCS-51单片机的复位信号是高电平。( )
【答案】正确
三、填空题(本大题共10小题,每小题2分,共20分)
1.在89C51中,只有当EA引脚接 电平时,CPU才访问片内的程序存储器。
【答案】高
2.单片机的P1口作输入用途之前必须在相应端口先置 。
【答案】1
3.8051的几个端口中只有 口只作为通用I/O口,其它几个端口都具有第二功能。
【答案】P1
4. 软件可以和Keil C软件联合仿真单片机。
【答案】Proteus
5.一个机器周期等于 个状态周期,振荡脉冲12分频后产生的时序信号的周期定义为机器周期。
【答案】6
6.MCS-51单片机用特殊功能寄存器 来管理中断源的优先级别。
【答案】IP(中断优先级控制寄存器)
7.MCS-51单片机定时器/计数器有 种工作模式。
【答案】4
8.根据公共端的连接情况,8段LED数码显示器有共阴极和 两种。
【答案】共阳极
9.开关抖动的处理可以分为 去抖动和硬件去抖动。
【答案】软件
10.I2C总线的两根线分别为数据线SDA和时钟线 。
【答案】SCL
四、简答题(本大题共4小题,每小题5分,共20分)
1.51系列单片机的4种时序周期都是什么,若晶振频率为12MHz,则一个机器周期为多少。
【答案】振荡周期、状态周期、机器周期、指令周期,1us
【解析】
51系列单片机的4种时序周期分别是振荡周期、状态周期、机器周期和指令周期。
已知晶振频f率为12MHz,则T=12/f=12/12MHz=12/(12×106Hz=1×10-6s=1us
2.51单片机的5个中断源分别是什么。
【答案】外部中断0中断()、定时器/计数器0溢出中断(TF0或定时器/计数器0中断)、外部中断1中断()、定时器/计数器1溢出中断(TF1或定时器/计数器1中断)、串行口中断(TI/RI或串行口发送/接收中断)
【解析】
见答案
3.如图所示为8段数码管的结构图,根据公共端的连接情况判断是共阴极还是共阳极并写出如下数值的段码。
数码管 2 A
【答案】:
(1)共阴极
(2)5BH
(3)77H
【解析】
(1) 所用二极管都接地,所以是共阴极数码管。
(2) 显示2需要a b d e g为高电平,剩下的为低电平。由高位到低位排列为即g~a 1011011所以为5BH
(3) 显示A需要a b c e f g为高电平,剩下的为低电平。由高位到低位排列为即g~a 1110111所以为77H
4.简述定时器/计数器的初始化步骤。
【答案】:
(1)TMOD寄存器的设定
(2)计数器的计数初值X
(3)中断系统的管理
(4)定时器/计数器启动
【解析】
见答案
五、程序填空。按照题目要求,将正确的内容填入相应位置,使得程序完整(本题共1个小题,每空3分,共15分)
1.在AT89C51单片机上,P1口接8个发光二极管,P3.4和P3.5接2个按钮开关模拟计数器输入,定时器/计数器0有一个计数时,让P1.0位取反;当定时器/计数器1有三个计数时,让P1.7位取反。(请填空)
#include<reg51.h>
sbit LED0=P1^0; sbit LED7=P1^7;
void main( )
{ 【1】;
TH0=255;TL0=255;
TH1=【2】;
TL1=【3】;
EA=1; ET0=1; ET1=1;
【4】;TR1=1;
while(1);
}
void time0_int(void) interrupt 【5】
{ LED0=~LED0;}
void time0_int(void) interrupt 3
{ LED7=~LED7;}
【答案】:
【1】TMOD=0x66
【2】253
【3】253
【4】TR0=1
【5】1
【解析】
【1】TMOD寄存器设置为0x66,配置定时器/计数器0和1为模式2(8位自动重装载计数器)。
低4位(T0):0110→模式2,计数模式(C/T=1)。
高4位(T1):0110→模式2,计数模式(C/T=1)。
【2】253和【3】253
定时器/计数器1需要3个计数脉冲触发一次中断。
模式2自动重装载值计算:256-3=253。
当TL1从253计数到255溢出时,TH1自动重装253,同时触发中断。
【4】TR0=1
启动定时器/计数器0。
题目已给出TR1=1(启 T1),此处需补充启动 T0。
【5】1
定时器/计数器0的中断号为 1。
六、读程题(本大题共1小题,共5分)
1.LED灯连接如图所示,该程序实现的功能是 。
#include<reg51.h>
sbit LED=P1^0;
void delay(unsigned int x)
{ unsigned char j;
while(x--)
{ for(j=0;j<125;j++);
}
}
void main(void)
{ while(1)
{ LED=0;
delay(500);
LED=1;
delay(500);
} }
【答案】
LED灯以500ms的时间间隔闪烁
【解析】
该程序实现的功能是:LED灯以500ms的时间间隔闪烁。具体分析如下:
硬件连接
sbit LED=P1^0 LED定义为P1.0引脚,说明LED阳极接VCC(高电平),阴极通过P1.0控制(低电平点亮)。
延时函数
delay(unsigned int x) 通过嵌套循环实现延时。
外层循环x次,内层循环j=0~124 次,每次循环消耗约12个时钟周期(假设晶振为12MHz)。
当x=500时,总延时约为500ms
主程序逻辑
LED=0:P1.0输出低电平,LED点亮。
delay(500):保持点亮状态约500ms。
LED=1:P1.0输出高电平,LED熄灭。
delay(500):保持熄灭状态约500ms。
while(1) 循环使上述过程重复,实现LED以1Hz频率(亮灭各500ms)闪烁。
原创精品资源学科网独家享有版权,侵权必究!
学科网(北京)股份有限公司
学科网(北京)股份有限公司
学科网(北京)股份有限公司
学科网(北京)股份有限公司
�
a
b
c
d
e
f
g
dp
D0
D1
D2
D3
D4
D5
D6
D7
a
b
c
d
e
f
g
dp
$$