(完整版)51单片机基础知识及期末复习
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
单片机简答题部分(经典)
、什么叫堆栈?
RAM中专门开辟出来的一个区域,数据的存取是以"后进先出"的结构方式处
"后进先出"原则组织的一段内存区域。
、进位和溢出?
,则称为溢出。
、在单片机中,片内ROM的配置有几种形式?各有什么特点?
1) 掩膜(Msak)ROM型单片机:内部具有工厂掩膜编程的ROM,ROM中的程序只能由单片
ROM中的程序。掩膜ROM单片机适合于大批
ROM。
2) EPROM型单片机:内部具有紫外线可擦除电可编程的只读存储器,用户可以自行将程序写
EPROM中,也可以将EPROM中的信息全部擦除。擦去信息的芯片还可以
3) 无ROM型单片机:内部没有程序存储器,它必须连接程序存储器才能组成完整的应用系统。
ROM型单片机价格低廉,用户可根据程序的大小来选择外接程序存储器的容量。这种单
4) E2ROM型单片机:内部具有电可擦除叫可编程的程序存储器,使用更为方便。该类型目前比
5) OTP(One Time Programmable)ROM单片机:内部具有一次可编程的程序存储器,用户可以
、什么是单片机的机器周期、状态周期、振荡周期和指令周期?它们之间是什么关系?
M周期)构成,一个机器周期包含6个状态
(又称时钟周期,简称S周期),而一个状态周期又包含两个振荡周期(P1和P2,简称P周期)。
6个状态周期或12个振荡周期,即
。
、MCS-51单片机通常内部包含哪些主要逻辑功能部件?
51单片机通常由下列部件组成:一个8位CPU、一个片内振荡器及时钟电路、内部Flash Rom
256B的RAM、2个16位的定时/计数器、可寻址64KB片外数据存储器和64KB片外
64KB片外程序存储器空间的控制电路、4个8位并行I/O端口及一个可编程全双工
、MCS-51单片机的存储器从物理结构上可划分几个空间?
MCS-51系列单片机的存储器配置从物理结构上可分为:片内程序存储器、片外程序存储器、
64KB的程序存储器、片
256B的数据存储器以及片外64KB的数据存储器。
、存储器中有几个保留特殊功能的单元用做入口地址?分别作什么作用?
MCS-51系列单片机的存储器中有6个保留特殊功能单元,其中0000H为复位入口、0003H
0入口、000BH为T0溢出中断入口、0013H为外部中断1入口、001BH为T1溢出中
0023H为串行接口中断入口。
、MCS-51单片机片内256B的数据存储器可分为几个区?分别起什么作用?
MCS-51单片机片内数据存储器可分为二个区:00H~7FH单元组成的低128B的片内RAM
80H~FFH单元组成的高128B的专用寄存器区。其中低128B的RAM区又分为:00H~1FH单
20H~2FH单元为位寻址区、30H~7FH单元为用户RAM区。工作寄存器区可
RAM区可作堆栈和数据缓冲用。专用寄存器区又称特殊功能寄存器,使用
单元。
、MC
S-51单片机的P0~P3四个I/O端口在结构上有何异同?使用时应注意的事项?
MCS-51单片机的四个端口在结构上相同之处:P0~P3都是准双向I/O口,作输入时,必须
1”。不同之处;P0口的输出级与P1~P3口不相同,它无内部上拉电
P1~P3则带内部上拉电阻,可以提供拉电流输出。
P0口作通用I/O口输出使用时,需外接上拉电阻才可输出高电平;但作地址/数据总线时,
P1~P3口I/O输出时,均无需外接上拉电阻。
、存储器空间在物理结构上可划分为几个部分?
MCS-51存储器是采用将程序存储器和数据存储器分开寻址的结构,其存储器空间在物理结
、开机复位后,CPU使用是的哪组工作寄存器?它们的地址是什么?CPU如何确定和改变当前
CPU使用的是第0组工作寄存器。它们的地址是00H~07H。CPU通过对程序
PSW中RS1、RS0的设置来确定和改变当前工作寄存器组。如:RS1、RS0为00则指向第
组;为01则指向第1组;为10则指向第2组;为11则指向第3组。
、MCS-51的时钟周期、机器周期、指令周期的如何分配的?当振荡频率为8MHz时,一个单片
MCS-51的时钟周期是最小的定时单位,也称为振荡周期或节拍。一个机器周期包含12个时
1~4个机器周期。当振荡频率为
时,一个单片机时钟周期为0.125μs 。
、程序状态存储器PSW的作用是什么?常用状态标志有哪几位?作用是什么?
PSW是8位寄存器,用于作为程序运行状态的标志,其格式如下:
位地址 D7H D6H D5H D4H D3H D2H D1H D0H
D0H C AC F0 RS1 RS0 OV F1 P
CPU进行各种逻辑操作或算术运算时,为反映操作或运算结果的状态,把相应的标志位置1
0。这些标志的状态,可由专门的指令来测试,也可通过指令来读出。它为计算机确定程序的
PSW寄存器中各位的名称及文职如上所示,下面说明各标志的作用。
:奇偶标志。该位始终跟踪累加器A内容的奇偶性。如果有奇数个“1”,则置P为1,否则置0。
MCS-51的指令系统中,凡是改变累加器A中内容的指令均影响奇偶标志位P。
:用户标志。由用户置位或复位。
:溢出标志。有符号数运算时,如果发生溢出时,OV置1,否则清0。对于一个字节的有符
7位有效位,能表示—128~~+127之间的数;如果运算
就会发生溢出,此时,OV=1,否则OV=0。此外,在乘法运算中,OV=1
255;在除法运算中,OV=1表示除数为0。
、RS1:工作寄存器组选择位,用以选择指令当前工作的寄存器组。由用户用软件改变RS0
RS1的组合,以切换当前选用的工作寄存器组,其组合关系如下。
RS0 寄存器组 片内RAM地址
0 0 第0组 00H~07H
0 1 第1组 08H~0FH
1 0 第2组 10H~17H
1 1 第3组 18H~1FH
、EA/V
引脚有何功用?8031的引脚应如何处理?为什么?
EA/V
是双功能引脚,功能如下:
1) EA接高电平时,在低4KB程序地址空间(0000H~0FFFH),CPU执行片内程序存储器的指
4KB空间(1000H~FFFFH)时,CPU将自动执行片外程序存储器的
2) EA接低电平时,CPU只能执行外部程序存储器的指令。
单片机内部无ROM,必须外接程序存储器。因此,8031的EA引脚必须接低电平。
8751单片机内部的 EPROM编程时,此引脚V
外接+12V电压,用于固化EPROM程
、单片机有哪几个特殊功能寄存器?各在单片机的哪些功能部件中?
MCS-51单片机内部有21个特殊功能寄存器,在物理上是分散在片内各功能部件中,在数学
80H~FFH中,以便能使用统一的直接寻址方式来访问。
1)CPU:ACC、B、PSW、SP、DPTR(由DPL和DPH两个8位寄存器组成);
2)中断系统:IP、IE;
3)定时器/计数器:TMOD、TCOM、TL0、TH0、TL1、TH1;
4)并行I/O口:P0、P1、P2、P3;
5)串行口:SCON、SBUF、PCON。
、什么是指令?什么是程序?简述程序在计算机中的执行过程。
答:指令是控制计算机进行某种指令的命令。CPU就是根据指令来指挥和控制计算机各部分协
PC中的植从程序存储器读出现行指令,送到指令寄存器。
取出操作数,然后按照操作码的性质对操作数进行操作,即执行指令。
、什么叫寻址方式?MCS51有几种寻址方式?
MCS51的寻址方式有:立即数寻址、直接寻址、寄存器
、 SJMP(短转移)指令和AJMP(绝对转移)指令的主要区别。
SJMP提供了以SJMP的下一条指令的起始地址为中心的256字节范围的转移(-128~+127),
的转移目标地址必须在与AJMP的下一条指令的第一字节相同的2KB区的程序储存器中。短
SJMP方便了PC可重定位编码,但转移范围小。而ASJMP转移范围大,
AJMP指令只能位于2KB区的最后2个字节处时,才可跳到下一个区去。因此
AJMP指令来代替SJMP指令是有条件的,也就是目标地址必须与它下面的指令存放地址在同一
2KB区域内。
、中断服务子程序与普通子程序有哪些异同之处?
答:相同点:都是让CPU从主程序转去实行子程序,执行完毕后又返回主程序。不同点:中断服
RETI结束,而一般子
RET结束。RETI除了将短点弹回PC动作之外,还要清除对应的中断优先标志位(片内不可
,以便新的中断请求能被响应。
、MCS-51响应中断的条件是什么?CPU响应中断后,CPU要进行哪些操作?不同的中断源的中
答: CPU响应中断的条件如下:
CPU中断是开放的,即中断总允许位EA=1,允许所有中断源申请中断。
1,即此中断源可以向CPU
申请中断。
CPU响应中断的基本条件。如果上述条件不足,则CPU一般会影响中断。但是,若有
CPU正处在为一个同级或高级的中断服务中。
所执行的指令的最后一个机器周期。作此限制的目的在与使当前指令执行
RET、RETI)或访问IE、IP的指令。因为按MCS-51中断系统的特性
CPU将丢弃中断查询结果;否则,将在紧接着的下一个机器周期内执行
响应中断后,保护断点,硬件自动将(PC)→堆栈,寻找中断源,中断矢量→PC,程序
INT0=0003H,T0=000BH,INT1=0013H,T1=001BH,串行接
=0023H。
、单片机对中断优先级的处理原则是什么?
INT0→T0→INT1→T1→串行接口
、MCS-51的外部中断有哪两种触发方式?他们对触发脉冲或电平有什么要求?
有电平触发和脉冲触发。电平方式是低电平有效。只要单片机在中断要求引入端INT0和INT1
中断请求信号的高电平状态和低电平状态都应至少维持一个周期以保
、什么是中断和中断系统?其主要功能是什么?
CPU正在处理某件事情的时候,外部发生的某一件事情请求CPU迅速去处理,于是,CPU
(1)使计算机具有实时处理功能,能对外界异步发生的事件作出及时的处理。(2)完全
CPU在查询方式中的等待现象,大大提高了CPU的工作效率。(3)实现实时控制。
、MCS-51有哪些中断源?
MCS-51有如下中断源:INTO:外部中断0请求,低电平有效(由P3.2输入);INT1:外
1请求,低点平有效(由P3.3输入);TO:定时器/计数器0溢出中断请求;T1:定时器/计
1溢出中断请求;TX/RX:串行借口中断请求。通过对特殊功能积存器TCON、SCON、IE、IP的
、说明外部中断请求的查询和响应过程。
当CPU执行主程序第K条指令时,外设向CPU发出中断请求,CPU接到中断请求信号并在
CPU在每一个S5P2
CPU在下一个机器周期S6期间按优先级顺序查询中断标志,如查询到
1,将在接下来的机器周期S1期间按优先级进行中断处理,中断系统通过硬件自动
PC,以便进入相应的中断服务程序。中断服务完毕后,CPU返回到主
K+1条指令继续执行。
、MCS-51响应中断的条件?
(1)有中断源发出中断请求。
2)中断总允许位EA=1,即CPU开中断。
3)申请中断的中断源的中断允许位为1,即中断没有被屏蔽。
4)无同级或更高级中断正在服务。
5)当前指令周期已经结束。
6)若现行指令为RETI或访问IE或IP指令时,该指令以及紧接着的另一条指令已执行完毕。
、简述MCS-51单片机的中断响应过程。
CPU在每个机器周期S5P2期间顺序采用每个中断源,CPU在下一个机器周期S6期间按优
如查询到某个中断标志为1,将在接下来的机器周期S1期间按优先级进行
PC,以便进入相应的中断
服务程序。
MCS-51首先置位相应的中断“优先级生效”触发器,然后由硬件执行一条长调用
把当前的PC值压入堆栈,以保护断点,再将相应的中断服务的入口地址送入PC,于是CPU
对于有些中断源,CPU在响应中断后会自动清除中断标志。
、在执行某一中断源的中断服务程序时,如果有新的中断请求出现,试问在什么情况下可响应新
6个条件可响应新的中断请求:有中断源发出中断请求、中断总允许位EA=1,即
开中断、申请中断的中断源的中断允许位为1,即中断没有被屏蔽、无同级或更高级中断正在
RETI或访问IE或IP指令时,该指令以及紧接着
、MCS-51单片机外部中断源有几种触发中断请求的方法?如何实现中断请求?
CPU在每个机器周期的S5P2期间采样外
IE1(IE0)置“1”,申请中断;若为高电平,则IE1(IE0)
CPU在每个机器周期的S5P2期间采样外部中断请求引脚的输入电平。如果
IE1(IE0)置1,申请中断;否则,IE1(IE0)置0。
、什么是中断优先级?中断优先级处理的原则是什么?
、中断响应过程中,为什么通常要保护现场?如何保护?
因为一般主程序和中断服务程序都可能会用到累加器、PSW寄存器和其他一些寄存器。CPU
用到上述寄存器时,就会破坏它原来存在寄存器中的内容;一旦中断返回,
PSW寄存器及其他一些与主程序有关的寄存器压入堆栈。在
CPU不响应新
、MCS-51定时器有哪几种工作模式?有何区别?
0,模式1,模式2,模式3。
(1)模式0:选择定时器(T0或T1)的高8位和低5位组成的一个13位定时器/计数器。TL低5
TH进位,TH溢出时向中断标志位TF0进位,并申请中断。
定时时间t=(213-初值)*振荡周期*12;计数长度为213=8192个外部脉冲。
(2)模式1:与模式0的唯一区别是寄存器TH与TL以全部16位参与操作。
定时时间t=(216-初值)*振荡周期*12;计数长度为216=65536个外部脉冲。
(3)模式2:把TL0与TL1配置成一个可以自动重装载的8位定时器/计数器。TL用作8位计数
TH用以保存初值。TL计数器溢出是不仅使TF0置1,而且还自动将TH中的内容装载到TL中。
定时时间t=(28-初值)*振荡周期*12;计数长度为256个外部脉冲。
(4)模式3:对T0和T1不大相同。
若T0设为模式3,TL0和TH0被分为两个相互独立的8位计数器。TL0为8位计数器,功能与
0和模式1相同,可定时可计数。
仅用于作简单的内部定时功能,它占用了定时器T1的控制位TR1和中断标志位TF1,启动
TR1的控制。
T1无工作模式3,但T0在工作模式3时T1仍可设置为模式0~2。
、串行数据传送的主要优点和用途是什么?
答:串行数据传送是将数据按位进行传送的方式。其主要优点是所
需的传送线根数少,对于远距
、简述串行接口接收和发送数据的过程。
99H)两个物理空间的特殊功能寄存器SBUF进行读
SBUF发“写”命令时(执行“MOV SBUF,A“指令),即向发送缓冲器SBUF装
TXD引脚向外发送一帧数据,发送完便使发送中断标志位T1=1。在满足串行接口接收
RI(SCON。)=0的条件下,置允许接收位REN(SCON.4)=1,就会接收一帧数据进
并装载到接收SBUF中,同时使RI=1。当发读SBUF命令时(执行“MOV A,SBUF”
,便由接收缓冲器SBUF取出信息通过MCS-51内部总线送CPU。
、MCS-51串行接口有几种工作方式?
MCS-51串行接口有四种工作方式;方式0(8位同步移位寄存器),方式1(10位异步收发),
2(11位异步收发),方式3(11位异步收发)。
、MCS-51中SCON的SM2、TB8、RB8有何作用?
MCS-51中SCON的SM2是多机通信控制位,主要用于方式2和方式3。若置SM2=1,则允
是发送数据的第9位,在方式2或方式3中,根据发送数据的需求有软件置位或复位。它
是接收数据的第9位,在方式2或方式3中,接收到的第9位数据放在RB8位。它或是约定
/偶校验位,或是约定的地址/数据标识位。
、简述单片机多机通信的原理。
MCS-51主机与多片从机通信时,所有从机的SM2位置1。主机首先发送的一帧数据
9位1,所有的接收到数据后,将其中第9位装入RB8中。各个从
9位数据(RB8中)的值来决定从机可否再接收主机的信息。若(RB8)=0,说明
RI=0,信息丢失;若(RB8)=1,说明是地址帧,数据装入SBUF
RI=1,中断所有从机,只有被寻址的目标从机清除SM2(SM2=0),以接收主机发来的一帧数
。其他从机仍然保持SM2=1。
、串行通信的总线标准是什么?有哪些内容?
EIA)正式公布的串行总线接口标准有RS—232C、RS—422、RS—423
RS—485等。在异步串行通信中应用最广的标准总线是RS—232C。它包括了按位串行传输的电
<15m)或
RS—422、RS—485标准时,通信距离可达1000m。
、简述单片机系统扩展的基本原则和实现方法。
(1)以P0口作地址/数据总线,此地址总线是系统的低8位地址线。(2)以P2口的口线作
(不固定为8位,需要几位就从P2口引出几条口线。)(3)控制信号线:
ALE作为地址锁存的选通信号,以实现低8位地址线。
PSEN信号作为扩展程序存储器的读选通信号。
EA信号作为外程序存储器的选择信号。
RD和WR作为扩展数据存储器和I/O端口的读写选通信号,执行MOVX指令时,这两
、8255有哪几种工作方式?怎样选择其工作方式?
8255有3种工作方式,即方式0、方式1、方式2。
方式0(基本输入/输出方式):这种方式不需要任何选通信号。A口、B口及C口的高4位和
4位都可以被设定输入或
输出。作为输出口时,输出的数据被封锁;B口和C口作为输入口时,
方式1(选通输入/输出方式):在这种工作方式下,A、B和C三个口将分为两组。A组包括
口和C口的高4位,A口可由编程设定为输入口或输出口,C口的高4位则用来作为输入/输出操
B组包括B口和C口的低4位,B口可由编程设定为输入口或输出口,C口
4位则用来作为输入/输出操作的控制和同步信号。A口和B口的输出数据都被锁存。
方式2(双向数据传送方式):在这种方式下,A口为8位双向数据口,C口的PC3~PC7用来
/输出的控制同步信号。
的工作方式选择是通过对控制口输入控制字(或称命令字)的方式实现的。
、8155有哪几种工作方式?怎样进行选择?
8155有3种工作方式,即通用I/O口、片外256B的RAM及定时器/计数器方式。
I/O口时,将IO/M引角置高电平,I/O工作方式选择是通过对8155内部命令寄存
256B的RAM时,将IO/M引角置低电平。这时8155内部的RAM只能作片外RAM
CE(高位地址译码)和AD
~AD7决定,应与应用系统中其他数据存储
/计数器使用时,将IO/M引角置高电平,然后分别选择定时器/计数器的高、低8
8位的搞位的设置可定义4种输出波形。高8位中的低6位和低8位寄存
8位用于放14位计数器的初值。
、什么是D/A转换器?简述T形电阻网络转换器的工作原理。
此时,就需要将数字量转换为相应的模拟量,以便操纵控制对象。这一过程即为“数/模转换”
(Digit to Analog)。能实现D/A转换的期间称为D/A转换器或DAC。
每位代码都有一定的权。为了将数字量转换成模拟量,
然后根据叠加原理将各代码对应的模拟输出
D/A转换。
D/A转换,需要使用解码网络。解码网络的主要形式有二进制权电阻解码网络和T
形电阻网络整个电路是有相同的电路环节所组成的,每节有二个电阻(R和2R)、一个开关,
T形解码网络。此电路采用了分
、波特率、比特率和数据传送速率的含意各是什么?
3种:
1)波特率——每秒传送多少个信号码元(或每秒信号码元变换的总个数),单位是波特(Bd)。
2)比特率——每秒传送多少个二进制位(或每秒传送二进制码元的个数),单位是b/s。
3)数据传送速率(或字符传送速率)——每秒传送多少个字符(或单位时间内平均数据传移速
,单位是字符/秒。