单片机原理及应用试题库---答案
《单片机原理及应用》试题库一、 填空题
1.单片机就是把( CPU)、( 输入/输出 )、和( 存储器 )等部件都集成在一个电路芯片上,并具备一套功能完善的( 指令系统 ),有的型号同时还具备( AD )和( DA )等功能部件,其简称为( 微处理器 )或(微控制器 )。
2.Intel公司典型的单片机有( MCS-51系列 )和( MCS-96系列 )。
3.单片机具有体积( 下 )、重量( 轻 )、价格( 低 )、功耗( 小 )、控制功能强、运算速度快、运用灵活、易于产品化、抗扰能力( 强 )等特点,故在国民经济建设、军事及家用电器等领域均得到了广泛的应用。
4.微处理器本身不是计算机,它是微型计算机的核心部件,又称它为( CPU )。它包括两个主要部分:( 运算器 )、( 控制器 )。
5.当扩展外部存储器或I/O口时,P2口用作( 地址线的高8位 )。
6.MCS-51单片机内部RAM区有 ( 4 )个工作寄存器区。
7.MCS-51单片机内部RAM区有 ( 128 )个位地址。
8.89C51单片机片内RAM中位寻址区的地址范围是( 20H—2FH ),工作寄存器区的地址范围是( 00H—1FH ),片内程序存储器中寻址区的地址范围是( 0000H—07FFH )。
9.MCS-51有( 4 )个并行I\O口。
10.MCS-51的堆栈是软件填写堆栈指针临时在( 30H—7FH )内开辟的区域.
11.MCS-51片内( 20H—2FH )范围内的数据存储器,既可以字节寻址又可以位寻址。
12.程序状态标志字寄存器PSW中的PSW.7的含义是( 进位和借位标志位 );PSW.0的含义是( 奇偶校验位 )。
13.若不使用89C51片内的程序存储器,引脚( EA’ )必须接地。
14.MCS-51中凡字节地址能被( 0和8 )整除的特殊功能寄存器均能寻址。
15.MCS-51有4组工作寄存器,它们的字节地址范围是( 00H—1FH )。
16.当MCS-51引脚( ALE )信号有效时,表示从P0口稳定地送出了低8位地址.
17.在单片机的RESET端出现( 两个机器周期以上的高电平时 ),便可以可靠复位,复位后的程序指针PC指向( 0000H )地址。
18.MCS-51系列单片机有:(外部中断0), (外部中断1 ), (定时/计数器T0溢出中断 ), ( 定时/计数器T1溢出中断), ( 串行口 )等5个中断请求源。
39.KeiL C51软件中,工程文件的扩展名是__UV2______,编译连接后生成可烧写的文件扩展名是__hex_______。
40.C51支持的指针有 通用指针 和 Crol__________完成一个字节的循环左移,用__ _irol_ ____完成二个字节的循环左移。
42.C51的基本数据类型有 char 、 int 、 long 、 float 、 bit sbit 、 sfr sfr16 。
43.C51的存储类型有 code 、 data 、 bdata 、 idata 、 xdata 、 pdata 。
44.C51的存储模式有 large 、 compact 和 small 。
45.C51程序与其他语言程序一样,程序结构也分为 顺序结构 、 选择结构 、 循环结构三种。
46.C51中int型变量的长度为 16位 ,其值域为 0-65535 。
47.C51中关键字sfr的作用 定义变量访问8位的SFR ,sbit的作用 定义变量访问SFR中的一位 。
48.函数定义由 函数头 和 函数体 两部分组成。
49.C51中“!”运算符的作用是 取反 。
50.若函数无返回值,用 void 关键字指定。
51.若局部变量未初始化,其初值为 不确定 。
52. 89C51五个中断源的中断入口地址分别是
: 0003H ;
: 0013H
T0: 000BH ;T1: 001BH ;串行口: 0023H 。
53 在CPU未执行同级或更高优先级中断服务程序的条件下,中断响应等待时间最少需 要 。
54. 中断嵌套与子程序嵌套的区别在于: 一是子程序嵌套是在程序中事先按排序好的;而中断嵌套是 随机的 。二是子程序嵌套无次序限制;而中断嵌套只允许 低级中断嵌套高级中断 。
55. MCS-5l单片机的堆栈区只可设置在 30H-7FH ,堆栈寄存器SP是 8 位寄存
器。
56. 若(IP)=00010100B,则中断优先级最高者为 串行口和外部中断1 ,最低者为 定时/计数器T1、T0溢出中断 ,外部中断0 。
57. MCS-51 单片机中,只有 __外部中断___ 中断源存在中断采样的问题。
58. 对中断进行查询时,查询的中断标志位共有 _TF1__ 、 _TF0__、_IE1__ 、 _IE0__、_TI__ 和 _RI__ 六个中断标志位。
59. MCS-51单片机中断系统中有 外部中断0 . 外部中断1 . 定时/计数器T1溢出中断 . 定时/计数器T0溢出中断 . 串行口中断
五个中断请求源,其中优先级最高的是 外部中断0 ,优先级最低的是 串行口中断 。
60. 定时/计数器工作方式3仅适用于 定时计数器T0 。
61. 若将定时/计数器用于计数方式,则外部事件脉冲必须从 P3.4和P3.5 引脚输入,且外部脉冲的最高频率不能超过时钟频率的 1/12 。
62. 定时器/计数器的工作方式3是指的将 定时、计数器 拆成两个独立的8位计数器。而另一个定时器/计数器此时通常只可作为 串行口的波特率发生器 使用。
64. 假定定时器 1 工作在方式 2 ,单片机的振荡频率为 3MHZ ,则最大的定时时间为 __1024us_______ 。
65. 当定时器T0工作在方式3时,要占定时器T1的TR1和TF1_ 控制位.
66. MCS-51的定时器用作定时时,其定时时间与时钟频率和计数初值有关。用作计数时,最高计数频率的 。
67. MCS—51单片机内部有 2 个位加1定时 / 计数器,可通过编程决定它们的工作方式,其中,可进行13位定时 / 计数的是方式是 0 。
68. MCS-51单片机的串行接口有 4 种工作方式。其中方式 方式3 为多机通信方式。
69 串行口中断标志RI/TI由 系统 置位, 软件 清零。
70. MCS-51串行接口有4种工作方式,这可在初始化程序中用软件填写特殊功能寄存器 SCON ( )加以选择.
71. 用串口扩并口时,串行接口工作方式应选为方式 0 。
72. 串行通信按照数据传送方向可分为三种制式: 单工 、 双工 和 半工 。
73. 波特率定义为 一秒钟传送多少个数据位 。串行通信对波特率的基本要求是互相通信的甲乙双方必须具有的 相同的 波特率。
74. 多机通信时,主机向从机发送信息分地址帧和数据帧两类,以第9位可编程TB8作区分标志。TB8=0,表示 数据帧 ;TB8=1,表示 地址帧 。
75. 当从机 SM2=1 时,只能接收主机发出的地址帧,对数据不予理睬。
76. 多机通信开始时,主机首先发送地址,各从机核对主机发送的地址与本机地址是否相符,若相符,则置 SM2=0 。
77 半导体存储器中有一类在掉电后不会丢失数据,称之为__ROM_______,有一类掉电后会丢失数据,称之为___RAM_________。
78. 51系列单片机扩展数据存储器最大寻址范围为( 64K )。
79. 当扩展外部存储器或I/O口时,P2口用作( 地址线的高8位 )。
80. 80C51的存储器可以分为三个不同的存储空间,分别是64KB 片外数据存储器 ; 64 KB 程序存储器 ; 256 B(包括特殊功能寄存器) 片内数据存储器 。
81. MCS-51可提供( 数据 )和( 程序 )两种存储器.最大存储空间可达( 64K )的两个并行存储器扩展系统。
82. 为扩展存储器而构造系统总线,应以P0口的8位口线作为( 地址线低8位和数据 )线,以P2口的口线作为( 地址线高8位 )线。
83. 为实现89C51内外程序存储器的衔接,应使用( EA’ )信号进行控制。
85. 在存储器扩展中,无论是线选法还是译码法,最终都是为扩展芯片的( CS’ )端提供信号。
86. 89C51并行扩展I/O口时,对扩展I/O口芯片输入/输出端的基本要求是:构成输出口时,接口芯片应具有 锁存 功能;构成输入口时,接口芯片应具有 三态缓冲和锁存选通 功能;
89. 总线路是用于传送信息的 公共通信 途径。总线可分为 数据总线 、 地址总线 .和 控制总线 。
90. 89C51扩展I/O口从 片外数据存储器 存储空间扩展,从理论上讲,最多可扩展64K个。
91. MCS—51单片机的P0—P3口均是 8位并行 I/O口,其中的P0口和P2口除了可以进行数据的输入.输出外,通常还用来构建系统的 地址线 和 数据线 ,在P0—P3口中, P0 为真正的双向口, P1-P3 为准双向口。
92. 对 I/O 进行编址通常采用 _与片外数据存储器统一变址________ 编址技术。
93. 连接到单片机上的输入口应具有 __三态缓冲和锁存选通____ 功能,连接到单片机上的输出口应具有 _输出锁存_____功能。
94. 8255 共有三种工作方式,分别是 __方式0___ . __方式1__ 和 __方式2___ 。这三种工作方式通过 __方式选择____ 控制字进行选择。
98 当51单片机与慢速外设进行数据传输时,最佳的传输方式是 中断传送方式 。
99. LED数码管的使用与发光二极管相同,根据其材料不同正向压降一般为 0.7 V,额定电流为 20 m A,最大电流为 50 m A。
100. 键盘扫描控制方式可分为 程序 控制、 定时 控制和 中断 控制方式。
101. LED显示器的静态驱动显示和动态驱动显示的优缺点是:__静态显示亮度高但是占用IO口较多,动态显示亮度不高但是占用IO口较少________。
102. A/D转换器按转换原理形式可分为 积分 式、 逐次逼近 式和 并行/串行比较 式。
103. A/D转换器0809按转换原理为( 逐次逼近式AD转换器 )。
二、 判断题
1、 所谓的单片机,就是将CPU、存储器、定时计数器、中断功能以及I/O设备等主要功能部件都集成在一块超大规模集成电路的微型计算机。 (对 )
2、 8051单片机,程序存储器数和数据存储器扩展的最大范围都是一样的。( 对 )
3、 MCS-51单片机是微处理器。( 对 )
4、 8位二进制数构成一个字节,一个字节所能表达的数的范围是0-255。( 对 )
5、 8051中的工作寄存器就是内部RAM中的一部份。(对 )
6、 8051中特殊功能寄存器(SFR)就是内部RAM中的一部份。( 错 )
7、 SP称之为堆栈指针,堆栈是单片机内部的一个特殊区域,与RAM无关。( 错 )
8、 89C51单片机片外数据存储器与扩展I/O口统一编址。( 对 )
9、 89C51单片机片内RAM的地址空间为00H~7FH。( 对 )
10、 89C51单片机访问片外ROM是以
作为读选通信号。( 对 )
11、 CPU每取一个指令字节,立即使程序计数器PC自动加1。( 对 )
12、 第1组工作寄存器R0~R7的地址是10H~17H。 (错 )
13、 不能用指令对对程序计数器PC进行读写操作。( 对 )
14、 使用89C51且
=1时,仍可外扩64KB的程序存储器。( 对 )
15、 因为MCS-51 可上电复位,因此,MCS-51系统也可以不需要复位电路。(错 )。
16、 程序存储器和数据存储器的作用不同,程序存储器一般用存放数据表格和程序,而数据存储器一般用来存放数据( 对 )。
37.若一个函数的返回类型为void,则表示其没有返回值。(对 )
38.特殊功能寄存器的名字,在C51程序中,全部大写。(对 )
39.“sfr”后面的地址可以用带有运算的表达式来表示。( 对 )
40.#include <reg51.h>与#include “reg51.h”是等价的。( 错)
41.sbit不可以用于定义内部RAM的可位寻址区,只能用在可位寻址的SFR上。( 对)
42.一个函数利用return不可能同时返回多个值。( 对 )
43.中断响应最快响应时间为3个机器周期。( 对 )
44.89C51每个中断源相应地在芯片上都有其中断请求输入引脚。( 错 ) 45.89C51单片机对最高优先权的中断响应是无条件的。( 错 ) 46.中断初始化时,对中断控制器的状态设置,只可使用位操作指令,而不能使用字节操作指令。( 错 ) 47.在一般情况下8051单片机允许同级中断嵌套。( 错 ) 48.89C51单片机五个中断源中优先级是高的是外部中断0,优先级是低的是串行口中断。 ( 对 )
49.MCS-51有3个中断源,优先级由软件填写特殊功能寄存器IP加以选择。( 错 )
50.外部中断
入口地址为_0013H。 ( 错 )
51.MCS-51的入口地址是0003H。( 对 ).
52. TMOD中的GATE=1时,表示由两个信号控制定时器的启停。 ( 对 )。
53. 要进行多机通信,MCS-51串行接口的工作方式应为方式1。 ( 错 )
54. MCS-51的串行接口是全双工的。( 对 )
55. MCS-51上电复位时,SBUF=00H。 ( 对 )。
56. MCS-51单片机片外数据存储器与扩展I/O口统一编址。( 对 )
57. 单片机系统扩展时使用的锁存器,是用于锁存高8位地址。( 错 )
58. 程序存储器和数据存储器的作用不同,程序存储器一般用存放数据表格和程序,而数据存储器一般用来存放数据。( 对 )
59 在单片机应用系统中,外部设备与外部数据存储器传送数据时,使用MOV指令。( 错 )
60.MCS-51单片机片外数据存储器与扩展I/O口统一编址。( 对 )
61.MCS-51单片机和外设之间的数据传送方式主要有查询方式和中断方式,两者相比后者的效率更高。( 对)
62.8155的复位引脚可与89C51的复位引脚直接相连。( 错 )
63. 为了消除按键的抖动,常用的方法有硬件和软件两种方法。( 对 )
64.中断服务程序的最后一条指令是RET。( 错 )
65.存储器分成内存和外存两大部分其中外存可以直接与CPU交换信息。( 错 )
66. P2口既可以作为I/O使用又可以作地址/数据复用口使用。( 错 )
67.在中断响应阶段CPU一定要做如下2件工作保护断点和给出中断服务程序入口地址。。( 对 )
68
72.AJMP跳转空间最大可达到64KB 。 ( 错 )
73.DPTR是由DPH和DPL两个8位特殊寄存器组成的。( 对 )
75.C51中,将数据的存储类型说明为data,则该数据映射的存储空间为片内位寻址空间。( 错 )
76.MCS—51属于16位的单片机。 ( 错 )
78.位地址和字节地址在形式上没有区别。 ( 对 )
79.如果x=0xEA,则执行x<<2后,x的值为0xA8。 ( 对 )
78.在MCS—51的指令系统中,地址分为字节地址和位地址。( 对 )
79.汇编语言指令就是指能被CPU直接执行的指令。( 错 )
80.在MCS—51的指令系统中,伪指令、指令都是在程序执行的时候起作用。( 错 )
81.(R7)表示工作寄存器R7中的内容。 ( 对 )
82.微机中数据总线的宽度决定了CPU的寻址能力。 ( 对 )
83.在MCS-51中,中断的开放和屏蔽都可以通过控制字TMOD来完成。( 错 )
84.在MCS-51中,中断可以任意嵌套。 ( 对 )
85.若一个函数的返回类型为void,则表示其没有返回值。( 对 )
86、定时器与计数器的工作原理均是对输入脉冲进行计数。( 对 )
87、SFR中凡是能被8整除的地址,都具有位寻址能力。( 对 )
88、不能用“sfr16” 直接访问定时器/计数器0和1。( 错 )
89、MCS-51单片机的程序存储器只能用来存放程序的。( 错 )
90、串口中断标志由硬件清0。( 错 )
91、特殊功能寄存器的名字,在C51程序中,全部大写。( 对 )
92、“sfr”后面的地址可以用带有运算的表达式来表示。( 对 )
93、#include <reg51.h>与#include “reg51.h”是等价的。( 错 )
94、sbit不可以用于定义内部RAM的可位寻址区,只能用在可位寻址的SFR上。( 对 )
95.我们所说的计算机实质上是计算机的硬件系统和软件系统的总称。 ( 对 )
96.MCS-51的5个中断源优先级相同。 ( 错 )
97. MCS-51外扩I/O口与外RAM是统一编址的。 ( 对 )
98.MCS-51是微处理器。 ( 对 )
99.MCS-51的相对转移指令最大负跳转距是128B。( 错 )
100.PC存放的是当前正在执行的指令地址。 ( 错 )
101.使用可编程接口须初始化。 ( 对 )
102.MCS-51系统可以没有复位电路。( 错 )
103.MCS-51单片机是8位机。 ( 对 )
104.EPROM上的信息可电擦除。( 错 )
105.程序计数器PC不能对它进行读写操作。 ( 对 )
106.在一般情况8051单片机允许同级中断嵌套。( 错 )
107. 8051单片机程序存储器数和数据存储器扩展的最大范围都是一样的。( 对 )
108.如果发生除法溢出错误则PSW标志位P置1。( 错 )
109.CPU对内部RAM和外部RAM的读写速度一样快。( 错 )
110.对于8051单片机当CPU对内部程序存储器寻址超过4K时系统会自动在外部程序存储器中寻址。( 对 )
111.-86原码=11010110B 反码=10101001B补码=10101010B ( 对 )
112.、由于MCS-51的串行口的数据发送和接收缓冲器都是SBUF所以其串行口不能同时发送和接收数据即不是全双工的串行口。 ( 错 )
三、选择题
1. 单片机8031属于:B
(A) MCS-48系列 (B) MCS-51系列 (C) MCS-96系列 (D) MCS-31系列
3.单片机程序存储器的寻址范围是由程序计数器PC的位数决定的,MCS-51的PC为16位,因此其寻址范围是 B
(A) 4 KB (B) 64 KB (C) 8 KB (D) 128 KB
5.在89C5l中,可使用的堆栈最大深度为 A
(A) 80个单元 (B) 32个单元 (C) 128个单元 (D) 8个单元
6.位处理器是单片机面向控制应用的重要体现,下列中不属于位处理器资源的是 B
(A) 位累加器Cy (B) 通用寄存器的各个位
(C) 特殊功能寄存器的可寻址位 (D) 位操作指令集
8. 在单片机中,通常将一些中间计算结果放在( D )中。 A、累加器 B、控制器 C、程序存储器 D、数据存储器 9. 单片机应用程序一般存放在( B ) 中。 A、RAM B、ROM C、寄存器 D、CPU 10. 单片机上电后或复位后,工作寄存器R0是在( A ) A、0区00H单元 B、0区01H单元 C、0区09H单元 D、SFR 11. 单片机89C51的XTAL1和XTAL2引脚是( D )引脚 A、外接定时器 B、外接串行口 C、外接中断 D、外接晶振 14. 8051单片机中既可位寻址又可字节寻址的单元是( A ) A、20H B、30H C、00H D、70H
15. 8051单片机中片内RAM共有( A )字节 A、128 B、256 C、4K D、64K 16. 当寄存器P S W的R S 0和R S 1分别为1和0时,系统选用的工作寄存器组为( B ) A、组0 B、组1 C、组2 D、组3 17. 提高单片机的晶振频率,则机器周期( C )。 A、不变 B、变长 C 、变短 D、不定 18 在堆栈操作中,当进栈数据全部弹出后,这时S P应指向( A ) A、栈底单元 B、7FH单元 C 、栈底单元地址加1 D、栈底单元地址减1 19. 89C51单片机中,唯一一个用户不能直接使用的寄存器是( C ) A、P S W B、D P T R C 、P C D、B 20. 89C51单片机中,唯一一个用户可使用的16位寄存器是( B ) A、P S W B、D P T R C 、A D、P C 21.若MCS-51系统中,晶振频率为8MHz,则一个机器周期等于( A ) μs。
A 1.5 B 3 C 1 D 0.5
22. MCS-51单片机外部有40个引脚,其中,地址锁存允许控制信号引脚是( A)
(A)ALE (B)
(C)
(D)RST
23. 在CPU内部,反映程序运行状态或反映运算结果的特征寄存器是( B )。
(A)PC (B)PSW (C)A (D)SP
24. AJMP指令的跳转范围是( C )。
(A)256 (B)1KB (C)2KB (D)64KB
25. 单片机应用程序一般存放在( B ) A、RAM B、ROM C、寄存器 D、CPU
26. 单片机的堆栈指针SP始终是( B ) A、指示堆栈底 B、指示堆栈顶 C、指示堆栈地址 D、指示堆栈长度
27. LJMP跳转空间最大可达到( D ) A、2KB B、256B C 、128B D、64KB
52.CPU响应中断后,能自动清除中断请求“1”标志的有( C )。
A.
/
采用电平触发方式 B。
/
采用两边触发方式
C.定时/计数器T0/T1中断 D。串行口中断TI/RI
53.80C51五个中断源中,属外部中断的有( AB )。
A.
B.
C.T0 D.T1 E.TI F.RI
54.按下列中断优先顺序排列,有可能实现的有( )。
A.T1、T0、
、
、串行口 B.
、T1、T0、
、串行口
C.
、
、串行口、T0、T1 D.
、串行口、T0、
、T1;
55.各中断源发出的中断申请信号,都会标记在MCS-51系统中的( B )中。
(A)TMOD (B)TCON/SCON (C)IE (D)IP
56.外中断初始化的内容不包括:A
(A) 设置中断响应方式 (B) 设置外中断允许
(C) 设置中断总允许 (D) 设置中断触发方式
57. 在 MCS-51 单片机中,需要软件实现中断撤销的是: D
(A) 定时中断 (B) 脉冲触发的外部中断
(C) 电平触发的外部中断 (D) 串行口中断
59. 8051单片机共有( B )中断源 A、4 B、5 C 、6 D、7 60. 8051单片机共有( A )个中断优先级 A、2 B、3 C 、4 D、5 61. 中断源I E 1(外部中断1)的向量地址为( C ) A、0003H B、000BH C 、0013H D、002BH 62. 执行M O V I E,#81H指令的意义是:( B ) A、屏蔽中断源 B、开放外中断源0 C 、开放外中断源1 D、开放外部中断源0和1
63. 下述条件中,能封锁主机对中断的响应的条件是( BE ) A、一个同级或高一级的中断正在处理中
B、当前周期不是执行当前指令的最后一个周期 C、当前执行的指令是RETI指令或对IE或IP寄存器进行读/写指令 D、当前执行的指令是一长跳转指令 E、一个低级的中断正在处理中 64. 8051单片机的中断源有( ABCDE ) A、外部中断0 B、定时/计数中断0 C、串行中断 D、外部中断1 E、定时/计数中断1 65 中断请求的不能自动撤除有( ) A、定时/计数中断硬件自动撤除 B、脉冲方式外部中断自动撤除 C、电平方式外部中断强制撤除 D、串行中断软件撤除 E、串行中断硬件自动撤除 66. 要想测量
引脚上的一个正脉冲宽度,那么特殊功能寄存器TMOD的内容应为( A )。
(A)09H (B)87 H (C)00H (D)80H
67. MCS-51的中断允许触发器内容为83H,CPU将响应的中断请求是( D )
(A) T1, (B)T0,T1 (C)T1,串行接口 (D) T0
68. 要使MCS-51能够响应定时器T1中断、串行接口中断,它的中断允许寄存器IE的内容应是( A )。
(A)98H (B)84H (C)42 (D)22H
69. MCS-51在响应中断时,下列哪种操作不会发生( C ).
(A)保护现场 (B)保护PC (C)找到中断入口 (D)保护PC转入中断入口
70. MCS-51响应中断时,下面哪一个条件不是必须的( D )
(A)当前指令执行完毕 (B)中断是开放的
(C)没有同级或高级中断服务 (D)必须有RETI指令
71. 下面哪一种传送方式适用于处理外部事件( C )。
(A)DMA (B)无条件传送 (C)中断 (D)条件传送
73.89S51的内部程序存储器与数据存储器容量各为多少?( C )
(A)64KB、 128B ( B)4KB、64KB
(C)4KB、128B (D)8KB、256B
74.在8x51芯片里,哪个引脚用于控制使用内部程序存储器还是外部程序存储器?( B )
(A)XTAL1 (B)/EA (C)/PSEN (D)ALE
75.下列哪个不是KeilC的预处理命令?( C )
(A)#include (B)#define (C)#exit (D)#if
76.下列哪个不是KeilC的数据类型?( B )
(A)void (B)string (C)char (D)float
77.在KeilC的程序里,若要指定P0口的bit3,如何编写?(C )
(A)P0.3 (B)Port0.3 (C)P0^3 (D)Port^3
78.在8x51里,若要扩展外部存储器时,数据总线连接哪个输入/输出端口?( A)
(A)P0 (B)P1 (C)P2 (D)P3
79.在KeilC里,判读开关状态时,使用if_else if语句与使用switch语句有何差异?( B )
(A)if-else if 语句较快 (B)if-else if语句有优先级 (C)switch语句可判读较多开关状态 (D)switch语句有优先级
80.在KeilC里,中断子程序与函数有何不同?( A)
(A)中断子程序不必声明 (B)函数不必声明
(C)中断子程序必须有形式参数 (D)中断子程序一定会有返回值
81.利用下列( D )关键字可以改变工作寄存器组
A、interrupt B、sfr
C、while D、using
82.C51中一般指针变量占用( C )字节存储。
A、一个 B、两个 C、三个 D、四个
83.使用宏来访问绝对地址时,一般需包含的库文件是( B )
A、reg51.h B、absacc.h C、intrins.h D、startup.h
85.定时/计数器T0在GATE = 1时运行的条件有( AC )。
A.P3.2 = 1 B.设置好定时初值 C.TR0=1 D.T0开启中
86.对定时器 0 进行关中断操作,需要复位中断允许控制寄存器的: ( A )
(A) EA 和 ET0 (B) EA 和 EX0
(C) EA 和 ET1 (D) EA 和 EX1
87.在下列寄存器中,与定时器 / 计数器控制无关的是:B
(A) TCON (B) SCON
(C) IE (D) TMOD
88. 与定时工作方式 0 和 1 相比较,定时工作方式 2 不具备的特点是: B
(A) 计数溢出后能自动恢复计数初值 (B) 增加计数器的位数
(C) 提高了定时的精度 (D) 适于循环定时和循环计数
89.MCS-51单片机定时器工作方式0是指的(C)工作方式。
A.8位 B.8位自动重装 C.13位 D.16位
90.使用定时器T1时,有几种工作方式( D )
(A)1种 (B)2种 (C)3种 (D)4种
91 单片机定时器可用于( ABC )。
A.定时 B.外部事件计数 C. 串行口的波特率制定 D.扩展外部中断源
96. 串行口的移位寄存器方式为( A )。
(A)方式0 (B)方式1 (C)方式2 (D)方式3
97. 用MCS-51用串行扩展并行I/O口时,串行接口工作方式选择(A)
(A)方式0 (B)方式1 (C)方式2 (D)方式3
98. 控制串行口工作方式的寄存器是( C )
(A)TCON (B)PCON (C)SCON (D)TMOD
99.6264芯片是( B )
(A)EEPROM (B)RAM(C)FLASH ROM (D)EPROM
100. 在下列单片机芯片中使用淹膜ROM作为内部程序存储器的是
(A) 8031 (B) 80C51 (C) 8032 (D) 89C51
101.单片机程序存储器的寻址范围是由程序计数器PC的位数决定的,MCS-51的PC为16位,因此其寻址范围是 B
(A) 4 KB (B) 64 KB (C) 8 KB (D) 128 KB
104.读RAM地址DPTR中包含的信息有( B )。
A.片选信号 B.读外RAM相应存储单元的地址信号
C.读外RAM 操作信号 D.RD信号
107.89C51并行扩展I/O口输入输出操作时执行的指令和控制信号是( ACD )。
A.执行MOVX指令 B.执行MOVC指令 C.用RE信号控制读
D.用WR信号控制写 E.用PSEN信号控制读 F.用ALE信号控制写
108. 在下列理由中,不能说明 MCS-51 的 I/O 编址是统一方式的理由是:
(A) 没有专用的 I/O 指令 (B) 没有区分存储器和 I/O 的控制信号
(C) 使用存储器指令进行 I/O 操作 (D) P3口线具有第二功能
111.用MCS-51用串行扩展并行I/O口时,串行接口工作方式选择(A)
(A)方式0 (B)方式1 (C)方式2 (D)方式3
四 简答题
1. 什么是单片机?它与一般微型计算机在结构上有何区别?
2. 新型8位单片机主要在哪些方面有所发展?给应用系统带来什么好处?
3. 51单片机内部有哪些主要的功能部件?
4. 51单片机在功能上、工艺上、程序存储器的配置上有哪些种类?
5. 80C51单片机的RAM分为几部分?各有什么特点和功能?
6. 简述复位的用途,复位的方法。
7. 简述MCS-51系列单片机的存储器空间分布?
8. 程序状态字PSW的作用是什么?常用标志有哪些位?作用是什么?
9. 简述80C51单片机的4个I/O口在使用上有哪些分工和特点?
12. 简述转移指令AJMP addr11,SJMP rel,LJMP addr16及JMP @A+DPTR的应用场合。
16. 什么是伪指令?常用的伪指令功能如何?
17. MCS-51单片机汇编语言有何特点?
18 利用MCS-51单片机汇编语言进行程序设计的步骤如何?
19. 常用的程序结构有哪几种?特点如何?
20. 子程序调用时,参数的传递方法有哪几种?
25. 对访问内部RAM和外部RAM,各应采用哪些寻址方式?
27. 什么是中断?其主要功能是什么?
28. 什么是中断优先级?中断优先处理的原则是什么?
29.各中断源对应的中断服务程序的入口地址是否能任意设定?
30.MCS-51系列单片机具有几个中断源,分别是如何定义的?其中哪些中断源可以被定义为高优先级中断,如何定义?
31.中断服务子程序与普通子程序有哪些相同和不同之处?
32. MCS-51 单片机能提供几个中断源?几个优先级?各个中断源的优先级怎样确定?在同一优先级中各个中断源的优先级怎样确定?
33. MCS-51 单片机的外部中断源有哪两种触发方式?如何选择?对外部中断源的触发脉冲或电平有什么要求?
34.想将中断服务程序放置在程序存储区的任意区域,在程序中应该作何种设置?请举例加以说明。
35 简述定时器的四种工作方式的特点,如何选择和设定?
36. 当定时器T0用作方式3时,由于TR1位已被T0占用,如何控制定时器T1的开启和关闭?
37. 已知8051单片机的fosc=12MHz,用T1定时。试编程由P1.0和P1.1引脚分别输出周期为2ms和500ms的方波。
38. 定时/计数器工作于定时和计数方式时有何异同点?
39. 当定时/计数器T0用作方式3时,定时/计数器T1可以工作在何种方式下?如何控制T1的开启和关闭?
40. 软件定时与硬件定时的原理有何异同?
41. 定时器T0和T1各有几种工作方式?
42. 设单片机的fosc=12MHZ,要求用T0定时150ms,分别计算采用定时方式0、定时方式1和定时方式2的定时初值。
43. 设单片机的fosc=6MHZ,问定时器处于不同工作方式时,最大定时范围分别是多少?
44. 若8031单片机的fosc=6MHZ,请利用定时器T0定时中断的方法,使P1.0输出周期2ms的方波的程序。
45. MCS-51系列单片机中的定时器/计数据有哪几个特殊功能寄存器?作用是什么?怎样计算定时器/计数器的计数初值?
46. 编与一个定时间隔为5ms的子程序,晶振频率为6MHz。
47.哪些变量类型是51单片机直接支持的?
48.简述C51的数据存储类型
49.简述C51对51单片机特殊功能寄存器的定义方法
50.简述C51对51单片机片内I/O口和外部扩展的I/O口的定义方法
51.C51中的中断函数和一般的函数有什么不同?
52.C51采用什么形式对绝对地址进行访问?
53.按照给定的数据类型和存储类型,写出下列变量的说明形式
(1)在data区定义字符变量val1
(2)在idata区定义整型变量val2
(3)在xdata区定义无符号字符型数组val3[4]。
(4)在xdata区定义一个指向char类型的指针px。
(5)定义可位寻址变量flag。
(6)定义特殊功能寄存器变量P3。
54. 串行通信和并行通信有什么区别?各有什么优点?
55. 什么是串行异步通信,它有哪些作用?并简述串行口接收和发送数据的过程。
56. 简述MCS-51单片机多机通信的特点。
57. 若异步通信按方式2传送,每分钟传送3000个字符,其波特率是多少?
58. 什么是串行异步通信,它有哪些作用?并简述串行口接收和发送数据的过程。
59. 8051单片机四种工作方式的波特率应如何确定?
60. 某异步通信接口,其帧格式由1个起始位(0),7个数据位,1个偶校验和1个停止位(1)组成。当该接口每分钟传送1800个字符时,试计算出传送波特率。
61. 串行口工作方式在方式1和方式3时,其波特率与fosc、定时器T1工作模式2的初值及SNOD位的关系如何?设fosc=6MHz,现利用定时器T1模式2产生的波特率为110bps。试计算定时器初值。
62. 串行口接收/发送数据缓冲器都用SBUF,如果同时接受/发送数据时,是否会发生冲突?为什么?
63. 8051单片机如何访问外部ROM及外部RAM?
64. 试用2764,6116为8031单片机设计一个存储器系统,它具有8K EPROM(地址由0000H~1FFFH)和16K的程序、数据兼用的RAM存储器(地址为2000H~5FFFH)。具体要求:画出该存储器系统的硬件连接图。
65.已知并行扩展2片4K×8存储器芯片,用线选法P2.6、P2.7分别对其片选,试画出连接电路。无关地址位取“1”时,指出2片存储器芯片的地址范围。
66.已知并行扩展2片2K×8存储器芯片及芯片地址范围(无关地址位取“1”),芯片I:B800H~BFFFH;芯片II:E800H~EEFFH;试画出其连接电路。
67.画出2764与80C51典型连接电路。
68.画出6264与80C51典型连接电路,P2.6片选,并指出6264片选地址和片内存储单元地址范围。
69.试以8031为主机,用2片2764 EPROM扩展16K ROM,画出硬件接线图。
70.设计扩展2KB RAM和4KB EPROM的电路图。
71.当单片机应用系统中数据存储器RAM地址和程序存储器EPROM地址重叠时,是否会发生数据冲突,为什么?
72.
用74LS138设计一个译码电路,利用8051单片机P0、P2口译出地址为2000H~3FFFH的片选信号CS。
73.用一片74LS138译出两片存储器的片选信号地址空间分别为1000H~1FFFH,3000H~3FFFH。试画出译码器的接线图。
74.8031单片机要扩展4K字节外部RAM,要求地址为1000H~1FFFH,请画出完整的电路图。
75. 试说明非编码键盘的工作原理。如何去键抖动?如何判断键是否释放?
76. 七段LED显示器有动态和静态两种显示方式,这两种显示方式要求MCS-51系列单片机如何安排接口电路?
77. 利用8031单片机的P1端口,设计一个可扫描16键的电路,并用中断法扫描键盘。
78. 利用8031和8279的接口电路,要求管理16个键及8个LED数码管,请用框图表示程序的安排方法。
79. 试设计一个用8155接6个LED数码管的电路,并使之显示“PLEASE”。
80. A/D转换器的分辨率如何表示?它与精度有何不同?
81. 判断A/D转换结束否一般可采用几种方式?每种方式有何特点?
82. D/A转换器的主要技术指标有哪些?分辨率是如何定义的?参考电压VR的作用如何?
83 D/A转换器由哪几部分组成?各部分的作用是什么?
84. 试述DAC0832芯片的输入寄存器和DAC寄存器二级缓冲的优点。
85. 说明图中AD0809 的IN0, IN1, IN2, IN3, IN4, IN5, IN6, IN7等8个通道的地址(C,B,A位为000时, IN0通道, 以此类推, 为111时, IN7通道)。
五、程序设计题
1、假设外部中断0和外部中断1均为下降沿触发,当外部中断0发生时,P0端口的电平反向,当外部中断1发生时,P1端口的电平反向。
答:#include <reg51.h>
sbit P00=P0^0;
sbit P10=P1^0;
void main()
{
IT0=1; IT1=1;
EA=1; EX0=1;
EX1=1;
while(1);
}
void ex0() interrupt 0
{
P00=~P00;
}
void ex1() interrupt 2
{
P10=~P10;
}
2、首先通过P1.7口点亮发光二极管D1,然后外部输入一脉冲串,则发光二极管D1亮、暗交替。
答:#include <reg51.h>
sbit P17=P1^7;
void main()
{
IT1=1;
EA=1;
EX1=1;
while(1);
}
void ex1() interrupt 2
{P17=~P17;}
3、如图4-18所示,8只LED阴极接至单片机P0口,两开关S0、S1分别接至单片机引脚P3.2()和P3.3()。编写程序控制LED状态。按下S0后,点亮8只LED;按下S1后,变为闪烁状态。
答:#include <reg51.h>
sbit P17=P1^7;
void delay()
{
unsigned int a;
for(a=0;a<25500;a++);
}
void main()
{
IT1=0;
IT0=0;
EA=1;
EX1=1;
EX0=1;
while(1);
}
void ex0() interrupt 0
{
P0=0x00;
}
void ex1() interrupt 2
{
P0=~P0;
delay();
}
4、设单片机的fosc=12MHz,要求在P1.0上产生周期为2ms的方波。
#include <reg51.h>
sbit P10=P1^0;
void delay()
{
unsigned int a;
for(a=0;a<25500;a++);
}
void main()
{
TMOD=0x01;
TH0=0xfc;
TL0=0x18;
EA=1;
ET0=1;
TR0=1;
while(1);
}
void ex0() interrupt 1
{
TH0=0xfc;
TL0=0x18;
P10=~P10;
}
5、设系统时钟频率为12MHz,编程实现从P1.1输出周期为1s的方波。
#include <reg51.h>
sbit P11=P1^1;
unsigned char a;
void delay()
{
unsigned int a;
for(a=0;a<25500;a++);
}
void main()
{
TMOD=0x01;
TH0=0x3c;
TL0=0xb0;
EA=1;
ET0=1;
TR0=1;
while(1);
}
void ex0() interrupt 1
{
TH0=0x3c;
TL0=0xb0;
a=a+1;
if(a==10)
{
P11=~P11;
a=0;
}
}
6、设系统时钟频率为12MHz,编程实现:P1.1引脚上输出周期为1s,占空比为20%的脉冲信号
51单片机双机通信
一、规定通信协议如下:
1、主机发送数据,从机接收数据,双方发送和接收数据采用查询方式;
2、双机开始通信,主机发送握手信号,等待从机应答;
3、从机接收到握手信号后,应答OK或BUSY;
4、当从机应答OK后,主机开始向从机发送缓冲区里的数据;
5、从机接收完数据后,返回接收成功或失败,若失败,主机将重新发送,从机将重新接收
二、主机发送的数据格式:
字节数n,数据1,数据2......数据n,字节校验;其中字节校验是将字节数和所有数据进行相异或
的结果。
三、双机通信的硬件电路
需要注意的是,两单片机要保证正确通信,主机的RXD连接从机的TXD,从机的RXD连接主机的TXD。
四、C语言程序
(1)主机程序
#include<reg51.h>
#include<string.h>
#define _READY_ 0x06//主机握手信号
#define _BUSY_ 0x15//从机忙应答
#define_OK_ 0x00//从机准备好
#define _SUCC_ 0x0f//数据传送成功
#define _ERR_ 0xf0//数据传送失败
unsigned charTable[9]={0x31,0x32,0x33,0x34,0x35,0x36,0x37,0x38,0x39};
unsigned char Buff[20]; //数据缓冲区
unsigned char temp=_BUSY_;
sbit KEY=P1^6;
//延时1ms函数
void delay_1ms(unsigned int t)
{
unsigned int x,y;
for(x=t;x>0;x--)
for(y=110;y>0;y--);
}
//缓冲区初始化
void Buff_init()
{
unsigned chari; //将Table里的数据放到缓冲区里
for(i=0;i<9;i++)
{
Buff[i]= Table[i];
delay_1ms(100);
}
}
//串口初始化函数
void serial_init()
{
TMOD=0x20; //定时器1工作于方式2
TH1=0xfd;
TL1=0xfd; //波特率为9600
PCON=0;
SCON=0x50; //串口工作于方式1
TR1=1; //开启定时器
TI=0;
RI=0;
}
//发送数据函数
void SEND_data(unsigned char *Buff)
{
unsigned char i;
unsigned char lenth;
unsigned char check;
lenth=strlen(Buff); //计算数据长度
check=lenth;
TI=0; //发送数据长度
SBUF=lenth;
while(!TI);
TI=0;
for(i=0;i<lenth;i++) //发送数据
{
check=check^Buff[i];
SBUF=Buff[i];
while(!TI);
TI=0;
}
SBUF=check; //发送校验字节
while(!TI);
TI=0;
}
void main()
{
Buff_init();
serial_init();
while(1)
{
if(KEY==0)
{
delay_1ms(5);
if(KEY==0)
{
while(!KEY);
TI=0; //主机发送握手信号
SBUF=_READY_;
while(!TI);
TI=0;
while(temp!=_OK_) //主机等待从机应答信号
{
RI=0;
while(!RI);
temp=SBUF;
RI=0;
}
temp=_ERR_; //主机等待从机数据接收成功信号
while(temp!=_SUCC_)
{
SEND_data(Buff);
RI=0;
while(!RI);
temp=SBUF;
RI=0;
}
}
}
}
}
(2)从机程序
#include<reg51.h>
#include<string.h>
#define _READY_ 0x06//主机握手信号
#define _BUSY_ 0x15//从机忙应答
#define_OK_ 0x00//从机准备好
#define _SUCC_ 0x0f//数据传送成功
#define _ERR_ 0xf0//数据传送失败
unsigned char aa=_BUSY_;//主机与从机之间通信标志
unsigned char Buff[20];//数据缓冲区
//串口初始化函数
void serial_init()
{
TMOD=0x20; //定时器1工作于方式2
TH1=0xfd;
TL1=0xfd; //波特率为9600
PCON=0;
SCON=0x50; //串口工作于方式1
TR1=1; //开启定时器
TI=0;
RI=0;
}
//接收数据函数
unsigned char RECE_data(unsigned char *Buff)
{
unsigned char i,temp;
unsigned char lenth;
unsigned char check;
RI=0; //接收数据长度
while(!RI);
lenth=SBUF;
RI=0;
check=lenth;
for(i=0;i<lenth;i++) //接收数据
{
while(!RI);
Buff[i]=SBUF;
check=check^(Buff[i]);
RI=0;
}
while(!RI); //接收校验字节
temp=SBUF;
RI=0;
check=temp^check; //将从主机接收到的校验码与自己计算的校验码比对
if(check!=0) //校验码不一致,表明数据接收错误,向主机发送错误信号,函数返回0xff
{
TI=0;
SBUF=_ERR_;
while(!TI);
TI=0;
return 0xff;
}
TI=0; //校验码一致,表明数据接收正确,向主机发送成功信号,函数返回0x00
SBUF=_SUCC_;
while(!TI);
TI=0;
return 0;
}
void main()
{
serial_init();
while(1)
{
while(aa!=_READY_) //从机等待主机发送的握手信号
{
RI=0;
while(!RI);
aa=SBUF;
RI=0;
}
TI=0; //一旦接收到握手信号,从机返回OK,等待接收数据
SBUF=_OK_;
while(!TI);
TI=0;
aa=0xff; //从机接收数据,并将数据保存到数据缓冲区
while(aa==0xff)
{
aa=RECE_data(Buff);
}
P1=Buff[0]; //查看接收到的数据
}
}
相关问答
从机 是什么意思啊?答案:在电脑中放在机箱中的部件以及机箱一起称为主机。你说的如果是单片机的话,在单片机中起主要作用、发布主要命令的称为主机,接受命令的称为从机。答案:...
单片机 与多个 从机 通信,轮询方式?RS485、I2C和SPI不一样。RS485、I2C通讯协议中包含从机的地址,从机都不主动发送数据,主机发送数据,数据包中包含有从机地址,主机发送的数据,所有从机都接收...
labview的程序怎样刷入 单片机 ?方法一找个仪器(示波器,daq)读电平时序自己解析,方法二找个i2c的转换芯片转串口或usb或者芯片提供dll,方法三搞个单片机自己写下位机解析时序再用串口传到电...
STC 单片机 下载程序后(下载失败)电脑就死机了,为什么啊?-ZOL问答你肯定是在保持单片机供电情况下点下载,如果你点击下载之前先把单片机电源断了,顺序为:断单片机电,点击下载,给单片机供电,这样就绝对不会出现蓝屏。你的顺序肯...
单片机 会被淘汰吗?单片机不会被淘汰。就像当年更高性能的单片机出来后,一直都有人说51单片机会被淘汰,可是我们看到,51单片机不但没有被淘汰,反而活的有滋有味。就像提问里说...
电控系统中,上位机啥意思?电控系统中要通讯的,中央控制室的主机一般叫上位机.下位机可是分控制室的计算机,也可是DSP,单片机等.电控系统中要通讯的,中央控制室的主机一般叫上位机.下位...
谈谈你对 单片机 的认识?从大一的时候在大学图书馆看到关于AVR单片机的书籍,到参加竞赛、工作,我和单片机已经打了六七年的交道了吧。其间我都是在做产品的软件开发,与硬件工程师合作...
从超级终端和串口调试助手发送相同的信息到 单片机 ,但超级终端和串口调试助手返回的信息却不一样?1、自己启动信息、过程信息主动发运行有超级终端主机;2、接收字符返回主机同时发送需要显示字符(命令响应等)主机串口调试助手原理1、自己启动信息、过程信...
vk2828u7g5lf怎么和 单片机 进行通信?单片机与单片机通讯,直接串口对接就可以(TXD1-RXD2,RXD1-TXD2)。多机通讯设置一主机,(TXD1-RXD2-RXD3---RXDn,...
树莓派和 单片机 有什么区别?树莓派和单片机的区别如下:单片机可以有十几路PWM,但是树莓派只有一个PWM。也有单片机不能做,但是树莓派能做的,比如拍500W像素的照片,运行minecraft等。...