《单片机原理及应用》期末复习题1

更新时间:2023-03-11 09:22:01 阅读量: 教育文库 文档下载

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

一、填空题 1、若采用6MHz的晶体振荡器,则MCS-51单片机的振荡周期为____2/12us_____,机器周期为_______2us________。

2、MCS-51单片机共有 5 个中断源,由 IE 寄存器设定中断的开放和禁止;

每个中断源有 两 个优先级,由 IP 寄存器设定。 3、单片机的内部RAM区中,可以位寻址的地址范围是

_________20H~2FH_________,特殊功能寄存器中,可位寻址的地址是_______80H~FFH__________。

4、MSC-51单片机引脚信号中,信号名称带上划线的表示 可外接电路 或 低电平 时该信号有效;

5、 函数 是C语言的基本单位。 6、若由程序设定RS1、RS0=0、1,则工作寄存器R0~R7的直接地址为____08H~0FH_____。 7、串行口通信方式2接收到的第9位数据送 SCON 寄存器的 RB8 位中保存。

8、MCS-51内部提供 2 个可编程的 16 位定时/计数器,定时器有 4 种工作方式。

9、在C51中,变量的数据类型说明为bit,则其取值范围是 0或1 。 10、串行口方式3发送的第9位数据要事先写入 SCON 寄存器的 RB8 位。

11、MCS—51单片机外部中断请求信号有电平方式和脉冲方式,在电平方式下,当采集到

P3.2或P3.3引脚 的有效信号为低电平时,激活外部中断。

12、 CPU又称 MPU ,一般由 运算器 和 控制器 两部分组成。

13、使用DPTR作间址指针进行寄存器间接寻址时,其寻址能力为 所有存储器 。 14、整型变量的占用的存储空间是 两个字节 ;字符型变量占用的存储空间是 一个字节

15、ALU指的是 算术/逻辑单元 。

16、MCS-51单片机的中断源分别是 外部中断0 、 定时/计数器0 、 外部中断1 、 定时/计数器1 、 串行口接收/发送中断 。

17、KeiL C51软件中,工程文件的扩展名是____ .Uv2 ______,编译连接后生成可烧写的文件扩展名是____ _.hex______

二、选择题

1、C语言中最简单的数据类型包括( B/D )。

A、整型、实型、逻辑型 B、整型、实型、字符型 C、整型、字符型、逻辑型 D、整型、实型、逻辑型、字符型

2、下列描述中正确的是( D )。

A、程序就是软件 B、软件开发不受计算机系统的限制

C、软件既是逻辑实体,又是物理实体 D、软件是程序、数据与相关文档的集合 3、下列计算机语言中,CPU能直接识别的是( D )。

A、 自然语言 B、 高级语言 C、 汇编语言 D、机器语言

4、MCS-5l单片机的堆栈区是设置在( C )中。

A、片内ROM区 B、片外ROM区 C、片内RAM区 D、片外RAM区 5、以下叙述中正确的是( C )。

A、用C语言实现的算法必须要有输入和输出操作 B、用C语言实现的算法可以没有输出但必须要有输入 C、用C程序实现的算法可以没有输入但必须要有输出 D、用C程序实现的算法可以既没有输入也没有输出 6、定时器/计数器工作方式1是( D )。 A、8位计数器结构 B、2个8位计数器结构 C、13位计数结构 D、16位计数结构 8、C语言提供的合法的数据类型关键字是( D )。 A、Double B、short C、integer D、Char

9、片内RAM的20H~2FH为位寻址区,所包含的位地址是( B )。

A、00H~20H B、00H~7FH C、20H~2FH D、00H~FFH 10、以下能正确定义一维数组的选项是( B )。

A、int a[2,5]={0,1,2,3,4,5}; B、char a[ ]={0,1,2,3,4,5}; C、char a={'A','B','C'}; D、int a[5]=\11、MCS-51单片机的复位信号是( A )有效。 A、高电平 B、低电平 C、脉冲 D、下降沿 12、8051的单片机的堆栈指针( D ) A、 只能位于内部RAM低128字节范围内 B、 可位于 内部RAM低256字节范围内

