单片机复习题集详解
第1章 思考题及习题
一、填空
1. 除了单片机这一名称之外,单片机还可称为 或 。
2.单片机与普通微型计算机的不同之处在于其将 、 、和 三部分,通过内部 连接在一起,集成于一块芯片上。
- AT89S51单片机工作频率上限为 MHz。
- 专用单片机已使系统结构最简化、软硬件资源利用最优化,从而大大降低 和提高 。
二、单选
- 单片机内部数据之所以用二进制形式表示,主要是
A.为了编程方便 B.受器件的物理性能限制
C.为了通用性 D.为了提高运算速度
- 在家用电器中使用单片机应属于微计算机的 。
A.辅助设计应用 B.测量、控制应用
C.数值计算应用 D.数据处理应用
- 下面的哪一项应用,不属于单片机的应用范围。
A.工业控制 B.家用电器的控制 C.数据库管理 D.汽车电子设备
三、判断对错
- STC系列单片机是8051内核的单片机。
- AT89S52与AT89S51相比,片内多出了4KB的Flash程序存储器、128B的RAM、1个中断源、1个定时器(且具有捕捉功能)。
- 单片机是一种CPU。
- AT89S52单片机是微处理器。
- AT89S51片内的Flash程序存储器可在线写入(ISP),而AT89C52则不能。
- 为AT89C51单片机设计的应用系统板,可将芯片AT89C51直接用芯片AT89S51替换。
- 为AT89S51单片机设计的应用系统板,可将芯片AT89S51直接用芯片AT89S52替换。
- 单片机的功能侧重于测量和控制,而复杂的数字信号处理运算及高速的测控功能则是DSP 的长处。
四、简答
- 微处理器、微计算机、微处理机、CPU、单片机、嵌入式处理器它们之间有何区别?
- AT89S51单片机相当于MCS-51系列单片机中的哪一型号的产品?“S”的含义是什么?
- 单片机可分为商用、工业用、汽车用以及军用产品,它们的使用温度范围各为多少?
- 解释什么是单片机的在系统编程(ISP)与在线应用编程(IAP)。
- 什么是“嵌入式系统”? 系统中嵌入了单片机作为控制器,是否可称其为“嵌入式系统”?
- 嵌入式处理器家族中的单片机、DSP、嵌入式微处理器各有何特点?它们的应用领域有何不同?
第2章
一、填空
- 在AT89S51单片机中,如果采用6MHz晶振,一个机器周期为 。
- AT89S51单片机的机器周期等于 个时钟振荡周期。
- 内部RAM中,位地址为40H、88H的位,该位所在字节的字节地址分别为 和 。
- 片内字节地址为2AH单元最低位的位地址是 ;片内字节地址为A8H单元的最低位的位地址为 。
- 若A中的内容为63H,那么,P标志位的值为 。
- AT89S51单片机复位后,R4所对应的存储单元的地址为 ,因上电时PSW= 。
这时当前的工作寄存器区是 组工作寄存器区。
- 内部RAM中,可作为工作寄存器区的单元地址为 H~ H。
- 通过堆栈操作实现子程序调用时,首先要把 的内容入栈,以进行断点保护。调
用子程序返回指令时,再进行出栈保护,把保护的断点送回到 ,先弹出的是原来 中的内容。
- AT89S51单片机程序存储器的寻址范围是由程序计数器PC的位数所决定的,因为AT89S51单片机的PC是16位的,因此其寻址的范围为 KB。
- AT89S51单片机复位时,P0~P3口的各引脚为 电平。
- AT89S51 单片机使用片外振荡器作为时钟信号时,引脚 XTAL1 接 ,引脚 XTAL2
的接法是 。
- AT89S51单片机复位时,堆栈指针SP中的内容为 ,程序指针PC中的内容为
。
二、单选
- 程序在运行中,当前PC的值是 。
A.当前正在执行指令的前一条指令的地址 B.当前正在执行指令的地址。
C.当前正在执行指令的下一条指令的首地址 D.控制器中指令寄存器的地址。
- 判断下列哪一种说法是正确的?
A.PC是一个可寻址的寄存器 B.单片机的主频越高,其运算速度越快。
C.AT89S51单片机中的一个机器周期为1µs
D.特殊功能寄存器SP内存放的是堆栈栈顶单元的内容。
三、判断对错
- 使用AT89S51单片机且引脚EA =1时,仍可外扩64KB的程序存储器。
- 区分片外程序存储器和片外数据存储器的最可靠的方法是看其位于地址范围的低端还是高端。
- 在AT89S51单片机中,为使准双向的I/O口工作在输入方式,必须事先预置为1。
- PC可以看成是程序存储器的地址指针。
- AT89S51单片机中特殊功能寄存器(SFR)使用片内RAM的部份字节地址。
- 片内RAM的位寻址区,只能供位寻址使用,而不能进行字节寻址。
- AT89S51 单片机共有 26 个特殊功能寄存器,它们的位都是可以用软件设置的,因此,都是可以位寻址的。
- 堆栈区是单片机内部的一个特殊区域,与RAM无关。
- AT89S51单片机进入空闲模式,CPU停止工作。片内的外围电路(如中断系统、串行口和定时器)仍将继续工作。
- AT89S51单片机不论是进入空闲模式还是掉电运行模式后,片内RAM和SFR中的内容均保持原来的状态。
- AT89S51单片机进入掉电运行模式,CPU和片内的外围电路(如中断系统、串行口和定时器)均停止工作。
- AT89S51单片机的掉电运行模式可采用响应中断方式来退出。
四、简答
- AT89S51单片机片内都集成了哪些功能部件?
|
|
|
|
|
|
|
|
|
|
|
|
- AT89S51的64KB程序存储器空间有5个单元地址对应AT89S51单片机 5 个中断源的中断入口地址,请写出这些单元的入口地址及对应的中断源。
- 说明AT89S51单片机的EA 引脚接高电平或低电平的区别。
5. AT89S51单片机运行时程序出现“跑飞”或陷入“死循环’时,说明如何利用看门狗来摆脱困境的工作原理。
第3章
一、填空
1.与汇编语言相比, C51 语言具有 、 、 、 等优点。
2.C51语言头文件包括的内容有8051单片机 ,以及 的说明。
3.C51提供了两种不同的数据存储类型 和 来访问片外数据存储区。
4.C51提供了code存储类型来访问 。
5.对于SMALL存储模式,所有变量都默认位于8051单片机 。
6.C51用“*”和“&”运算符来提取指针变量的 和变量的 。
二、判断对错
1.C51语言处理单片机的中断是由专门的中断函数来处理的。
2.在C51语言中,函数是一个完成一定相关功能的执行代码段,它与另外两个名词“子程序” 和“过程”用来描述同样的事情。
3.在C51语言编程中,编写中断服务函数时需要考虑如何进行现场保护、阻断其他中断、返回时自动恢复现场等处理的程序段的编写。 4.全局变量是在某一函数中存在的变量,它只在该函数内部有效。
5.全局变量可使用static关键词进行定义,由于全局变量一直存在,占用了大量的内存单元,且加大了程序的耦合性,不利于程序的移植或复用。
6.绝对地址包含头文件absacc.h定义了几个宏,用来确定各类存储空间的绝对地址。
三、简答
1.C51在标准C的基础上,扩展了哪几种数据类型?
2.C51有哪几种数据存储类型?其中数据类型“idata,code,xdata,pdata”各对应AT89S51 单片机的哪些存储空间
3.bit与 sbit定义的位变量有什么区别?
第5章
一、填空
1. AT89S51单片机任何一个端口要想获得较大的驱动能力,要采用 电平输出。
2.检测开关处于闭合状态还是打开状态,只需把开关一端接到I/O端口的引脚上,另一端接地,然后通过检测 来实现。
- “8”字型的 LED 数码管如果不包括小数点段共计 段,每一段对应一个发光二极管,有 和 两种。
- 对于共阴极带有小数点段的数码管,显示字符“6”(a段对应段码的最低位)的段码为
,对于共阳极带有小数点段的数码管,显示字符“3”的段码为 。
- 已知8段共阳极LED数码显示器要显示某字符的段码为A1H(a段为最低位),此时显示器显示的字符为 。
- LED 数码管静态显示方式的优点是:显示 闪烁,亮度 , 比较容易,但是占用的 线较多。
- 当显示的LED数码管位数较多时,一般采用 显示方式,这样可以降低 , 减少 的数目。
- LCD 1602是 型液晶显示模块,在其显示字符时,只需将待显示字符的 由单片机写入LCD 1602的显示数据RAM(DDRAM),内部控制电路就可将字符在LCD上显示出来。
- LCD 1602 显示模块内除有 字节的 RAM 外,还有 字节的自定义 ,用户可自行定义 个5×7点阵字符。 10.当按键数目少于8个时,应采用 式键盘。当按键数目为64个时,应采用 式键盘。
11.使用并行接口方式连接键盘,对独立式键盘而言,8根I/O口线可以接 个按键,而对矩阵式键盘而言,8根I/O口线最多可以接 个按键。
12.LCD 1602 显示一个字符的操作过程为:首先 ,然后 ,随后 ,最后 。
二、判断对错
1.P0口作为总线端口使用时,它是一个双向口。
2.P0口作为通用I/O端口使用时,外部引脚必须接上拉电阻,因此它是一个准双向口。
3.P1~P3口作为输入端口用时,必须先向端口寄存器写入1。
4.P0~P3口的驱动能力是相同的。
5.当显示的LED数码管位数较多时,动态显示所占用的I/O口多,为节省I/O口与驱动电路的数目,常采用静态扫描显示方式。
6.LED数码管动态扫描显示电路只要控制好每位数码管点亮显示的时间,就可造成“多位同时亮”的假象,达到多位LED数码管同时显示的效果。
7.使用专用的键盘/显示器芯片, 可由芯片内部硬件扫描电路自动完成显示数据的扫描刷新,和键盘扫描。
8.控制LED点阵显示器的显示,实质上就是控制加到行线和列线上的电平编码来控制点亮某些发光二极管(点),从而显示出由不同发光的点组成的各种字符。
9.16×16点阵显示屏是由4个4×4的LED点阵显示器组成。
10.LCD 1602液晶显示模块,可显示2行,每行16个字符。
11.HD7279是可自动获取按下键盘按键的键号以及自动对LED数码管进行动态扫描显示用于键盘/LED数码管的专用接口芯片可,为并行接口芯片。
12.LED数码管的字型码是固定不变的。
13.为给扫描法工作的8×8的非编码键盘提供接口电路,在接口电路中需要提供两个8位并行的输入口和一个8位并行的输出口。
14.LED数码管工作于动态显示方式时,同一时间只有一个数码管被点亮。
15.动态显示的数码管,任一时刻只有一个 LED 数码管处于点亮状态,是 LED 的余辉与人眼的“视觉暂留”造成数码管同时显示的“假象”。
三、简答
1.分别写出表5-1中共阴极和共阳极LED数码管仅显示小数点“.”的段码。
3. 非编码键盘分为独立式键盘和矩阵式键盘,什么场合用?第6章
一、填空
1.外部中断1的中断入口地址为 。定时器T1的中断入口地址为 。
2.若(IP)=00010100B,则优先级最高者为 ,最低者为 。
3.AT89S51 单片机响应中断后,产生长调用指令 LCALL,执行该指令的过程包括:首先把
的内容压入堆栈,以进行断点保护,然后把长调用指令的16位地址送入 ,使程序执行转向 中的中断地址区。
4.AT89S51单片机复位后,中断优先级最高的中断源是 。
5.当AT89S51单片机响应中断后,必须用软件清除的中断请求标志是 。
二、单选
1.下列说法错误的是( )。
- 同一级别的中断请求按时间的先后顺序响应
- 同一时间同一级别的多中断请求,将形成阻塞,系统无法响应
- 低优先级中断请求不能中断高优先级中断请求,但是高优先级中断请求能中断低优先级中断请求
- 同级中断不能嵌套
2.在AT89S51的中断请求源中,需要外加电路实现中断撤销的是( )。
A. 电平方式的外部中断请求
B.跳沿方式的外部中断请求
C.外部串行中断
D.定时中断
3.中断查询确认后,在下列各种AT89S51单片机运行情况下,能立即进行响应的是( )。
A.当前正在进行高优先级中断处理
B.当前正在执行RETI指令 C.当前指令是MOV A,R3 D.当前指令是DIV指令,且正处于取指令的机器周期
4.下列说法正确的是( )。
- 各中断源发出的中断请求信号,都会标记在AT89S51的IE寄存器中
- 各中断源发出的中断请求信号,都会标记在AT89S51的TMOD寄存器中
- 各中断源发出的中断请求信号,都会标记在AT89S51的IP寄存器中
- 各中断源发出的中断请求信号,都会标记在AT89S51的TCON、SCON寄存器中
三、判断对错
1.定时器T0中断可以被外部中断0中断。
2. 必须有中断源发出中断请求,并且CPU开中断,CPU才可能响应中断。
3.AT89S51单片机中的同级中断不能嵌套。
4.同为高中断优先级,外部中断0能打断正在执行的外部中断1的中断服务程序。
5.中断服务子程序可以直接调用。
6.在开中断的前提下,只要中断源发出中断请求,CPU就会立刻响应中断。
四、简答
1.中断服务子程序与普通子程序有哪些相同和不同之处?
3.中断响应需要满足哪些条件?
第7章
一、填空
1.如果采用晶振的频率为3MHz,定时器/计数器Tx(x=0,1)工作在方式0、1、2下,其方式0的最大定时时间为 ,方式1的最大定时时间为 ,方式2的最大定时时间为 。
2.定时器/计数器用作计数器模式时,外部输入的计数脉冲的最高频率为系统时钟频率的 。
3.定时器/计数器用作定时器模式时,其计数脉冲由 提供,定时时间与 有关。
4.定时器/计数器T1测量某正单脉冲的宽度,采用 方式可得到最大量程?若时钟频率为6MHz,求允许测量的最大脉冲宽度为 。
- 定时器 T2 有 3 种工作方式: 、 和 ,可通过对寄存器 中的相关位进行软件设置来选择。
- AT89S52单片机的晶振为6MHz,若利用定时器T1的方式1定时2ms,则(TH1)= ,
(TL1)= 。
二、单选
1.定时器T0工作在方式3时,定时器T1有 种工作方式。
A.1种 B.2种 C.3种 D.4种
- 定时器T0、T1工作于方式1时,其计数器为 位。
A.8位 B.16位 C.14位 D.13位
- 定时器T0、T1的GATEx=1时,其计数器是否计数的条件 。
A. 仅取决于TRx状态 B. 仅取决于GATE位状态
C. 是由TRx和INT x两个条件来共同控制 D. 仅取决于INT x的状态
- 定时器T2工作在自动重装载方式时,其计数器为 位。
A.8位 B. 13位 C.14位 D. 16位
- 要想测量INT0 引脚上的正单脉冲的宽度,特殊功能寄存器TMOD的内容应为 。
A.87H B. 09H C.80H D. 00H 三、判断对错
1.下列关于T0、T1的哪些说法是正确的。
A.特殊功能寄存器SCON,与定时器/计数器的控制无关。
B.特殊功能寄存器TCON,与定时器/计数器的控制无关。
C.特殊功能寄存器IE,与定时器/计数器的控制无关。
D.特殊功能寄存器TMOD,与定时器/计数器的控制无关。
2.定时器 T0、T1 对外部脉冲进行计数时,要求输入的计数脉冲的高电平或低电平的持续时间不小于1个机器周期。特殊功能寄存器SCON与定时器/计数器的控制无关。
3.定时器T0、T1对外部引脚上的脉冲进行计数时,要求输入的计数脉冲的高电平和低电平的持续时间均不小于2个机器周期。
四、简答
1.定时器/计数器T1、T0的工作方式2有什么特点?适用于哪些应用场合?
2.THx与TLx(x =0,1)是普通寄存器还是计数器?其内容可以随时用指令更改吗?更改后的新值是立即刷新还是等当前计数器计满后才能刷新?
3.如果系统的晶振的频率为 24MHz,定时器/计数器工作在方式 0、1、2 下,其最大定时时间各为多少?
4.定时器/计数器Tx(x=0,1)的方式2有什么特点?适用于哪些应用场合?
5.一个定时器的定时时间有限,如何用两个定时器的串行定时来实现较长时间的定时?
6.当定时器T0用于方式3时,应该如何控制定时器T1的启动和关闭?
7.THx与TLx(x=0,1)是普通寄存器还是计数器?其内容可以随时用指令更改吗?更改后的新值是立即刷新还是等当前计数器计满后才能刷新?
第8章 思考题及习题8参考答案
一、填空
1、AT89S51的串行异步通信口为 (单工/半双工/全双工)。
- 串行通信波特率的单位是 。
- AT89S51的串行通信口若传送速率为每秒120帧,每帧10位,则波特率为
4.串行口的方式0的波特率为 。
5.AT89S51单片机的通讯接口有 和 两种型式。在串行通讯中,发送时要把 数据转换成 数据。接收时又需把 数据转换成 数据。
6.当用串行口进行串行通信时,为减小波特率误差,使用的时钟频率为 MHz。
7.AT89S51单片机串行口的4种工作方式中, 和 的波特率是可调的,与定时器
/计数器T1的溢出率有关,另外两种方式的波特率是固定的。
8.帧格式为1个起始位,8个数据位和1个停止位的异步串行通信方式是方式 。
9.在串行通信中,收发双方对波特率的设定应该是 的。
10.串行口工作方式1的波特率是 。
二、单选
1.AT89S51的串行口扩展并行I/O口时,串行接口工作方式选择 。
A. 方式0 B.方式1 C. 方式2 D.方式3
2. 控制串行口工作方式的寄存器是 。
A.TCON B.PCON C. TMOD D.SCON
三、判断对错
1.串行口通信的第9数据位的功能可由用户定义。
2.发送数据的第9数据位的内容是在SCON寄存器的TB8位中预先准备好的。 3.串行通信方式2或方式3发送时,指令把TB8位的状态送入发送SBUF中。
4.串行通信接收到的第9位数据送SCON寄存器的RB8中保存。
5.串行口方式1的波特率是可变的,通过定时器/计数器T1的溢出率设定。
- 串行口工作方式1的波特率是固定的,为fosc/32。
- AT89S51单片机进行串行通信时,一定要占用一个定时器作为波特率发生器。
- AT89S51单片机进行串行通讯时,定时器方式2能产生比方式1更低的波特率。
- 串行口的发送缓冲器和接收缓冲器只有 1 个单元地址,但实际上它们是两个不同的寄存器。
四、简答
1.在异步串行通信中,接收方是如何知道发送方开始发送数据的?
2.AT89S51单片机的串行口有几种工作方式?有几种帧格式?各种工作方式的波特率如何确定?
3.假定串行口串行发送的字符格式为1个起始位、8个数据位、1个奇校验位、1个停止位,请画出传送字符“B”的帧格式。
4.为什么定时器/计数器T1用作串行口波特率发生器时,常采用方式2?若已知时钟频率、串行通信的波特率,如何计算装入T1的初值?
5.某AT89S51单片机串行口,传送数据的帧格式由1个起始位(0)、7个数据位、1个偶校
验和1个停止位(1)组成。当该串行口每分钟传送1 800个字符时,试计算出它的波特率。
设计题
硬件:每个元件,每个引脚,每一根连线;一、例5-1 软件:每条语句,每个赋值。
1.能绘制图5-2,知道每根连线的作用、每个符号的含义,每个引脚的功能和操作方法;
2.能理解、掌握、改编例5-1、例5-2 中出现的全部代码及注释。
二、例5-3、5-4
1.能绘制图5-3和例5-4,知道每根连线的作用、每个符号的含义,每个引脚的功能和操作方法;
2.能理解、掌握、改编例5-3、例5-4 中出现的全部代码及注释。
三、例5-5、例5-6
1.能绘制图5-6和例5-8,知道每根连线的作用、每个符号的含义,每个引脚的功能和操作方法;
2.能理解、掌握、改编例5-5、例5-6 中出现的全部代码及注释。
四、例5-13、例5-14
1.能绘制图5-26和例5-27,知道每根连线的作用、每个符号的含义,每个引脚的功能和操作方法;
2.能理解、掌握、改编例5-13、例5-14 中出现的全部代码及注释。
五、例6-3
1.能绘制图6-10,知道每根连线的作用、每个符号的含义,每个引脚的功能和操作方法; 2.能理解、掌握图6-3、图6-4、图6-5、图6-6、图6-7中每一位的含义,能改编例6-3中出现的全部代码及注释。
六、例7-1、例7-4
1.能绘制图 7-13、7-18,知道每根连线的作用、每个符号的含义,每个引脚的功能和操作方法;
2.能理解、掌握图7-2、图7-3中每一位的含义,能改编例7-1、例7-4中出现的全部代码
及注释。
七、例8-4
1.能绘制图8-27,知道每根连线的作用、每个符号的含义,每个引脚的功能和操作方法;
2.能理解、掌握图8-7、图8-8、中每一位的含义,能改编例8-4中出现的全部代码及注释。
八、所有做过的实验
作者:慌糖