这里有一份试卷及答案。现在无法上传文件了。
1.除了单片机这一名称之外,单片机还可称为微控制器和 嵌入式控制器。
2.单片机与普通微型计算机的不同之处在于其将CPU、存储器、I/O口三部分集成于一块芯片上。
3.在AT89C51单片机中,如果采用6MHz晶振,一个机器周期为2µs。
4.AT89C51单片机的机器周期等于12个时钟振荡周期。
5.内部RAM中,位地址为40H、88H的位,该位所在字节的字节地址分别为28H和88H。
6.片内字节地址为2AH单元的最低位的位地址是50H;片内字节地址为88H单元的最低位的位地址是88H。
7.若A中的内容为63H,那么,P标志位的值为0。
8.AT89C51单片机复位后,R4所对应的存储单元的地址为04H,因上电时PSW = 00H。这时当前的工作寄存器区是0组工作寄存器区。
9.内部RAM中,可作为工作寄存器区的单元地址为00 H~1F H。
10.通过堆栈操作实现子程序调用,首先要把PC的内容入栈,以进行断点保护。调用返回时,再进行出栈保护,把保护的断点送回到PC。
11.AT89C51单片机程序存储器的寻址范围是由程序计数器PC的位数所决定的,因为AT89C51单片机的PC是16位的,因此其寻址的范围为64 KB。
12.在基址加变址寻址方式中,以A作为变址寄存器,以PC或DPTR作为基址寄存器。
13.指令格式是由操作码和操作数组成,也可仅由操作码组成。
14.假定累加器A中的内容为30H,执行指令1000H:MOVC A,@A+PC
后,把程序存储器1031H单元的内容送入累加器A中。
15.在AT89C51单片机中,PC和DPTR都用于提供地址,但PC是为访问
程序存储器提供地址,而DPTR是为访问数据存储器提供地址。
16.在寄存器间接寻址方式中,其“间接”体现在指令中寄存器的内容不是操作数,而是操作数的地址。
17.外部中断1的中断入口地址为0013H。定时器1的中断入口地址为001BH。
18.若(IP) = 00010100B,则优先级最高者为外部中断1,最低者为定时器T1。
19.AT89C51单片机响应中断后,产生长调用指令LCALL,执行该指令的过程包括:首先把 PC 的内容压入堆栈,以进行断点保护,然后把长调用指令的16位地址送 PC ,使程序执行转向程序存储器中的中断地址区。
20.判断AT89C51单片机对外中断请求源响应的最快响应时间为3个机器周期对
21.帧格式为1个起始位,8个数据位和1个停止位的异步串行通信方式是方式1。
22.在串行通信中,收发双方对波特率的设定应该是相等的。
23.单片机存储器的主要功能是存储程序,数据
24.在存储器扩展中,无论是线选法还是译码法最终都是为扩展芯片的片选端提供片选控制信号。
25.起止范围为0000H~3FFFH的存储器的容量是16 KB。
26.在AT89C51单片机中,PC和DPTR都用于提供地址,但PC是为访问
程序存储器提供地址,而DPTR是为访问数据存储器提供地址。
27.11条地址线可选2KB个存储单元,16KB存储单元需要14条地址线。
28.4KB RAM存储器的首地址若为0000H,则末地址为0FFF H。
1.微处理器、微计算机、微处理机、CPU、单片机它们之间有何区别?
微处理器、微处理机和CPU都是中央处理器的不同称谓;而微计算机、单片机都是一个完整的计算机系统,单片机特指集成在一个芯片上的用于测控目的的单片微计算机。
2.MCS-51系列单片机的基本型芯片分别为哪几种?它们的差别是什么?
答:MCS-51系列单片机的基本型芯片分别是8031、8051和8751。它们的差别是在片内程序存储器上。8031无片内程序存储器,8051片内有4KB的程序存储器ROM,而8751片内集成有4KB的程序存储器EPROM。
3.为什么不应当把51系列单片机称为MCS-51系列单片机?
答:因为MCS-51系列单片机中的“MCS”是Intel公司生产的单片机的系列符号,而51系列单片机是指世界各个厂家生产的所有与8051的内核结构、指令系统兼容的单片机。
4.AT89C51单片机相当于MCS-51系列单片机中的哪一种型号的产品?
答:相当于MCS-51系列中的87C51,只不过是AT89C51芯片内的4KB Flash存储器取代了87C51片内的4KB的EPROM。
5.AT89C51单片机的片内都集成了哪些功能部件?各个功能部件的最主要的功能是什么?
(1)1个微处理器(CPU);(2)128个数据存储器(RAM)单元;(3)4KB Flash程序存储器;(4)4个8位可编程并行I/O口(P0口、P1口、P2口、P3口);(5)1个全双工串行口;(6)2个16位定时器/计数器;(7)一个中断系统,5个中断源,2个优先级;(8)21个特殊功能寄存器(SFR)。
6.说明AT89C51单片机的引脚的作用,该引脚接高电平和低电平时各有何种功能?
答:当脚为高电平时,单片机读片内程序存储器(4KB Flash),但在PC值超过0FFFH(即超出4KB地址范围)时,将自动转向读外部程序存储器内的程序。当脚为低电平时,对程序存储器的读操作只限定在外部程序存储器,地址为0000H~FFFFH,片内的4KB Flash程序存储器不起作用。
7.64KB程序存储器空间有5个单元地址对应AT89C51单片机5个中断源的中断入口地址,请写出这些单元的入口地址及对应的中断源。
答:64KB程序存储器空间中有5个特殊单元分别对应于5个中断源的中断服务程序的入口地址,见下表。
表 5个中断源的中断入口地址
入口地址
中断源
0003H
外部中断0 ()
000BH
定时器0 (T0)
0013H
外部中断1 ()
001BH
定时器1 (T1)
0023H
串行口
8.说明伪指令的作用。“伪”的含义是什么?常用伪指令的功能如何?
答:伪指令不属于指令系统中的汇编语言指令,它是程序员发给汇编程序的控制命令。只有在汇编前的源程序中才有伪指令。所以“伪”体现在汇编后,伪指令没有相应的机器代码产生。
9.解释手工汇编、机器汇编、交叉汇编、反汇编术语概念。
答:(1)手工汇编:手工编程,首先把程序用助记符指令写出,然后通过查指令的机器代码表,逐个把助记符指令“翻译”成机器代码,这种人工查表“翻译”指令的方法称为手工汇编。
(2)机器汇编:是借助于微型计算机上的软件(汇编程序)来代替手工汇编,完成把助记符指令“翻译”成机器代码的工作。
(3)交叉汇编:使用微型计算机来完成汇编,而汇编后得到的机器代码却是在另一台计算机(这里是单片机)上运行,称这种机器汇编为交叉汇编。
(4)反汇编:将二进制的机器代码语言程序翻译成汇编语言源程序的过程。
10.设计子程序时应注意哪些问题?
答:(1)子程序的第一条指令前必须有标号。(2)使用子程序调用指令时,有两条调用指令可供使用。
①使用绝对调用指令(ACALL addr11)要注意,被调用的子程序的首地址与本绝对调用指令的下一条指令的高5位地址相同,即只能在同一2KB程序存储区内。②使用长调用指令(LCALL addr16)时,addr16为直接调用的子程序的目标地址,也就是说,被调用的子程序可放置在64KB程序存储器区的任意位置。(3)子程序结构中必须用到堆栈,堆栈通常用来保护断点和现场保护。4)子程序返回主程序时,最后一条指令必须是RET指令。(5)子程序可以嵌套,即主程序可以调用子程序,子程序又可以调用另外的子程序。
11.中断服务子程序与普通子程序有哪些相同和不同之处?
答:RETI指令在返回时,同时清除中断系统中相应的优先级触发器,以允许下次中断,而RET指令则没有这个操作。除了这一点两条指令不同外,其他操作都相同。
12.中断响应的条件是什么?
答:总中断允许开关接通EA=1;该中断源发出中断请求;该中断源的中断允许位=1;五统计或更高级中断正在被服务。
13.AT89C51单片机响应外部中断的典型时间是多少?在哪些情况下,CPU将推迟对外部中断请求的响应?
答;最短为是三的个周期,最长为8个周期,当遇到才开始执行RETI或访问IE或IP的指令则需把当前指令执行完再继续执行一条指令后才能响应中断。
14.定时器/计数器用作定时器模式时,其计数脉冲由谁提供?定时时间与哪些因素有关?
答:定时器/计数器用作定时器时,其计数脉冲由系统振荡器产生的内部时钟信号12分频后提供。定时时间与时钟频率和定时初值有关。
15.定时器/计数器用作计数器模式时,对外界计数频率有何限制?
答:由于确认1次负跳变要花2个机器周期,即24个振荡周期,因此外部输入的计数脉冲的最高频率为系统振荡器频率的1/24。
16.定时器/计数器的工作方式2有什么特点?适用于哪些应用场合?
答:定时器/计数器的工作方式2具有自动恢复初值的特点,适用于精确定时,如波特率的产生。
17.一个定时器的定时时间有限,如何用两个定时器的串行定时来实现较长时间的定时?
答:方法1,在第一个定时器的中断程序里关闭本定时器的中断程序,设置和打开另一个定时器;在另一个定时器的中断程序中关闭本定时中断,设置和打开另一个定时器。这种方式的定时时间为两个定时器定时时间的和。
18.THx与TLx(x = 0,1)是普通寄存器还是计数器?其内容可以随时用指令更改吗?更改后的新值是立即刷新还是等当前计数器计满后才能刷新?
答:THx与TLx(x=0,1)是由特殊功能寄存器构成的计数器,其内容可以随时用指令更改,更改后的新值立即刷新。但在读THx、TLx值时,应该先读THx值,后读TLx,再读THx值。若两次读得THx值相同,则可确定读得的内容正确。若前后两次读得的THx值有变化,再重复上述过程。
19.在异步串行通信中,接收方是如何知道发送方开始发送数据的?
当接收方检测到RXD引脚上的有效的负跳变时,即可知道发送方开始发送数据。
20.串行口有几种工作方式?有几种帧格式?各种工作方式的波特率如何确定?
串行口有4种工作方式:方式0、方式1
方式2、方式3。有3种帧格式,方式2和3
具有相同的帧格式。
方式0的发送和接收都以fosc/12为固定波特率。
方式1的波特率=2SMOD/32×定时器T1的溢出率。
方式2的波特率=2SMOD/64×fosc。
方式3的波特率=2SMOD/32×定时器T1的溢出率。
21.为什么定时器/计数器T1用作串行口波特率发生器时,常采用方式2?若已知时钟频率、通信波特率,如何计算其初值?
答:(1)因为定时器/计数器在方式2下,初值可以自动重装,这样在进行串口波特率发生器设置时,就避免了重装参数的操作,且减少了重装参数的误差。
22.简述利用串行口进行多机通信的原理。
答:以方式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次相同的值,以确认是否是真正的起始位的开始,这样能较好地消除干扰引起的影响,以保证可靠无误地开始接收数据。
23.为什么AT89C51单片机串行口的方式0帧格式没有起始位(0)和停止位(1)?
答:串行口的方式0为同步移位寄存器输入/输出方式,常用于外接移位寄存器,以扩展并行I/O口,一般不用于两个89C51之间的串行通信。该方式以fosc/12的固定波特率从低位到高位发送或接收数据。
24.直接以TTL电平串行传输数据的方式有什么缺点?
答:优点是连线简单,缺点是抗干扰性能差,传输距离短。
25.在AT89C51单片机系统中,外接程序存储器和数据存储器共16位地址线和8位数据线,为何不会发生冲突?
答:因为控制信号线的不同。外扩的RAM芯片既能读出又能写入,所以通常都有读、写控制引脚,记为和,它们分别与89C51的和引脚相连。
外扩的EPROM在正常使用中只能读出,不能写入,故EPROM芯片没有写入控制引脚,只有读出引脚,记为,该引脚与89C51单片机的相连。
26.I/O接口和I/O端口有什么区别?I/O接口的功能是什么?
答: I/O端口简称I/O口,常指I/O接口电路中具有端口地址的寄存器或缓冲器。I/O接口是指单片机与外设间的I/O接口芯片。
I/O接口的功能:(1)实现和不同外设的速度匹配;(2)输出数据缓存;(3)输入数据三态缓冲。
27.I/O数据传送由哪几种传送方式?分别在哪些场合下使用?
答:(1)同步传送方式。同步传送又称无条件传送。当外设速度可与单片机速度相比拟时,常常采用这种方式。最典型的同步传送就是单片机和外部数据存储器之间的数据传送。(2)查询传送方式。查询传送又称有条件传送,也称异步传送。单片机通过查询得知外设准备好后,再进行数据传送。异步传送的优点是通用性好,硬件连线和查询程序十分简单,但是效率不高。为了提高单片机的工作效率,通常采用中断方式。(3)中断传送方式。中断传送方式是利用AT89C51本身的中断功能和I/O接口的中断功能来实现I/O数据的传送。单片机只有在外设准备好后,发出数据传送请求,才中断主程序,进入与外设进行数据传送的中断服务程序,进行数据的传送。中断服务完成后又返回主程序继续执行。因此,采用中断方式可以大大提高单片机的工作效率。
28.常用的I/O端口编址有哪两种方式?它们各有什么特点?AT89C51单片机的I/O端口编址采用的是哪种方式?
答:有两种。(1)独立编址方式。就是I/O地址空间和存储器地址空间分开编址。其优点是,I/O地址空间和存储器地址空间相互独立,界限分明。但是,却需要设置一套专门的读/写I/O的指令和控制信号。(2)统一编址方式。它是把I/O端口的寄存器与数据存储器单元同等对待,统一编址。统一编址的优点是不需要专门的I/O指令,直接使用访问数据存储器的指令进行I/O操作,简单、方便且功能强大。89C51单片机使用的是I/O和外部数据存储器RAM统一编址的方式。
29.82C55的“方式控制字”和“PC口按位置位/复位控制字”都可以写入82C55的同一控制寄存器,82C55是如何来区分这两个控制字的?
答:82C55通过写入控制字寄存器的控制字最高位来判断,最高位为1时,为方式控制字;最高位为0时,为PC口按位置位/复位控制字。
30.为什么要消除按键的机械抖动?软件消除按键机械抖动的原理是什么?
答:在按键的闭合和断开过程中,由于开关的机械特性,导致了按键抖动的产生。如果不消除按键的机械抖动,按键的状态读取将有可能出现错误。消除按键抖动一般是采用软件或硬件去抖。软件去抖的原理是,在第一次检测到有键按下时,该键所对应的行线为低电平,执行一端延时10ms的子程序后,确认该行线电平是否仍然为低电平,如果仍为低电平,则确认该行确实有键按下。
31.LED的静态显示方式与动态显示方式有何区别?各有什么优缺点?
答:静态显示时,数据是分开送到每一位LED上的。而动态显示时,则数据是同时送到每一个LED上,再根据位选线来确定是哪一位LED被显示。静态显示亮度很高,但口线占用较多。动态显示口线占用较少,适合用在显示位数较多的场合。
32.说明矩阵式键盘按键按下的识别原理。
答:按键设置在行、列线交点上,行、列线分别连接到按键开关的两端。行线通过上拉电阻接到+5V上,无按键按下时,行线处于高电平状态,而当有按键按下时,行线电平状态将由与此行线相连的列线的电平决定。列线的电平如果为低,则行线电平为低;列线的电平如果为高,则行线的电平亦为高。将行、列线信号配合起来并做适当的处理,才能确定闭合键的位置。
33.键盘有哪3种工作方式,它们各自的工作原理及特点是什么?
答:(1)编程扫描方式。当单片机空闲时,才调用键盘扫描子程序,反复扫描键盘,等待用户从键盘上输入命令或数据,响应键盘的输入请求。(2)定时扫描方式。单片机每隔一定的时间对键盘扫描一次。(3)中断扫描方式。只有在键盘有键按下时,才执行键盘扫描程序并执行该按键功能程序,如果无键按下,单片机将不理睬键盘。