C、 可位于 内部ERRAM内。 D、可位于内部RAM或外部RAM内

13、在串行口工作于异步通信方式时,其接收由( C )来启动。 A、REN B、RI C、REN和RI D、TR 14、存储16×16点阵的一个汉字信息,需要的字节数为( A ) A、 32 B、 64 C、 128 D、 256

15、设MCS-51单片机晶振频率为12MHz,定时器作计数器使用时,其最高的输入计数频率应为( B )

A、2MHz B、1MHz C、500kHz D、250kHz

16、利用下列( D )关键字可以改变工作寄存器组

A、interrupt B、sfr

C、while D、using

17、C51中一般指针变量占用( c )字节存储。

A、一个 B、两个 C、三个 D、四个 18、使用宏来访问绝对地址时,一般需包含的库文件是( b )

A、reg51.h B、absacc.h C、intrins.h D、startup.h 19、单片机的定时器/计数器工作方式1是( D )。

A、8位计数器结构 B、2个8位计数器结构

C、13位计数结构 D、16位计数结构 20、串行口每一次传送( C )字符。

A、1个 B、1串 C、1帧 D、1波特 21、数据的存储结构是指( D )。

A、存储在外存中的数据 B、数据所占的存储空间量 C、数据在计算机中的顺序存储方式 D、数据的逻辑结构在计算机中的表示 22、下列关于栈的描述中错误的是( C )。 A、栈是先进后出的线性表 B、栈只能顺序存储

C、栈具有记忆作用 D、对栈的插入和删除操作中,不需要改变栈底指针

23、在寄存器间接寻址方式中,间址寄存器中存放的数据是( B )。 A、参与操作的数据 B、操作数的地址值 C、程序的转换地址 D、指令的操作码 24、MCS-51单片机的复位信号是( A )有效。

A、高电平 B、低电平 C、脉冲 D、下降沿

25、为了使模块尽可能独立,要求( A )。

A、模块的内聚程度要尽量高,且各模块间的耦合程度要尽量强 B、模块的内聚程度要尽量高,且各模块间的耦合程度要尽量弱 C、模块的内聚程度要尽量低,且各模块间的耦合程度要尽量弱 D、模块的内聚程度要尽量低,且各模块间的耦合程度要尽量强

26、若MCS-51单片机使用晶振频率为6MHz时,其复位持续时间应该超过( 4 )。

A、2μs B、4μs C、8μs D、1ms

27、以下选项中可作为C语言合法常量的是( A )

A、-80 B、-080 C、-8e1.0 D、-80.0e

28、能够用紫外光擦除ROM中程序的只读存储器称为( C )。

A、掩膜ROM B、PROM C、EPROM D、EEPROM 29、以下不能定义为用户标识符是( D )。

A、Main B、_0 C、_int D、sizeof

30、下选项中,不能作为合法常量的是( B )。

A、1.234e04 B、1.234e0.4 C、1.234e+4 D、1.234e0

31、存储16×16点阵的一个汉字信息,需要的字节数为( D ) A、 32 B、 64 C、 128 D、 256

32、以下选项中合法的字符常量是( D )

A、 \ B、 ’\\010’ C、 68 D、 D

33、设MCS-51单片机晶振频率为12MHz,定时器作计数器使用时,其最高的输入计数频率应为( B )

A、2MHz B、1MHz C、500kHz D、250kHz

34、下列数据字定义的数表中,( D )是错误的。 A、DW “AA” B、DW “A” C、DW “OABC” D、DW OABCH 三、判断题

( √╳ )1、在对某一函数进行多次调用时,系统会对相应的自动变量重新分配存储单元。

( √ )2、自动变量属于局部变量。

( √ )3、Continue 和break都可用来实现循环体的中止。 ( ╳ )4、在MCS-51系统中,一个机器周期等于1.5μs。

( √ )5、若一个函数的返回类型为void,则表示其没有返回值。 ( √ )6、所有定义在主函数之前的函数无需进行声明。

( √ )7、定时器与计数器的工作原理均是对输入脉冲进行计数。 ( √ )8、END表示指令执行到此结束。

