51单片机期末复习题

更新时间:2023-12-20 12:15:01 阅读量: 教育文库 文档下载

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

51单片机期末复习题

1.51系列单片机内部有哪些功能部件?

1.一个8位的微处理器

2.片内数据存储器RAM为128B,有21个特殊功能寄存器 3.片内程序存储器Flash ROM有4KB

4.可寻址片内外统一编址的64KB的ROM,可寻址外片64KB的RAM 5.4个8位并行I/O

2.写出51单片机存储空间的配置(程序存储和数据存储)。

从物理空间看,四个存储器地址空间:

片内数据存储器(00H-7FH 128字节)、片外数据存储器(00H-FFH 256

字节)

片内程序存储器(0000H-0FFFH 4K)、片外程序存储器(0000H-FFFFH

64K)

从逻辑上看,MCS-51有三个存储器空间:

片内数据存储器、片外数据存储器,片内、片外统一编址的程序存储器

不同:程序存储器用来存放编制好的始终保留的固定程序和表格常数;外部数据存储器存放随机读写的数据、外部I/O口地址影像区;内部数据存储器存放随机读写的数据、通用寄存器区、堆栈区、运算操作数存放区、指令的操作数只能在此地址空间或特殊功能寄存器地址空间。

3.片内数据存储器分为几部分?每部分的功能。

(1)地址 0~1FH的前32个单元称为寄存器区

用途:① 作通用寄存器R0~R7。 ② R0与R1可作间址寄存器使用。 (2)20H~2FH为位地址区

共16个单元,每单元有八个位,每位有一个位地址,共128位,位地址范围为00H~7FH,该区既可位寻址,又可字节寻址。

(3)除选中的寄存组以外的存储器均可以作为通用RAM区。 (4)堆栈区

8XX51单片机的堆栈设在内部RAM区,深度不大于128字节,初始化时SP指向07H。

(5)特殊功能寄存器SFR

4.51系列单片机的定时/计数器有哪几种工作方式?各有什么特点?

1.方式 0

★定时器(T0或T1)工作于13位定时、计数方式。 用于计数方式时最大计数值为 213 = 8192个脉冲

用于定时工作时,定时时间为:t=(213一T0初值) ×时钟周期×12

★在这种模式下,16寄存器(THX和TLX)只用13位,其中THX占高8位。其中TLX占低5位, TLX的高3位末用。

★当TLX的低5位溢出时向THX进位,而THX溢出时硬件置位TF0,并申请中

断。

★ 定时、计数溢出否可查询TF0是否置位,如果开中断则产生溢出中断。 2 .方式1

当TMOD中M1M0=01时,定时计数器工作在方式1。 ★该模式是一个16位定时/计数方式。 寄存器TH0和TL0是以全16位参与操作, 计数方式时最大计数 216=65536(个外部脉冲) 用于定时工作方式时,定时时间为:

t=(216一T0初值) ×时钟周期×12

★ 16寄存器(THX和TLX) 中THX提供高8位、TLX提供低8位计数初值 3. 方式2

当TMOD中M1M0=10时,定时器工作在方式2。 方式2是8位的可自动重装载的定时计数方式。 ★16位的计数器被拆成两个8位,其中TL0用作8位计数器, TH0用以保持计数初值。当TL0计数溢出,置位TF0,TH0中的初值自动装入TL0,继续计数,循环重复计数。

★用于计数工作方式时,最大计数值为: 28=256(个外部脉冲)。 用于定时工作方式时,其定时时间为; t=(28—TH0初值)×振荡周期×12

★这种工作方式可省去用户重装常数的程序,并可产生精确的定时时间,特别适用作串行口波待率发生器。 4.方式3

当TMOD中M1M0=11时,定时器工作在方式3。 ★若将T0设置为模式3,TL0和TH0被分成为两个互相独立的8位计数器TH0和 TL0 。

★ TL0可工作为定时方式或计数方式。占用原T0的各控制位、引脚和中断源。即C/T、GATE、TR0、TF0和T0 (P3.4)引脚、INT0 (P3.2)引脚。 TH0只可用作定时功能,占用定时器T1的控制位TR1和T1的中断标志位TF1,其启动和关闭仅受TRl的控制。

★定时器T1无模式 3, 可工作于方式0、1、2,但不能使用中断方式。 ★ 只有将T1用做串行口的波特率发生器时,T0才工作在方式3,以便增加一个定时器。

5.分别写出51单片机的目的操作数和源操作数的寻址方式。 目的操作数 源操作数

(1)立即寻址:MOV A,#30H A←30H (2)直接寻址:MOV A, 30H A←(30H) (3)寄存器寻址:MOV A, R0 A←(R0) (4)寄存器间接寻址:MOV A,@R0 A←((R0))

(5)变址寻址:MOV A,@A+DPTR A←((A)+(DPTR))

(6)相对寻址:只用在相对转移指令中JZ 61H ,JC 90H (7)位寻址

6.89C51共有多少条指令,根据功能可以分为那几类?

总共有111条指令,分为五大类:数据传送指令(29),算术运算指令(24),逻辑运算及移位指令(24),控制转移指令(17),位操作指令(17)。

7.写出至少五种指令中常用的符号。

Rn:n=0~7,表示当前工作寄存器组R0~R7中的一个寄存器。 Ri:表示当前工作寄存器组中的R0、R1中的一个寄存器,在寄存器间接寻址方式中,R0、R1作为间址寄存器,存放操作数的四肢,协作@Ri。 #data:表示一个8位的立即数,范围为00H~FFH。

#data16:表示一个16位的立即数,范围为0000H~FFFFH。

diret:表示片内RAM或特殊功能寄存器SFR的地址,用于直接寻址方式中。片内RAM地址范围为00H~7FH。

addr16——16位目标地址,用于LCALL和LJMP指令,可指向64 KB程序存储器地址空间的任何地方。

addr11——11位目标地址,用于ACALL和AJMP指令,转至当前PC所在的同一个2KB程序存储器地址空间内。

rel——补码形式的8位偏移量,用于相对转移和所有条件转移指令。偏移量相对于当前PC计算,在-128~+127范围内取值。 DPTR——数据指针,用作16位的地址寄存器。 A——累加器。

8.写出如下指令的功能

ADD A,Rn A←(A)+(Rn) CLR A A←00H MOV A,Rn A←(Rn)

RET PC(15-8) ←((SP)),SP←(SP)-1 PC(7-0) ←((SP)),SP←(SP)-1

JZ rel 若(A)=0,则PC←(PC)+2+rel 若(A)≠0,则PC←(PC)+2

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

Top