51单片机期末复习题
程序设计题
- 请写出延时函数void delay(unsigned char),要求:在晶体振荡器为12Hz时,延时x毫秒
解析:
假设晶振是 11.0592M
时钟周期为:
机器周期为(因为一个机器周期等于 12*时钟周期
):
时钟频率为(时钟频率是设备或系统每秒运行的时钟周期数。 它通常以赫兹 (Hz) 为单位进行测量):
定时器 0 的计数器最大值为 65536,意味着当计数器的值从 0 加到 65536 时,计数器就会溢出,并自动清零。因此, 当计数器的值加到 65536 时,就相当于它加了 1
宏定义末尾的 L
告诉编译器将其视为长整数而不是其他类型的整数(可省略,编译器将根据其值自动确定常量的适当类型)
计算每次加1的式子里除以1000是因为要转换为毫秒,它原本单位默认是秒
还有就是TH0,TL0的计算是最后计算结果再类型转换
# define FOSC 12000000L // 晶体振荡器频率视情况而定
void delay(unsigned char x) {
// 计算计数器每次加 1 所需要的时间,单位为毫秒
float timer_interval = 1000.0 / (FOSC / 12 / 65536);
// 计算计数器加载值
unsigned int timer_load = (unsigned int)(x / timer_interval);
// 设置定时器 0 的工作模式为模式 1
TMOD &= 0xF0;
TMOD |= 0x01;
// 该值可以在 TH0 和 TL0 的计数值溢出时更新 TF0 标志位
TH0 = (unsigned char)(timer_load / 256);
TL0 = (unsigned char)(timer_load % 256);
// 启动定时器 0
TR0 = 1;
// 等待定时器 0 计数值溢出
while (!TF0);
// 关闭定时器 0
TR0 = 0;
// 清除定时器 0 计数值溢出标志位
TF0 = 0;
}
- 请将下列程序补充完整,根据下图设计一个数码管从0到9的顺序显示(共阳数码管)
# include <reg51.h>
# define uchar unsigned char
# define uint unsigned int
uchar code LedCode[ ]={0Xc0,0Xf9,0XA4,0xB0,0x99,0x92,0x82,0Xf8,0x80,0x90};
/*****根据程序定义变量*****/
uchar i;
/*********结束*********/
void delay(uchar x)
{ uchar k;
while(x--)
for(k=0;k<125;k++){}
}
void main(void)
{
P0= LedCode[0];
while(1)
{
/***填写开始***/
for(i=0;i<10;i++)
{
P0 = Ledcode[i];
delay(250);
delay(250);
}
/***填写结束***/
}
}
- 请写出一段完整的跑马灯程序,要求:依次第4,5灯;3,6灯;2,7灯;1,8灯亮
# include <reg51.h>
# define LED_PORT P0 //宏定义P0端口
//简单毫秒延时(参数范围0~255)
void delay(uchar x)
{ uchar k;
while(x--)
for(k=0;k<125;k++){}
}
void main()
{
while(1)
{
LED_PORT = 0xE7;
delay(250);
delay(250);
LED_PORT = 0xDB;
delay(250);
delay(250);
LED_PORT = 0xBD;
delay(250);
delay(250);
LED_PORT = 0x7E;
delay(250);
delay(250);
}
}
- 实现流水灯模块右边四个LED灯闪烁的功能,时间间隔为1秒
# include <reg51.h>
# define LED_PORT P0 //宏定义P0端口组
sbit ADDR0 = P1^0; //A0
sbit ADDR1 = P1^1; //A1
sbit ADDR2 = P1^2; //A2
sbit ADDR3 = P1^3; //E3
sbit ENLED = P1^4;
bit flag1s = 0; //1s中断标志位
bit mode = 0; //亮灭标志位
void main()
{
ENLED = 0;
ADDR0 = 0;
ADDR1 = 1;
ADDR2 = 1;
ADDR3 = 1;
EA = 1; //开启总中断
TMOD &= 0xF0;
TMOD |= 0x01;
TH0 = 0xFC; //定时1ms
TL0 = 0x67;
ET0 = 1; //使能中断
TR0 = 1; //启动
LED_PORT = 0xFF; //初始化LED全灭状态
while(1)
{
if(flag1s)
{
flag1s = 0;
if(1 == mode)
{
LED_PORT = 0xF0; //右边4个亮
}
else if(0 == mode)
{
LED_PORT = 0xFF; //全灭
}
}
}
}
void InterruptTimer0() interrupt 1
{
static unsigned int count = 0;
TH0 = 0xFC; //重新加载初值
TL0 = 0x67;
if(count >= 1000) //1s
{
count = 0;
flag1s = 1;
mode = ~mode; //取反
}
}
填空题
- AT89S51单片机是(
8
)位的单片机
解析:
AT89S51 是 Atmel(现为 Microchip Technology)生产的 8 位微控制器(MCU)。它有一个 8 位中央处理器 (CPU),旨在执行嵌入式系统中的各种任务。AT89S51 是 8051 微控制器系列的一部分,该系列以其多功能性和在各种应用中的广泛使用而闻名。
- AT89S51单片机有(
5
)个中断源,(2
)级优先级中断 - 串行口方式3发送的第9位数据要事先写入(
SCON
)寄存器的(TB8
)位 - 串行口的方式0的波特率为 (
fOSC/12
) - 利用81C55可以扩展(
3
)个并行口,(256
)个RAM单元 - 当单片机复位时PSW= (
00
)H,SP=(07H
),P0~P3口均为(高
)电平
解析:
在单片机复位后,PSW寄存器(程序状态寄存器)通常会被设置为0x00。这意味着所有的位都被清零,即所有的标志位都被清零。SP寄存器(堆栈指针)通常也会被设置为0x07。这意味着堆栈将从地址0x07开始使用。P0~P3被拉高
- 若A中的内容为88H,那么,P标志位为(
0
)
解析:
P 标志位是指在处理器中用于表示奇偶性的一位标志。当 P 标志位被设置为 0 时,表示当前数字为偶数;当 P 标志位被设置为 1 时,表示当前数字为奇数,这里88H转换成10进制数就是136是偶数
- AT89S51访问片外存储器时,利用(
ALE
)信号锁存来自(P0口
)发出的低8位地址信号
解析:
ALE 信号是一个由单片机控制的外部脉冲,在单片机发出地址时产生。它可以用来将地址信号转发到外部存储器或其他外部设备。在访问外部存储器时, CPU 首先发出一个地址, 然后通过 ALE 信号将这个地址锁存下来. 然后 CPU 就可以通过这个地址来访问外部存储器了。
- 已知fosc=12MHz, T0作为定时器使用时,其定时时间间隔为(
1us
)
解析:
- 串行口方式2接收到的第9位数据送(
SCON
)寄存器的(RB8
)位中保存
解析:
在串口模式2下,串口通信是异步的,即数据的发送和接收不需要时钟信号。数据的第 9 位用作奇偶校验位,它是与数据一起传输的额外位,用于帮助检测传输中的错误。奇偶校验位可以设置为偶数、奇数或无
SCON的8个bit |
---|
SM0 串行端口模式位0,在串口模式 2 下,该位应设置为 1 |
SM1 串行端口模式位 1,在串口模式 2 下,该位应设置为 0 |
SM2 串行端口模式位 2,该位启用多处理器通信模式,允许微控制器使用串行端口与其他微控制器通信。在串口模式 2 下,该位不用,应设置为 0 |
REN 接收启用位,当设置为 1 时,串口接收器使能,单片机可以通过串口接收数据。设置为 0 时,串行接收器被禁用,微控制器无法接收数据 |
TB8 该位是串口传输数据的第9位。它用作奇偶校验位以帮助检测传输中的错误RB8 该位是串口接收数据的第9位。它用作奇偶校验位以帮助检测传输中的错误 |
TI 发送标志位,当通过串行端口的数据传输完成时,该位设置为 1。它必须由软件使用命令“CLR TI”清除,以允许进一步传输 |
RI 接收标志位,当通过串行端口接收到数据时,该位设置为 1。它必须由软件使用命令“CLR RI”清除,以允许进一步接收 |
- 当单片机复位时PSW=(
00
)H,这时当前的工作寄存器区是(0
)区,R6所对应的存储单元地址为(06
)H
解析:
微控制器具有三个工作寄存器区域(0、1 和 2),可使用 PSW 寄存器中的 RS0 和 RS1 位来选择,0区其他寄存器的存储单元地址分别为00H(R0)、01H(R1)、02H(R2)、03H(R3)、04H(R4)、05H(R5)、06H(R6)
- 利用82C55可以扩展(
3
)个并行口,其中(8
)条口线具有位操作功能 - 若AT89S51外扩32KB 数据存储器的首地址若为4000H,则末地址为(
BFFF
)H
解析:
在 AT89S51 微控制器中,数据存储器分为两个 16KB 的块(Block 0 和 Block 1),数据存储器的首地址 (4000H) 对应于块 0 中的第一个存储器位置。数据存储器的末地址 (BFFFH) 对应于块 1 中的最后一个存储器位置
- 当AT89S51执行MOVC A,@A+PC指令时,伴随着(
PSEN*
)控制信号有效
解析:
当执行 MOVC A,@A+PC
指令时,单片机将累加器的内容与PC中的值相加,并使用结果地址访问外部程序存储器中的数据。 PSEN*
(程序存储启用)控制信号是一个 低电平有效信号
,微控制器使用它来访问外部程序存储器。 当微控制器需要从外部程序存储器中获取指令时,它会将 PSEN*
信号置为低电平,并在地址总线上提供指令的地址。 外部程序存储器将指令放在数据总线上作出响应,微控制器将指令读入指令寄存器
- 若A中的内容为67H,那么,P标志位为(
1
)
解析:
67H十进制数是103是奇数,所以P标志位为1,偶数才为0
- AT89S51单片机的通讯接口有(
串行
)和(并行
)两种形式。在串行通讯中,发送时要把(并行
)数据转换成(串行
)数据。接收时又需把(串行
)数据转换成(并行
)数据。
解析:
在串行通信中,数据通过单线或通信通道一次一位地传输和接收。 这与并行通信相反,在并行通信中,数据通过多条线路或通信通道一次传输和接收多个位
- AT89S51单片机指令系统的寻址方式有(
寄存器寻址方式
)、(直接寻址方式
)、(立即寻址方式
)、(寄存器间接寻址方式
)、(位寻址方式
)、(基址寄存器加变址寄存器寻址方式
)、(相对寻址方式
)。 - AT89S51内部提供(
2
)个可编程的(16
)位定时/计数器,定时器有(4
)种工作方式 - AT89S51单片机芯片共有 ( 40 ) 个引脚,MCS-51系列单片机为(
8
)位单片机 - AT89S51的异步通信口为( 全双工 )(单工/半双工/全双工),若传送速率为每秒120帧,每帧10位,则波特率为(
1200 bit/s
) - 单片机也可称为(
微控制器
) 或 (嵌入式控制器
) - 当单片机复位时PSW= (
00
) H,这时当前的工作寄存器区是(0
)区,R4所对应的存储单元地址为 (04
) H - 51系列单片机的典型芯片分别为 (
AT89S51
) 、(8031
) 、(AT89C51
) - AT89S51的(
P3
)口为双功能口 - 由AT89S51组成的单片机系统在工作时,EA*引脚应该接(
地(或0)
); - AT89S51的中断源有 (
外部中断0, T0 ,外部中断1, T1,串行口中断
),有 (2
) 个中断优先级 - AT89S51唯一的一条16位数据传送指令为 (
MOV DPTR,data16
) - 当MCS-51执行MOVX A,@R1指令时,伴随着 (
RD
) 控制信号有效 - AT89S51的(
P0
)口为高8位地址总线口 - 单片机外部三大总线分别为 (
数据总线、地址总线和控制总线
)。 - 74LS138是具有3个输入的译码器芯片,用其输出作片选信号,最多可在 (
8
) 块芯片中选中其中任一块 - 特殊功能寄存器中,单元地址低位为 (
0或8
) 的特殊功能寄存器,可以位寻址 - 关于定时器,若振荡频率为12MHz,在方式0下最大定时时间为(
8.192ms
)
解析:
方式0的计数值最大是8192,先算出机器周期为
定时最大为
- 当AT89S51单片机响应中断后,必须用软件清除的中断请求标志是(
串行中断
)。 - TMOD中的GATEx=1时,表示由两个信号TRx和(
INTx
)控制定时器的启停。 - 在AT89S51单片机的RESET端出现(
大于2个机器周期
)的高电平后,便可以可靠复位,复位后的PC中的内容为(0000
)H - 当AT89S51单片机与慢速外设进行数据传输时,最佳的传输方式是(
串行数据传输
) - DA转换器的两个最重要的技术指标为(
分辨率
)和(建立时间
) - 在存储器扩展中,无论是线选法还是译码法,最终都是为扩展芯片的(
CE
)端提供(片选
)信号、 - 波特率定义为 (
每秒发送或接收的位数
)。串行通信对波特率的基本要求是互相通信的甲乙双方必须具有 (相同
) 的波特率 - 若串行通信按方式1传送,每分钟传送3000个字符(8位/每字符),其波特率是(
400bit/s
)
解析:
波特率=传输速率*每个字符的位数
- AT89S51片内(
20H~2FH
)地址范围内的数据存储器,既可以字节寻址又可以位寻址 - 8KB RAM存储器的首地址若为1000H,则末地址为(
2FFF
)H - AT89S51单片机控制TPµP-40A/16A微型打印机打印英文或数字时,要把打印字符的(
ASCII
)码送给微型打印机 - 已知8段共阴极LED显示器显示字符“H”的段码为76H,则8段共阳极LED显示器显示字符“H”的段码为(
89H
) - 当键盘的按键数目少于8个时,应采用(
独立
)式键盘。当键盘的按键数目为64个时,应采用(矩阵
)式键盘 - 当BCD码拨盘的A端接地时,当BCD码拨盘拨到 “6” 时,此时拨盘的8、4、2、1接点的输出为(
0、1、1、0
) - 使用双缓冲方式的D/A转换器,可实现多路模拟信号的(
同步
)输出。 - AT89S51单片机扩展并行I/O口时,对扩展的I/O口芯片的基本要求是:输出应具有(
数据锁存
)功能;输入应具有(数据三态缓冲/锁存选通
)功能; - 请写出五种中断类型(
外部中断0,定时/计数器0,外部中断1,定时/计数器1,串行口中断
) - 如图1所示,单片机AT89C52的P0口上接了8个LED灯,若要第一、三个灯亮,请写出P0的值(采用十六进制方式) (
0xFA
)
- 请用KEILC语言对引脚P1.0、P1.1、P1.2、P1.3定义成LED0、LED1、LED2、LED3,提示:采用特殊位进行定义。
sbit LED0 = P1^0;
sbit LED1 = P1^1;
sbit LED2 = P1^2;
sbit LED3 = P1^3;
- 在中断函数中,请将外部中断1函数格式补充完整:void external1(
interrupt 2
) - 若A=0XFE,请写出A循环左移的特殊函数表达式:A=(
(A << 1) | (A >> 7)
)
解析:
算术左移是左移1位,最低位填0。循环左移是左移一位,最高位移到最低位
- 十进制数14对应的二进制数表示为(
1110B
),十六进制数表示为(0EB
)。十进制数-100的补码为(10011100
),+100的补码为(01100100
) - 通过堆栈操作实现子程序调用,首先要把(
PC
)的内容入栈,以进行断点保护。调用返回时再进行出栈操作,把保护的断点送回(PC
) - 80C51单片机的时钟电路包括两部分内容,即芯片内的(
高增益反相放大器
)和芯片外的(石英晶体振荡器
)与(两个微调电容
)。若提高单片机的晶振频率,则单片机的机器周期会变(短
) - 通常单片机有两种复位操作,即(
上电复位
)和(手动复位
)。复位后,PC值为(0000H
),SP值为(07H
),通用寄存器的当前寄存器组为(0
)组,该组寄存器的地址范围是从(00H
)到(07H
) - 80C51单片机中,一个机器周期包含(
6
)个状态周期,一个状态周期又可划分(2
)个拍节,一个拍节为(1
)个振荡脉冲周期。因此,一个机器周期应包含(12
)个振荡脉冲周期 - 80C51中唯一可供用户使用的16位寄存器是(
DPTR
),它可拆分为两个8位寄存器使用,名称分别为(DPH
)和(DPL
) - 单片机程序存储器的寻址范围由PC的位数决定。80C51的PC为16位,因此程序存储器地址空间是(
64KB
) - 累加器A中存放着一个其值小于或等于127的8位无符号数,CY清0后执行指令“RLC A”,则A中的数变为原来的(
2
)倍 - 上电复位后,各中断优先级从高到低次序为(
INT0
)、(T0
)、(INT1
)、(T1
)和(串行口
) - 响应中断后,产生长调用指令LCALL,执行该指令的过程包括:首先把(
PC
)的内容压入堆栈,以进行断点保护,然后把长调用指令的16位地址送(PC
),使程序执行转向(中断向量
)中的中断地址区 - 当计数器产生计数溢出时,把定时器控制寄存器的TF0(
TF1
)位置1。对计数溢出的处理,在中断方式时,该位作为(中断请求标志位
)使用;在查询方式时,该位作(查询状态位
)使用 - 定时器0工作于方式2的计数方式,预置的计数初值为156,若通过引脚T0输入周期为1ms的脉冲,则定时器0的定时时间为(
100ms
)
解析:
- 定时测试压力和温度的单片机应用系统,以定时器0实现定时。压力超限的报警信号分别由 和 输入,中断优先顺序为:压力超限→温度超限→定时检测。为此,中断允许控制寄存器IE最低3位的状态应是(
111
),中断优先级控制寄存器IP最低3位的状态应是(101
) - 使用8KB×8的RAM芯片,用译码法扩展64KB×8的外部,需要(
8
)片存储芯片,共需使用(16
)条地址线。其中(13
)条用于存储单元选择,(3
)条用于芯片选择 - 三态缓冲器的三态分别是(
高电平
)、(低电平
)和(高阻态
) - 80C51单片机系统整个存储空间由4部分组成,分别为(
256
)个地址单元的内部(数据
)存储器,(4KB
)个地址单元的内部(程序
)存储器,(60KB
)个地址单元的外部(程序
)存储器,(64KB
)个地址单元的外部(数据
)存储器 - 在80C51单片机系统中,为外扩展存储器准备了(
16
)条地址线,其中低位地址线由(P0口
)提供,高位地址线由(P2口
)提供 - 起止地址为0000H~3FFFH的外扩展存储器芯片的容量是(
16
)KB。若外扩展存储器芯片的容量为2 KB,起始地址为3000H,则终止地址应为(37FFH
) - 在存储器扩展中,无论是线选法还是译码法,最终都是为扩展芯片的(
片选
)引脚端提供信号。 - 向8255写入的工作方式命令为0A5H,所定义的工作方式为:A口为(
输出
),B口为(输出
),C口高位部分为(输出
),C口低位部分为(输入
) - 通过8255口B输入8个按键的状态,然后通过口A输出送LED显示器,按键状态输入由PC2位控制。则8255的工作方式命令为(
A7H
) - 若某异步通信接口每帧信息格式为10位,接口每秒传送1000个字符,则波特率为(
100bit/s
) - 串行通信有(
单工
) 、(全双工
)化和(半双工
)化3种数据通路形式 - 常用的A/D转换原理有(
逐次逼近
)式、(双积分
)式和(固频变换
)式
判断题
1.8031与8751的区别在于内部是否有程序存储器。( √
)
解析:
如果要在 8751 单片机上运行程序,则必须将程序存储在外部存储器中,然后通过串行端口将程序下载到 8751 单片机的内部 RAM 中执行
3.当向堆栈压入一个字节的数据后,SP中的内容减1。(×
)
解析:
对于51单片机数据进栈和出栈,遵循“先加后压,先弹后减”操作原则,先进后出(FIFO)的数据结构
4.程序计数器PC中装的内容是当前正在执行指令的地址。(×
)
解析:
PC是CPU中的一个寄存器,用于存储下一条要执行的指令的地址。当CPU执行一条指令时,会从PC中读取指令的地址,将指令从存储器(如内存)中取出,并执行该指令。执行完毕后,CPU会将PC的值加1,以指向下一条要执行的指令
5.某特殊功能寄存器的字节地址为80H,它既能字节寻址,也能位寻址。(√
)
6.AT89S51单片机中的PC是不可寻址的。(√
)
解析:
PC本身是一个寄存器,不能直接寻址。可以使用指令来操作PC的值,但不能直接将PC当成一个普通的寄存器来进行读写操作,在汇编中可以使用LJMP指令来跳转到指定的地址执行指令,但是不能直接将PC的值赋值为指定的地址
8.AT89S51的定时器/计数器对外部脉冲进行计数时,要求输入的计数脉冲的高电平或低电平的持续时间不小于1个机器周期。(×
)
9.区分外部程序存储器和数据存储器的最可靠的方法是看其是被 WR*
还是被 PSEN*
信号连接。(√
)
解析:
WR*
信号通常用于外部存储器,表示将数据写入存储器。 PSEN*
信号通常用于数据存储器,表示启用存储器
10.各中断源发出的中断请求信号,都会标记在AT89S51的TCON寄存器中。(×
)
解析:
在 AT89S51 芯片中,各中断源发出的中断请求信号都会标记在 INTCON 寄存器中
- 定时器T0中断可以被外部中断0中断。(
√
)
解析:
中断优先级(高->低排序) |
---|
INT0 |
T0 |
INT1 |
T1 |
串口中断 |
- 指令中直接给出的操作数称为直接寻址。(
×
)
解析:
直接寻址是指令中直接给出操作数的单元地址,该单元地址中的内容就是操作数
- 内部RAM的位寻址区,既能位寻址,又可字节寻址。(
√
) - 特殊功能寄存器SCON与定时器/计数器的控制无关。(
√
)
解析:
SCON是串口控制寄存器,TCON寄存器才是定时器相关的
-
当AT89S51执行MOVX A,@R1指令时,伴随着WR*信号有效。(
×
) -
串行口工作方式1的波特率是固定的,为fosc/32。(
×
)
解析:
不是固定的,是可变的
- 区分外部程序存储器和数据存储器的最可靠的方法是看其是被 RD* 还是被 PSEN* 信号连接。(
×
)
解析:
区分外部程序存储器和数据存储器的最可靠的方法是看其是被 WR*
还是被 PSEN*
信号连接
- 逐次比较型A/D转换器与双积分A/D转换器比较,转换速度比较慢。(
×
) - 当EA脚接高电平时,对ROM的读操作只访问片外程序存储器。(
×
)
解析:
EA脚接高电平时,在进行ROM的读操作时,单片机将从内部的ROM中读取数据。如果EA脚接低电平,则单片机将从外部存储器中读取数据
- 必须有中断源发出中断请求,并且CPU开中断,CPU才可能响应中断。(
×
)
解析:
●有中断源发出中断请求;
●中断总允许位EA=1,即CPU开中断;
●申请中断的中断源的中断允许位为1,即中断没有屏蔽;
●无同级或更高级中断正在被服务;
●当前的指令周期已经结束;
●若现在指令为RETI 或者是访问IE或IP 指令,则该指令以及紧接着的另一条指令已执行完
- 8155是一种8位单片机。(
×
)
解析:
8155不是单片机,是一种与单片机配套使用的接口芯片
- 51单片机只能做控制用,不能完成算术运算。(
×
) - 单片机内部RAM和外部RAM是统一编址的,它们的访问指令相同。(
×
) - 指令AJMP的跳转范围是2KB。(
√
) - 扩展I/O口占用片外数据存储器的地址资源。(
√
) - 8051单片机,程序存储器数和数据存储器扩展的最大范围都是一样的。(
√
) - 单片机系统扩展时使用的锁存器,是用于锁存低8位地址。(
√
) - 在A/D变换时,转换频率越高越好。(
×
) - 如果AT89S51单片机的某一高优先级中断请求正在被响应,此时不会再发生中断嵌套。(
√
) - 当EA’=1时,AT89S51单片机片外可扩展的程序存储器空间和数据存储器空间是一样的(
×
) - 指令字节数越多,执行时间越长(
×
) - 访问单片机内部RAM或外部扩展的RAM的低128字节,指令是不同的(
√
) - 并行接口芯片82C55的方式0是无条件的输入输出方式(
√
) - 逐次比较型ADC的转换速度要比双积分型ADC的转换速度快(
√
) - 串行口方式0的波特率仅与单片机的晶体振荡器有关,与定时器无关(
√
) - 扩展的I/O接口芯片中的寄存器,要占用片外程序存储器的地址单元(
√
) - AT89S51单片机进行串行通信时,要占用一个定时器作为波特率发生器(
√
) - AT89S51单片机访问片外I/O设备中的寄存器,要使用MOVX类指令(
√
) - “转换速度”仅适用于A/D转换器,D/A转换器不用考虑“转换速度”这一问题。(
×
) - 对于周期性的干扰电压,可使用双积分的A/D转换器,并选择合适的积分元件,可以将该周期性的干扰电压带来的转换误差消除(
√
) - 串行口的发送缓冲器和接收缓冲器只有1个单元地址(
√
) - AT89S51的定时器/计数器对外部脉冲进行计数时,要求输入的计数脉冲的高电平和低电平的持续时间均不小于1个机器周期(
×
)
简答题
- AT89S51采用6MHz的晶振,定时2ms,如用定时器方式1时的初值(16进制数)应为多少?(写出计算过程)
- 说明AT89S51的外部引脚
EA*
的作用?
当 EA*
为高电平时,AT89S51访问 内部程序存储器
,但当地址大于0FFF时,自动转到外部程序存储器;当 EA*
为低电平时,AT89S51 只读取外部程序存储器
,读取的地址范围为0000H~FFFFH,片内的4 KB Flash程序存储器不起作用
- 写出AT89S51的所有中断源,并说明说明哪些中断源在响应中断时,由硬件自动清除,哪些中断源必须用软件清除,为什么?
答 |
---|
外部中断INT0 |
外部中断INT1 |
定时器/计数器中断T0 |
定时器/计数器中断T1 |
串行口中断 |
其中,串行口中断才 TI
和 RI
需要软件清0,其他的硬件自动清0,因为串口中断的输出中断为TI,输入中断为RI,故用软件清0
- AT89S51采用12MHz的晶振,定时1ms,如用定时器方式1时的初值(16进制数)应为多少?(写出计算过程)
- 中断服务子程序返回指令RETI和普通子程序返回指令RET有什么区别?
RETI除了将压栈的内容出栈外(即现场恢复),还清除在中断响应时被置1的AT89S51内部中断优先级寄存器的优先级状态。
- AT89S51外扩的程序存储器和数据存储器可以有相同的地址空间,但不会发生数据冲突,为什么?
AT89S51外扩的程序存储器和数据存储器可以有相同的地址空间,但不会发生数据冲突。这是因为它们的控制信号不同:
(1) 外扩程序存储器是 PSEN*
信号为其控制信号;外扩数据存储器是 RD*
与 WR*
信号为其控制信号
(2) 指令不同,程序存储器用MOVC读取,数据存储器用MOVX存取
- LED的静态显示方式与动态显示方式有何区别?各有什么优缺点?
LED的静态显示方式与动态显示方式有何区别?各有什么优缺点?
静态:显示期间,锁存器输出的段码不变;亮度大,各位LED的段选分别控制;位数多硬件电路复杂
动态:所有位段码线并连一起,各位的亮灭靠片选控制端控制,亮度较低,多位控制电路简单
- 简述行列式扫描键盘的工作原理
①首先判断有无键按下:
将列线全部置0,读行线状态,若P1.0~P1.3全为1,则表明无键按下,若出现低电平即0,则有键按下,记录下行号 i ;
②其次,如有键按下,判断具体键号
方法如下:逐列为低,其它为高,再读行线状态,如出现哪一行为低,记录此时的列号j , 则证明第i行第j列的按键被按下,至此完成键盘的行列式扫描。
- 图为8段共阴数码管,请写出如下数值的段码
字符 | 段码 |
---|---|
0 | 3FH |
1 | 06H |
2 | 5BH |
3 | 4FH |
4 | 66H |
5 | 6DH |
6 | 7DH |
7 | 07H |
8 | 7FH |
9 | 6FH |
A | 77H |
B | 7CH |
C | 39H |
D | 5EH |
E | 79H |
F | 71H |
无显示 | 00H |
- 采用6MHz的晶振,定时5ms,用定时器方式1时的初值应为多少?(请给出计算过程)
- 请用语言表述AT89C52单片机P3引脚的第二功能
- 在内部中断0中,T0采用工作方式1,晶振频率为12MHz,要求定时时间为10毫秒,请写出T0的初值(要求有计算公式和最后的十六进制值)
- 请画出单片机时钟电路,并连接至单片机引脚上
-
在8051的存储器结构中,内部数据存储器可分为几个区域?各有什么特点?
片内数据存储器按功能可以分成以下几个部分:工作寄存器组区、位寻址区、
一般RAM区和特殊功能寄存器区,其中还包含堆栈区。工作寄存器组区,00H~ 1FH
单元,可用R0~R7等8个寄存器访问
;位寻址区,20H~2FH
单元,可按位
方式访问;一般RAM 区,30H~7FH
单元;堆栈区,可从08~7F
单元;特殊功
能寄存器区位于80H~FFH
单元。 -
80C51单片机存储器的基本结构是什么? 其存储器的地址空间如何划分?
- 80C51单片机外RAM和ROM使用相同的地址,是否会在总线上出现竞争?为什么?
- 什么叫外部中断?有几个外部中断源?请求信号由什么引脚引入?
- 中断优先级的顺序?5个中断源的入口地址?
- 什么叫中断?中断的作用是什么?
- 80C51单片机执行指令所用的时间与机器周期之间的关系是什么?
- 什么叫通信?有几种通信方式?其方式特点是什么?
- 什么是串行通信,什么是并行通信,各有何特点?
- 微处理器、微计算机、微处理机、CPU、单片机它们之间有何区别?
微处理器、微处理机和CPU都是中央处理器的不同称谓;而微计算机、单片机都是一个完整的计算机系统,单片机特指集成在一个芯片上的用于测控目的的单片微计算机。
- 为什么不应当把51系列单片机称为MCS-51系列单片机?
因为MCS-51系列单片机中的“MCS”是Intel公司生产的单片机的系列符号,而51系列单片机是指世界各个厂家生产的所有与8051的内核结构、指令系统兼容的单片机
- 64KB程序存储器空间有5个单元地址对应AT89C51单片机5个中断源的中断入口地址,请写出这些单元的入口地址及对应的中断源
64KB程序存储器空间中有5个特殊单元分别对应于5个中断源的中断服务程序的入口地址:
入口地址 | 中断源 |
---|---|
0003H | 外部中断0 |
000BH | 定时器0 |
0013H | 外部中断1 |
001BH | 定时器1 |
0023H | 串行口 |
- 解释手工汇编、机器汇编、交叉汇编、反汇编术语概念
(1)手工汇编:手工编程,首先把程序用助记符指令写出,然后通过查指令的机器代码表,逐个把助记符指令“翻译”成机器代码,这种人工查表“翻译”指令的方法称为手工汇编。
(2)机器汇编:是借助于微型计算机上的软件(汇编程序)来代替手工汇编,完成把助记符指令“翻译”成机器代码的工作。
(3)交叉汇编:使用微型计算机来完成汇编,而汇编后得到的机器代码却是在另一台计算机(这里是单片机)上运行,称这种机器汇编为交叉汇编。
(4)反汇编:将二进制的机器代码语言程序翻译成汇编语言源程序的过程
- 设计子程序时应注意哪些问题?
(1)子程序的第一条指令前必须有标号。(2)使用子程序调用指令时,有两条调用指令可供使用。
①使用绝对调用指令(ACALL addr11)要注意,被调用的子程序的首地址与本绝对调用指令的下一条指令的高5位地址相同,即只能在同一2KB程序存储区内。
②使用长调用指令(LCALL addr16)时,addr16为直接调用的子程序的目标地址,也就是说,被调用的子程序可放置在64KB程序存储器区的任意位置。
(3)子程序结构中必须用到堆栈,堆栈通常用来保护断点和现场保护。
(4)子程序返回主程序时,最后一条指令必须是RET指令。
(5)子程序可以嵌套,即主程序可以调用子程序,子程序又可以调用另外的子程序
- 中断服务子程序与普通子程序有哪些相同和不同之处?
RETI指令在返回时,同时清除中断系统中相应的优先级触发器,以允许下次中断,而RET指令则没有这个操作。除了这一点两条指令不同外,其他操作都相同
- 中断响应的条件是什么?
总中断允许开关接通EA=1;该中断源发出中断请求;该中断源的中断允许位=1;无同级或更高级中断正在被服务
- AT89C51单片机响应外部中断的典型时间是多少?在哪些情况下,CPU将推迟对外部中断请求的响应?
最短为是3个周期,最长为8个周期,当遇到才开始执行RETI或访问IE或IP的指令则需把当前指令执行完再继续执行一条指令后才能响应中断
- 定时器/计数器用作定时器模式时,其计数脉冲由谁提供?定时时间与哪些因素有关?
定时器/计数器用作定时器时,其计数脉冲由系统振荡器产生的内部时钟信号12分频后提供。定时时间与时钟频率和定时初值有关
- 定时器/计数器用作计数器模式时,对外界计数频率有何限制?
由于确认1次负跳变要花2个机器周期,即24个振荡周期,因此外部输入的计数脉冲的最高频率为系统振荡器频率的1/24
- 定时器/计数器的工作方式2有什么特点?适用于哪些应用场合?
定时器/计数器的工作方式2具有自动恢复初值的特点,适用于精确定时,如波特率的产生
- 一个定时器的定时时间有限,如何用两个定时器的串行定时来实现较长时间的定时?
方法1,在第一个定时器的中断程序里关闭本定时器的中断程序,设置和打开另一个定时器;在另一个定时器的中断程序中关闭本定时中断,设置和打开另一个定时器。这种方式的定时时间为两个定时器定时时间的和
- THx与TLx(x = 0,1)是普通寄存器还是计数器?其内容可以随时用指令更改吗?更改后的新值是立即刷新还是等当前计数器计满后才能刷新?
THx与TLx(x=0,1)是由特殊功能寄存器构成的计数器,其内容可以随时用指令更改,更改后的新值立即刷新。但在读THx、TLx值时,应该先读THx值,后读TLx,再读THx值。若两次读得THx值相同,则可确定读得的内容正确。若前后两次读得的THx值有变化,再重复上述过程
- 在异步串行通信中,接收方是如何知道发送方开始发送数据的?
当接收方检测到RXD引脚上的有效的负跳变时,即可知道发送方开始发送数据
- 串行口有几种工作方式?有几种帧格式?各种工作方式的波特率如何确定?
串行口有4种工作方式:方式0、方式1、方式2、方式3。有3种帧格式,方式2和3具有相同的帧格式。
- 为什么定时器/计数器T1用作串行口波特率发生器时,常采用方式2?若已知时钟频率、通信波特率,如何计算其初值?
因为定时器/计数器在方式2下,初值可以自动重装,这样在进行串口波特率发生器设置时,就避免了重装参数的操作,且减少了重装参数的误差。
已知时钟频率,通信波特率,根据公式:
- 简述利用串行口进行多机通信的原理
以方式1为例。发送过程:数据位由TXD端输出,发送1帧信息为10位,当CPU执行1条数据写发送缓冲器SBUF的指令,就启动发送。发送开始时,内部发送控制信号SEND变为有效,将起始位向TXD输出,此后,每经过1个TX时钟周期,便产生1个移位脉冲,并由TXD输出1个数据位。8位数据位全部输出完毕后,置1中断标志位TI,然后SEND信号失效。
接收过程:当检测到起始位的负跳变时,则开始接收。接收时,定时控制信号有2种。其中一种是位检测器采样脉冲,它的频率是RX时钟的16倍。也就是在1位数据期间,有16个采样脉冲,以波特率的16倍速率采样RXD引脚状态,当采样到RXD端从1到0的跳变时就启动检测器,接收的值是3次连续采样,取其中2次相同的值,以确认是否是真正的起始位的开始,这样能较好地消除干扰引起的影响,以保证可靠无误地开始接收数据
- 为什么AT89C51单片机串行口的方式0帧格式没有起始位(0)和停止位(1)?
串行口的方式0为同步移位寄存器输入/输出方式,常用于外接移位寄存器,以扩展并行I/O口,一般不用于两个89C51之间的串行通信。该方式以fosc/12的固定波特率从低位到高位发送或接收数据
- 直接以TTL电平串行传输数据的方式有什么缺点?
优点是连线简单,缺点是抗干扰性能差,传输距离短
- 在AT89C51单片机系统中,外接程序存储器和数据存储器共16位地址线和8位数据线,为何不会发生冲突?
因为控制信号线的不同。 外扩的RAM芯片既能读出又能写入,所以通常都有读、写控制引脚,记为和,它们分别与89C51的和引脚相连。
外扩的EPROM在正常使用中只能读出,不能写入,故EPROM芯片没有写入控制引脚,只有读出引脚,记为,该引脚与89C51单片机的相连
- I/O接口和I/O端口有什么区别?I/O接口的功能是什么?
I/O端口简称I/O口,常指I/O接口电路中具有端口地址的寄存器或缓冲器。I/O接口是指单片机与外设间的I/O接口芯片。
I/O接口的功能:(1)实现和不同外设的速度匹配;(2)输出数据缓存;(3)输入数据三态缓冲
- 82C55的“方式控制字”和“PC口按位置位/复位控制字”都可以写入82C55的同一控制寄存器,82C55是如何来区分这两个控制字的?
82C55通过写入控制字寄存器的控制字最高位来判断,最高位为1时,为方式控制字;最高位为0时,为PC口按位置位/复位控制字
- 为什么要消除按键的机械抖动?软件消除按键机械抖动的原理是什么?
在按键的闭合和断开过程中,由于开关的机械特性,导致了按键抖动的产生。如果不消除按键的机械抖动,按键的状态读取将有可能出现错误。消除按键抖动一般是采用软件或硬件去抖。软件去抖的原理是,在第一次检测到有键按下时,该键所对应的行线为低电平,执行一段延时10ms的子程序后,确认该行线电平是否仍然为低电平,如果仍为低电平,则确认该行确实有键按下
- LED的静态显示方式与动态显示方式有何区别?各有什么优缺点?
静态显示时,数据是分开送到每一位LED上的。而动态显示时,则数据是同时送到每一个LED上,再根据位选线来确定是哪一位LED被显示。静态显示亮度很高,但口线占用较多。动态显示口线占用较少,适合用在显示位数较多的场合
- 说明矩阵式键盘按键按下的识别原理
按键设置在行、列线交点上,行、列线分别连接到按键开关的两端。行线通过上拉电阻接到+5V上,无按键按下时,行线处于高电平状态,而当有按键按下时,行线电平状态将由与此行线相连的列线的电平决定。列线的电平如果为低,则行线电平为低;列线的电平如果为高,则行线的电平亦为高。将行、列线信号配合起来并做适当的处理,才能确定闭合键的位置
- 键盘有哪3种工作方式,它们各自的工作原理及特点是什么?
(1)编程扫描方式。当单片机空闲时,才调用键盘扫描子程序,反复扫描键盘,等待用户从键盘上输入命令或数据,响应键盘的输入请求。
(2)定时扫描方式。单片机每隔一定的时间对键盘扫描一次。
(3)中断扫描方式。只有在键盘有键按下时,才执行键盘扫描程序并执行该按键功能程序,如果无键按下,单片机将不理睬键盘
- 如图所示,STC89C52RC采用晶振频率11.0592MHz,利用P1口控制LED灯的亮灭,写一段流水灯程序, 利用T0工作方式1进行定时,采用定时器中断的方式(可参考:一次定时的时间为1ms,其定时值初始值为0xFC67),每1秒钟仅有2个灯亮,顺序依次是(D1,D8) - (D2,D7)一(D3,D6) - (D4,D5) - (D3,D6) (D2,D7),如此循环,也就是两边向中间流水、再从中间向两边流水。
# include <reg52.h>
# define LED_PORT P1 //宏定义LEDP1端口
bit flag1s = 0; //1s中断标志位
unsigned char LEDMode = 1; //模式12345678
void main()
{
EA = 1; //开启总中断
TMOD &= 0xF0;
TMOD |= 0x01;
TH0 = 0xFC; //定时1ms
TL0 = 0x67;
ET0 = 1; //使能中断
TR0 = 1; //启动
while(1)
{
if(flag1s)
{
flag1s = 0;
switch(LEDMode)
{
case 1:LED_PORT = 0x7E;LEDMode = 2;break; //1,8亮
case 2:LED_PORT = 0xBD;LEDMode = 3;break; //2,7亮
case 3:LED_PORT = 0xDB;LEDMode = 4;break; //3,6亮
case 4:LED_PORT = 0xE7;LEDMode = 5;break; //4,5亮
case 5:LED_PORT = 0xDB;LEDMode = 6;break; //3,6亮
case 6:LED_PORT = 0xBD;LEDMode = 1;break; //2,7亮
default:break;
}
}
}
}
void InterruptTimer0() interrupt 1
{
static unsigned int count = 0;
TH0 = 0xFC; //重新加载初值
TL0 = 0x67;
if(count >= 1000) //1s
{
count = 0;
flag1s = 1;
}
}
选择题
-
在CPU内部,反映程序运行状态或反映运算结果的特征寄存器是(
B
)A.PC B.PSW C.A D.SP
-
外中断初始化的内容不包括(
A
):A.设置中断响应方式 B.设置外中断允许 C.设置中断总允许 D.设置中断触发方式
-
定时器T0工作在方式3时,定时器T1有(
C
)种工作方式。A.1种 B.2种 C.3种 D.4种
解析:
T0可以工作在方式3,T1不可以,T1工作在方式3相当于TR1=0,停止计数
-
用AT89S51的串行口扩展并行I/O口时,串行接口工作方式选择(
A
)。A. 方式0 B.方式1 C. 方式2 D.方式3
-
AT89S51的并行I/O口信息有两种读取方法:一种是读引脚,还有一种是(
A
)。A. 读锁存器 B. 读数据库 C. 读A累加器 D.读CPU
-
以下不是构成控制器部件的是(
D
):A. 程序计数器 B.指令寄存器 C.指令译码器 D.存储器
-
P1口作输入用途之前必须(
B
)A. 外接上拉电阻 B.相应端口先置1 C. 相应端口先置0 D.外接高电平
-
在家用电器中使用单片机应属于微计算机的(
B
)A.辅助设计应用 B.测量、控制应用 C.数值计算应用 D.数据处理应用
-
执行子程序返回或中断子程序返回指令时,返回的断点是(
C
)A.调用指令的首地址 B.调用指令的末地址
C.调用指令下一条指令的首地址 D.返回指令的末地址
-
下列哪种文件后缀名是可以烧结至单片机中 (
A
)A . uv2 B . c C. HEX D . inc
-
AT89C52单片机(双列直插封装)有多少引脚 (
C
)A.20 B. 28 C. 40 D. 44
-
AT89C52单片机的地址总线有多少位 (
C
)A.2 B. 8 C. 16 D. 32
解析:
at89s52单片机的数据总线的宽度是8位,地址总路线宽度是16位,但地址线的低8位和数据线是分时复用的
-
下面哪个引脚单片机的串行接受引脚(
B
)A.XTAL1 B. RXD C. REST D. ALE
-
若采用的时钟晶体的频率是12MHz,那么单片机的机器周期是多少(
C
)A. 1/2微秒 B. 1/6微秒 C. 1微秒 D. 1-4微秒
-
十六进制0xe5转换成二进制应该为(
C
)A. 1111 1101 B. 1110 0011 C. 1110 0101 D. 1111 1010
-
在下列寄存器中,与定时 / 计数控制无关的是 (
C
)A . TCON (定时控制寄存器) B. TMOD (工作方式控制寄存器)
C. SCON (串行控制寄存器) D. IE (中断允许控制寄存器)
-
MCS-51单片机的外部中断1的中断请求标志是 (
B
)A. TR1 B. IE1
C. IT1 D. TF1
-
定时器/计数器工作方式1是(
D
)A. 8位计数器结构 B. 2个8位计数器结构
C. 13位计数结构 D. 16位计数结构
-
已知1只共阳极LED显示器,其中a笔段为字形代码的最低位,若需显示数字E,则它的字形代码应为(
C
)A. 06H B. F9H C. 86H D. 79H
-
对程序计数器 PC 的操作 (
A
)A. 是自动进行的 B. 是通过传送进行的
C . 是通过加 1 指令进行的 D. 是通过减 1 指令进行的
-
下列计算机语言中,CPU能直接识别的是 (
D
)A. 自然语言 B. 高级语言 C. 汇编语言 D. 机器语言
-
T89C52单片机的数据总线有多少位 (
B
)A.2 B. 8 C. 16 D. 32
-
面哪个引脚单片机的地址锁存引脚 (
D
)A.XTAL1 B. RXD C. REST D. ALE
-
当外部中断请求的信号方式为脉冲方式时,要求中断请求信号的高电平状态和低电平状态都应至少维持 (
A
)A. 1个机器周期 B. 2个机器周期 C. 4个机器周期 D. 8个机器周期
-
二进制0110 1101转换成十六进制应该为 (
D
)A. 0xe5 B. 0x6E C. 0x7E D. 0x6D
-
已知1只共阴极LED显示器,其中a笔段为字形代码的最低位,若需显示数字E,则它的字形代码应为(
D
)A. 06H B. F9H C. 86H D. 79H
-
8位二进制数所能表示的最大无符号数是 (
B
)A.256 B.255 C.128 D.127
-
有一个数152,它与十六进制数6A相等,那么该数是 (
B
)A.二进制数 B.八进制数 C.十进制数 D.十六进制数
-
十进制数向二进制数进行转换时,十进制数91相当于二进制数(
A
)A.1001 0001 B.0110 1111 C.0111 0001 D.0101 1011
-
取值操作后,PC的值是 (
C
)A.当前指令前一条指令的地址 B.当前正在执行指令的地址
C.下一条指令的地址 D.控制器中指令寄存器的地址
-
80C51单片机中,设置堆栈指针SP为37H后就发生子程序调用,这时SP的值变为 (
C
)A.37H B.38H C.39H D.3AH
-
设置堆栈指针SP=30H后,进行一系列的堆栈操作。当进栈数据全部弹出后,SP应指向(
A
)A. 30H单元 B. 07H单元 C. 31H单元 D.2FH单元
-
程序计数器PC是(
A
)位的计数器,能寻址64KB的程序存储器范围。A.16 B.8 C.4 D.32
-
单片机程序存储器的寻址范围是由程序计数器PC的位数决定的,MCS-51的PC为16位,因此其寻址范围是 (
C
)A.4KB B.8KB C.64KB D.128KB
-
80C51单片机地址总线(AB)总线宽度为 (
B
)位。A.8 B.16 C.15 D.32
-
8051单片机复位信号应从 (
B
)脚接入。A.P3.2 B.RST C.8脚 D.T1
-
8051复位后PC和SP中的内容各为 (
C
)A.PC=0000H,SP=60H B.PC=0040H,SP=07H C.PC=0000H,SP=07H D.PC=1000H,SP=07H
-
一个机器周期含有(
D
)个时钟周期A.1 B.2 C.6 D.12
-
一个机器周期含有 ① 个时钟周期,当单片机时钟频率为12MHZ时,一个机器周期为 ②μs (
C
)A.①6 ②2 B.①12 ②2 C.①12 ②1 D.①6 ②1
-
在寄存器间接寻址方式中,指定寄存器中存放的是 (
B
)A.操作数 B.操作数地址 C.转移地址 D.地址偏移量
-
下列指令或指令序列中,不能实现PSW内容送A的是 (
C
)A. MOV A , PSW B. MOV A , 0D0H
C. MOV R0 , # 0D0H D. PUSH PSW
MOV A , @R0 POP ACC
-
在相对寻址方式中,“相对”两字是指相对于(
A
)A. 地址偏移量rel B. 当前指令的首地址 C. 下一条指令的首地址 D. DPTR值
-
下列指令或指令序列中,能将外部数据存储器3355H单元内容传送给A的是 (
B
)A. MOVX A , 3355H B. MOV DPTR , # 3355H
MOVX A , @DPTR
C. MOV P0 , # 33H D. MOV P2 , # 33H
MOV R0 , # 55H MOV R2 , # 55H
MOVX A , R0 MOVX A , @R2
-
对程序存储器的读操作,只能使用(
D
)A.MOV指令 B.PUSH指令 C.MOVX指令 D.MOVC指令
-
执行返回指令后,返回的断点是 (
C
)A.调用指令的首地址 B.调用指令的末地址
C.调用指令的下一条指令的首地址 D.返回指令的末地址
-
以下各项中不能用来对内部数据存储器进行访问的是 (
B
)A.数据指针DPTR B. 按存储器单元地址或名称
C.堆栈指针SP D.由R0或R1作间址寄存器
-
指令MOV寻址空间是 (
C
)A.片外ROM B.片外RAM C.片内RAM D.片内ROM
-
指令MOVX寻址空间是(
B
)A.片外ROM B.片外RAM C.片内RAM D.片内ROM
-
“MUL AB”指令执行后,16位乘积的高位在(
D
)中。A.A B.C C.AB D.B
-
8051单片机外部中断0、1在(
D
)A.P0 口 B.P1 口 C.P2 口 D.P3 口
-
8051内部有①个定时/计数器,对外部事件脉冲计数是②;对片内机周脉冲计数是③。(
A
)A.①2 ②计数器 ③定时器 B.①4 ②定时器 ③计数器
C.①2 ②定时器 ③计数器 D.①1 ②计数器 ③定时器
-
下列有关80C51中断优先级控制的叙述中,错误的是(
D
)A. 低优先级不能中断高优先级,但高优先级能中断低优先级
B. 同级中断不能嵌套 C. 同级中断请求按时间的先后顺序响应
D. 同一时刻,同级的多中断请求,将形成阻塞,系统无法响应
-
在工作方式0下,计数器由TH的全部8位和TL的低5位组成,因此,其计数范围是(
A
)A. 1~8192 B. 0~8191 C. 0~8192 D.1~4096
-
下列有关单片机程序存储器的论述中,错误的是(
A
)A.用户程序保存在程序存储器中 B.断电后程序存储器仍能保存程序
C.对于程序存储器只使用MOVC一种指令
D.执行程序需要使用MOVC指令从程序存储器中逐条读出指令
-
下列有关单片机数据存储器的论述中,错误的是(
A
)A.数据存储器只使用MOV指令进行读/写 B.堆栈在数据存储器中开辟
C.数据存储器只用于保存临时数据 D.专用寄存器也是数据存储器的一部分
-
若在系统中只扩展一片Inter2732(4K×8),除应使用P0口的8条口线外,至少还应使用P2口的口线(
A
)A.4条 B.5条 C.6条 D.7条
-
下列叙述中,不属于单片机存储器系统特点的是(
D
)A.程序和数据两种类型的存储器同时存在 B.芯片内外存储器同时存在
C.扩展数据存储器与片内数据存储器存储空间重叠
D.扩展程序存储器与片内程序存储器存储空间重叠
-
下列有关8255并行接口芯片的叙述中,错误的是 (
C
)A.8255的可编程性表现在它的工作方式命令和位置位/复位命令上
B.8255由于采用标志位状态区分命令,所以命令的写入次序不受限制
C.在8255工作方式0下,3个口可构成16种I/O组合
D.在8255工作方式1下,只能使用中断方法而不能使用查询方法进行I/O操作
-
下列有关串行通信的说明中,错误的是(
A
)A.80C51串行口只有异步方式而无同步方式,因此,只能进行串行异步通信
B.80C51串行口发送和接收使用同一个数据缓冲寄存器SBUF
C.双机通信时要求两机的波特率相同
D.偶校验时只给校验位写入一个0或1,以使得数据位和校验位中的1的个数为偶数
-
下列特点中,不是串行数据传送所具有的是(
A
)A.速度快 B.成本低 C.传送线路简单 D.适用于长距离通信
-
在下列有关串行同步通信与异步通信的比较中错误的是 (
C
)A.它们采用相同的数据传输方式,但采用不同的数据传输格式
B.它们采用相同的数据传输格式,但采用不同的数据传输格式
C.同步方式适用于大批量数据传输,而异步方式则适用于小批量数据传输
D.同步方式对通信双方同步的要求高,实现难度大。而异步方式的要求则相对较低
-
A/D转换芯片中所需要编址的是(
D
)A.用于转换数据输出的三态锁存器 B. A/D转换电路
C.模拟信号输入通道 D.地址锁存器
-
数据缓冲(锁存)器在 (
C
)A. D/A转换器接口时需要 B. A/D转换器接口时需要
C. D/A和A/D转换器接口时都需要 D. D/A和A/D转换器接口时都不需要
-
三态缓冲器在 (
C
)A. D/A转换器接口时需要 B. A/D转换器接口时需要
C. D/A和A/D转换器接口时都需要 D. D/A和A/D转换器接口时都不需要