( ╳ )9、MCS-51的相对转移指令最大负跳距是127B。 ( ╳ )10、MCS-51的程序存储器只是用来存放程序的。

( √ )11、TMOD中的GATE=1时,表示由两个信号控制定时器的的启停。 ( ╳ )12、MCS-51的特殊功能寄存器分布在60H~80H地址范围内。

( √ )13、片内RAM与外部设备统一编址时,需要专门的输入/输出指令。 ( √ )14.寄存器间接寻址可以访问数据存储器,也可以访问程序存储器。 ( √ )15.在C51中,将数据的存储类型说明为data,则该数据映射的存储

空间为片内位寻址空间。 ( ╳ )16.MCS—51属于16位的单片机。 ( ╳ )17.基址加变址寻址只能访问程序存储器。 ( √ )18.位地址和字节地址在形式上没有区别。 ( √ )19.如果x=0xEA,则执行x<<2后,x的值为0xA8。

( √ )20.在MCS—51的指令系统中,地址分为字节地址和位地址。 ( ╳ )21.汇编语言指令就是指能被CPU直接执行的指令。 ( √ )22.在MCS—51的指令系统中,伪指令、指令都是在程序执行的时候起作用。

( ╳ )23、(R7)表示工作寄存器R7中的内容。 ( √ )24、若一个函数的返回类型为void,则表示其没有返回值。 ( √ )25、定时器与计数器的工作原理均是对输入脉冲进行计数。

( √ )26、SFR中凡是能被8整除的地址,都具有位寻址能力。 ( √ )27、不能用“sfr16” 直接访问定时器/计数器0和1。 ( ╳ )28、MCS-51单片机的程序存储器只能用来存放程序的。 ( ╳ )29、串口中断标志由硬件清0。

( √ )30、特殊功能寄存器的名字,在C51程序中,全部大写。 ( √ )31、“sfr”后面的地址可以用带有运算的表达式来表示。

( √ )32、#include 与#include “reg51.h”是等价的。 ( ╳ )33、sbit不可以用于定义内部RAM的可位寻址区,只能用在可位寻址的SFR上。

四、简答题

1、在使用8051的定时器/计数器前,应对它进行初始化,其步骤是什么? 解:1、配置定时器/计数器的工作方式。 2、给THi和TLi赋初值。 3、启动定时/计数器。

4、打开定时/计数器中断标志。 5、打开总中断。 2、在有串行通信时,定时器/计数器1的作用是什么,怎样确定串行口的波特率? 解:如果有串行通信时,定时器/计数器1的作用是控制波特率。 串行口的波特率是有定时器1的溢出率决定的。

3.51系列单片机具有几个中断源,分别是如何定义的?其中哪些中断源可以被定义为高优先级中断,如何定义? 解:51系列单片机具有5个中断源。

外部中断0、1是由EXi外部中断标志位,ITi中断触发方式和EA总中断决定。

定时器/计数器0、1是由TMOD工作方式控制器,THi和TLi初始值控制器,TRi定时/计数器开关,ETi定时/计数器中断标志位和EA总中断决定。

串行口接收/发送中断是由SCON串行口控制寄存器,定时/计数器的波特率设置决定。

51系列单片机的5个中断源都可以被定义为高优先级。只要在IP中断优先级控制寄存器的相应位控制就可以!如:串行口优先级:PS置1,串口通信就是高优先级,反之为低优先级。

4.在C51语言中,定义MSC-51单片机的中断服务函数时需要使用关键字interrupt m 进行定义。参数m可以取那些值?分别表示何种意义? 解:m可以去0~4,相应对应各个中断,0为外部中断0,1为定时器/计数器0,2外部中断1,3为定时器/计数器1,4为串行口接收/发送中断。

5. 什么是指令周期、机器周期和震荡周期? 解:指令周期为单片机执行一条指令的时间,机器周期为单片机执行一条最简单的指令需要的时间,震荡周期为石英震荡器震荡一次的时间。

