单片机考试题

更新时间:2023-10-23 14:26:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

一.填空

1 计算机的系统总线有地址总线、控制总线和数据总线。

2 MCS-51单片机访问外部存储器时,利用ALE信号锁存来自P0口的低8位地址信号。 3 MCS-51单片机8031中有2个16位的定时/计数器,可以被设定的工作方式有4种。 4 中断请求信号有电平触发和脉冲触发两种触发方式。 5 89C51单片机有片内ROM容量4KB,RAM容量128。

6 51有5个中断源,有2个中断优先级,优先级由软件填写特殊功能寄存器IP加以选择。

7 在89C51单片机初始化时,SP存放的是07H。

8 8.?某串行通信中有1个起始位,8个数据位和1个停止位,应选择的异步串行通信方式为方式1。

9 A/D转换器的三个重要指标是转换速度、分辨率和转换精度。 10 半导体存储器的最重要的两个指标是存储容量和存储速度。

二.选择题

1、MCS-51单片机外扩存储器芯片时,4个I/O口中用作数据总线的是( B )。 (A) P0和P2口 (B)P0口 (C)P2和P3口 (D)P2口 2、使用定时器T1时,有几种工作模式( C )。 (A)1种 (B)2种 (C)3种 (D)4种

3、如果8255端口A设置为方式2,则端口B设置为( A )。

(A)只可以方式0 (B)也可以方式2 (C)除方式2外,其它方式均可以 (D)任意方式

4、MCS-51单片机有片内ROM容量( A )。

(A) 4KB (B) 8KB (C) 128B (D) 256B 5、某种存储器芯片是8KB*4/片,那么它的地址线根数是( C )。 (A)11根 (B)12根 (C)13根 (D)14根

6、当MCS-51进行多机通讯时,串行接口的工作方式应选为( C )。 (A)方式0 (B)方式1 (C)方式2 (D)方式0或方式2 7、在中断服务程序中,至少应有一条( D )。

(A)传送指令 (B)转移指令 (C)加法指令 (D)中断返回指令

8、若MCS-51中断源都编程为同级,当它们同时申请中断时,CPU首先响应( B )。 (A) 1INT (B)0INT (C)T1 (D)T0

9、要使MCS-51能够响应定时器T1中断,串行接口中断,它的中断允许寄存器IE的内容应是( A )。

(A)98H (B)84H (C)42H (D)22H 10、MCS-51单片机的位寻址区位于内部RAM的(D)单元。

(A)00H—7FH (B)20H—7FH (C)00H—1FH (D)20H—2FH

三.简答题

1. 什么是单片机?

答:单片机是把微型计算机中的微处理器、存储器、I/O接口、定时器/计数器、串行接口、中断系统等电路集成到一个集成电路芯片上形成的微型计算机。因而被称为单片微型计算机,简称为单片机。

2. 80C51单片机内部有几个定时/计数器?它们由哪些功能寄存器组成?怎样

实现定时功能和计数功能?

答:80C51单片机内部有两个16位的可编程定时/计数器,由TH0,TL0,TH1,TL1,TMOD和TCON功能寄存器组成。通过TMOD中的C/T位选择对机器周期计数实现计数功能,选择对外部脉冲计数实现计数功能。 3. MCS-51单片机串行口有几种工作方式?各自特点是什么?

答:有四种工作方式,分别是方式0、方式1、方式2和方式3。其中: 方式0,称为同步移位寄存器方式,一般用于外接移位寄存器芯片扩展I/O接口。方式1,称为8位的异步通信方式,通常用于双机通信。 方式2和方式3,称为9位的异步通信方式,通常用于多机通信。 4. MCS-51单片机内部有几个定时/计数器?它们由哪些寄存器组成? 答:MCS-51单片机内部有两个16位可编程的定时/计数器,简称定时器0(T0)和定时器1(T1)。它们分别由方式寄存器TMOD、控制寄存器TCON和数据寄存器TH0、TL0,TH1、TL1组成。 5. 何谓总线?总线按功能可分为哪几种?

答:总线是连接多个设备或功能部件的一簇公共信号线,它是计算机各组成部件之间信息交换的通道。总线功能来划分又可分为地址总线、数据总线和控制总线三类。 二 操作题

1. 设系统时钟频率为12MHz,用定时计数器T0编程实现从P1.0输出周期为500us的方波。

解:采用中断处理的方式的程序C语言如下: #include // 包含特殊功能寄存器库 sbit p1_0=p1^0; void main() {

TMOD = 0x02; TH0=0x06; TL0=0x06; EA=1; ET0=1; while(1); }

void time0_int(void) interrupt 1 // 中断服务程序 {

p1_0 = !p1_0; }

2. 8051系统中,已知振荡频率为12MHz,用定时/计数器T1,实现从P1.1产生高电平宽度为10ms,低电平宽度为20ms的矩形波。要求C语言进行编程。 解:本题处理方式有多种,这里采用对定时/计数器T1形成10ms周期定时,用R2对10ms计数,当计到1,则对P1.1置1,当计到2和3,则对P1.1置0来实现。

解:C语言程序:

#include //包含特殊功能寄存 sbit P1_1=P1^1; char i; void main() {

TMOD=0x10; TH1=0xD8; TL1=0xf0; EA=1; ET1=1; i=0; TR1=1; while(1) {

if (i= =0) {P1_1=1;} if (i= =1) {P1_1=0;} if (i= =2) {P1_1=0;}

} ; }

void time0_int(void) interrupt 3 //中断服务程序 {

TH1=0xD8;TL1=0xf0; i++;

if (i= =3) {i=0;} }

3. 8051系统中,已知振荡频率为6MHz,用定时/计数器T1,实现从P1.1产生周期为2s的方波。要求用C语言进行编程。

解:从P1.1产生2s的方波,应产生500ms的周期性的定时,定时到对P1.1取反就可实现。由于定时时间较长,一个定时/计数器T1不能直接实现,采用定时/计数器T1产生周期性为10ms的定时,然后用一个寄存器R2对10ms计数100次来实现。系统时钟为12MHZ,定时/计数器T1定时10ms,计数值N为10000,只能选方式1,方式控制字为00010000B(10H),初值X:X=65536-10000=55536=1101100011110000B 则TH1=11011000B=D8H,TL1=11110000B=F0H。 定时/计数器T1采用中断处理方式。 C语言程序:

#include //包含特殊功能寄存器库 sbit P1_1=P1^1; char i; void main() {

TMOD=0x10; TH1=0xD8;TL1=0xf0; EA=1;ET1=1; i=0;

TR1=1; while(1); }

void time0_int(void) interrupt 3 //中断服务程序 {

TH1=0xD8;TL1=0xf0; i++;

if(i= =100) {P1_1=! P1_1;i=0;} }

本文来源:https://www.bwwdw.com/article/6vuf.html

Top