6.在C51中,存储器类型有几种,它们分别表示的存储器区域是什么? 解:片内数据存储器,片外程序存储器,片外数据存储器。 片内数据存储器由00H~FFH; 片外程序存储器由0000H~FFFFH;

(3分)

4、 已知(A)=58H,(30H)=7FH,(P1)=EAH,执行下列程序: MOV SP,#40H PUSH A PUSH 30H MOV A,P1 MOV 30H,A POP 30H POP A 执行后结果:(SP)= 40H ,(A)= 58H ,(30H)= 7FH ,(41H)= 58H 。

五、根据题意,按要求答题。

1. AT98S51单片机P1口上接8只发光二极管(高电平亮,低电平灭),若晶振频率是12MHz,用定时/计数器T0以工作方式1工作,使8只发光二极管每1S单循环点亮。

(1) 计算定时初值,写出过程 (2) 根据相关注释,填写程序 (3)

答:(1)定时初值:

(216-X)×1μS = 50mS

X=216-50000 =15536

(2) MOV TMOD,#01H ;设T0工作方式

MOV DPTR,#15536 ;置定时初值50mS MOV TH0,DPH MOV TL0,DPL

MOV A,#01H ;置A初值 SETB TR0 ;允许定时

LOOP:MOV R7,#20 ;设定时次数 MOV P1,A ;从P1口输出

LOOP1: JNB TF0,$ ;判断定时50mS到没 CLR TF0 ;定时时间到,TF0清0 MOV TH0,DPH ;重新置定时初值50mS MOV TL0,DPL

DJNZ R7,LOOP1 ;判断定时次数到没 RL A ;输出左移

SJMP LOOP ;继续循环输出 END

2、根据给定存储类型和数据类型,声明下列变量:

(1)在片内RAM低128字节定义一个有符号整型变量val,初值为100;

(signed) int data val = 100;

(2)在ROM定义一个3元素的无符号字节数组num,数组内容分别为:12H,34H,56; unsigned char code num[3] = {0x12, 0x34, 56};

(3)在片外RAM定义一个指向无符号字节类型的指针变量p; unsigned char xdata *p;

6、简述矩阵式8行2列键盘的工作过程,其中P1口连接8根行线,P3.0和P3.1连接2根列线。

判断是否有键按下:先给列线P3.0和P3.1送低电平,然后读行线P1的值,判断P1是否为0xff;若P1为0xff则表示没有键按下,则返回重新判断是否有键按下;若P1不为0xff则表示有键按下,则延时10ms去抖动,再重新读行线P1口,再次判断是否有键按下。

若确实有键按下,则判断哪一个键按下:先给第一根列线P3.0送低电平,而P3.1送高电平,然后读行线P1,判断P1是否为0xff;若是则表示按下的键在这第一列;否则给第二列P3.1送低电平,而P3.0送高电平,然后读行线P1,判断P1是否为0xff,若是则表示按下的键在这第二列;找到按键所在列后,再根据读到的行线值中0的位置从而判断按键所在行线。 确定按键后,执行按键所对应的服务程序;然后等待键释放;按键释放通过给所有的列线P3.0和P3.1送低电平,然后读行线P1的值来进行判断;按键释放后再次延时去抖动,然后返回重新判断是否有键按下。

7、简述51单片机串行双机通信的过程,写明发送和接收时软硬件分别执行的操作。 先

数据发送时,在TI=0时,CPU将待发送数据送入SBUF,启动发送;数据由TXD引脚按位送出,发送时钟由T1控制,最先送出起始位(0),然后依次是8位数据位(低位在前),最后是停止位(1);一帧数据发送完毕后,硬件自动将TI置1,向CPU请求中断;CPU接收到请求信号后,需将TI清0,然后才能启动下一次发送。

数据接收时,允许接收位REN必须置1,接收器开始工作;当接收到起始位(0),启动接收;在波特率的控制下,把接收到的数据依次移入移位寄存器;当接收完一帧数据,将移位寄存器中的数据送入SBUF,同时硬件自动将RI置1,向CPU请求中断。CPU接收到请求信号后,需将RI清0,然后才能正常接收下一帧数据。

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

Top