和记娱乐


网站导航

联系我们

和记娱乐

联系人: 

电 话:021-64057486

公司网址:http://www.happy123456789.com

   址:成都市松江区漕河泾松江新兴产业园区研展路丰产支路55号B座803室

邮编:201165


通信知识

您的当前位置: 和记娱乐主页 > 通信知识 >

单片机的一些面试题整理

发布日期:2019-12-07 07:39 来源:和记h88 发布人:和记娱乐 点击:

  1.MCS51的中断系统有几个中断源?几个中断优先级?中断优先级是如何控制的?在出现同级中断申请时,CPU按什么顺序响应(按由高级到低级的顺序写出各个中断源)?各个中断源的入口地址是多少?

  答:MCS51单片机有5个中断源,2个中断优先级,中断优先级由特殊功能寄存器IP控制,在出现同级中断申请时,CPU按如下顺序响应各个中断源的请求:INT0、T0、INT1、T1、串口,各个中断源的入口地址分别是0003H、000BH、0013H、001BH、0023H。

  单片机是将微处理器、一定容量的 RAM 和ROM以及 I/O 口、定时器等电集成在一块芯片上而构成的微型计算机。当CPU访问片外的存储器时,其低八位地址由 P0口提供,高八位地址由 P2口提供,8位数据由 P0口提供。在I/O口中,P0口在接LED时,必须提供上拉电阻,P3口具有第二功能。

  23、题:堆栈指针SP的内容可指向片内00H~7FH的任何RAM单元,系统复位后,SP初始化为00H。F

  28、当系统处于正常工作状态且振荡稳定后,在RST引脚上加一个 高 电平并维持 2 个机器周期,可将系统复位。

  29、题:单片机89C51复位后,其PC指针初始化为0000H,使单片机从该地址单元开始执行程序。T

  39、题:在51系列单片机的指令系统中,其加法、减法、乘法和除法必须有累加器A的参与才能完成。T

  47、单片机89C51的中断要用到4个特殊功能寄存器,它们是TCON、SCON、 IE 以及IP。

  48、在89C51中,外部中断由IT0(1)位来控制其两种触发方式,分别是 电平 触发方式和 边沿 触发方式。

  53、题:在51系列单片机中,中断服务程序从矢量地址开始执行,一直到返回指令RETI为止。T

  79、单片机89C51中的串行通信共有4种方式,其中方式 0 是用作同步移位寄存器来扩展I/O口的。

  A、8 位计数器结构 B、16 位计数器结构 C、13 位计数器结构 D、2 个8 位计数器结构

  答:MCS-51单片机在一块芯片中集成了CPU、RAM、ROM、定时/计数器、多功能I/O口

  答:片内数据存储器分为工作寄存器区、位寻址区和数据缓冲器区等3个区域。 工作寄存器使用内部RAM中地址为00H~1FH的32个单元, 并分成4个工作寄存器组,每个组有8个工作寄存器,名称为R0~R7。 对于内部RAM 中地址为 20H~2FH 的 16 个单元,CPU 不仅具有字节寻址功能,而且还具有位寻址功能。这 16 个单元共 128 位,每一位都赋予 1 个位地址,位地址范围是00H~7FH。 30H~7FH是数据缓冲区,即用户RAM区,共80个单元。

  答:MCS-51 单片机中的程序状态字寄存器(PSW),B 寄存器,累加器(ACC) ,端口 P0

  接寻址方式,不能采用寄存器间接寻址,对 8032/8052 等单片机内部 RAM 的高 128 个

  答:对特殊功能寄存器只能采用直接寻址方式,单片机内部RAM的高128个字节 (80H~FFH

  而位 7 没有借位,或位 7 有借位而位 6 没有借位,则溢出标志 OV 置“1”,否则清“0”。

  3-8 试编写一段程序,将内部数据存储器30H、 3lH单元内容传送到外部数据存储器1000H、1001H单元中。

  7-2 如果采用晶振的频率为 3MHz,定时/计数器工作方式 0、1、2 下,其最大的定时时间为多少?

  答:采用定时器工作方式1可得到最大量程,最大脉冲宽度:65536*12/6M=131.072ms

  【答】堆栈是在片内数据RAM区中,数据按照“先进后出”或“后进先出”原则进行管理的区域。堆栈功能有两个:断点和数据。在子程序调用和中断操作时这两个功能特别有用。在80C51单片机中,堆栈在子程序调用和中断时会把断点地址自动进栈和出栈。进栈和出栈的指令(PUSH、POP)操作可用于现场和恢复现场。由于子程序调用和中断都允许嵌套,并可以多级嵌套,而现场的也往往使用堆栈,所以一定要注意给堆栈以一定的深度,以免造成堆栈内容的而引起程序执行的“跑飞”。

  堆栈指针SP在80C51中存放当前的堆栈栈顶所指存储单元地址的一个8位寄存器。80C51单片机的堆栈是向上生成的,即进栈时SP的内容是增加的;出栈时SP的内容是减少的。

  系统复位后。80C51的SP内容为07H。若不重新定义,则以07H为栈底,压栈的内容从08H单元开始存放。但工作寄存器R0~R7有4组,占有内部RAM地址为00H~1FH,位寻址区占有内部RAM地址为20H~2FH。若程序中使用了工作寄存器1~3组或位寻址区,则必须通过软件对SP的内容重新定义,使堆栈区设定在片内数据RAM区中的某一区域内(如30H),堆栈深度不能超过片内RAM空间。

  【答】程序存储器指令地址使用程序计数器PC指针,PC中存放的是下一条将要从程序存储器中取出的指令的地址。程序计数器PC变化的轨迹决定程序的流程。PC最基本的工作方式是自动加1。在执行条件转移或无条件转移指令时,将转移的目的地址送入程序计数器,程序流向发生变化。在执行调用指令或响应中断时,将子程序的入口地址或者中断矢量地址送人PC,程序流向发生变化。 堆栈地址使用堆栈指针.SP。SP在80C51中存放当前的堆栈栈顶所指存储单元地址,是一个8位寄存器,对数据按照“先进后出”原则进行管理。外接数据存储器地址使用数据指针DPTR。DPTR是一个16位特殊功能寄存器,主要功能是作为片外数据存储器或I/0寻址用的地址寄存器,这时会产生RD或wR控制信号,用于单片机对外扩的数据存储器或I/0的控制。数据指针DPTR也可以作为访问程序存储器时的基址寄存器,此时是寻址程序存储器中的表格、等单元,而不是寻址指令。

  l 用作I/0口。相当于一个真正的双向口:输出锁存,输入缓冲,但输入时须先将口置l;每根口线可以定义为输入或输出。

  l 用作地址/数据复用总线。作数据总线使用时,输入/输出8位数据D0~D7;作地址总 线用时,输出低8位地址AO~A7。

  ② P1口是一个8位口,可按字节访问也可按位访问,因此,P1口不仅可以8位一组进行 输入、输出操作,还可以逐位分别定义各口线为输入线或输出线。输入时有条件,即需要先输出1,将该口设为输入状态。一般作I/o口用。

  ③ P2口是一个多功能的8位口,可按字节访问也可按位访问。在单片机采用并行扩展方式时,P2口作为地址总线的高8位D8~D15。

  ④ P3口是一个多功能的8位口,可按字节访问,也按可位访问。可作为I/0口使用,为准双向口。既可以字节操作,也可以位操作;既可以8位口操作,也可以逐位定义口线为输入线或输出线。

  【答】执行任何一条指令都需要使用操作数,寻址方式就是在指令中给出的寻找操作数或操作数所在地址的方法。

  ①立即寻址。在指令中直接给出操作数。出现在指令中的操作数称为“立即数”,为了与直接寻址指令中的直接地址相区别,在立即数前面必须加上前缀“#”。

  例如: MOV A,55H ;55H是操作数单元的地址,55H单元内的数据才是操作数,取出后送累加器A

  例如: ORL A.@Ro; 当R0寄存器的内容是60H时,该指令功能是以RO寄存器的内容60H为地址,将60H地址单元的内容与累加器A中的数相“或”,其结果仍存放在A中。

  ⑤相对寻址。在指令中给出的操作数为程序转移的偏移量。相对寻址方式是为实现程序的相对转移而设立的,为相对转移指令所采用。

  在相对转移指令中,给出地址偏移量(在80C51系列单片机的指令系统中,以“rel”表示,为8位带符号数),把PC的当前值加上偏移量就构成了程序转移的目的地址。而PC的当前值是指执行完转移指令后的PC值,即转移指令的PC值加上转移指令的字节数。转移的目的地址可用如下公式表示:

  例如:SJMP 80H ;80H为程序转移的偏移量,即一128。当前PC值减去128后即为转移地址

  ⑥变址寻址。以DPTR或PC作基址寄存器,累加器A作变址寄存器,以两者内容相加形成的16位程序存储器地址作为操作数地址。又称“基址寄存器+变址寄存器间接寻址”。变址寻址方式只能对程序存储器进行寻址。

  例如: MOVC A,@A+DPTR ;功能是把DPTR和A的内容相加,所得到的程序存储器地址单元的内容送A

  ⑦位寻址。80C51系列单片机有位处理功能,可以对数据位进行操作,因此,就有相应的位寻址方式。位寻址的寻址范围:

  【3—17】已知两个十进制数分别在内部RAM中的40 H单元和50H单元开始存放(低位在前),其字节长度存放在内部RAM的30 H单元中。编程实现两个十进制数求和,求和结果存放在40 H开始的单元中。

  【答】在一个单片机系统中往往允许有多个中断源,通常给每个中断源了优先级别,称为“优先权"或“中断优先级’’。

  当单片机同时接收到两个或多个不同优先级的中断请求时,先响应高优先级的中断。如果同时接收到的是几个同一优先级的中断请求,则由内部的硬件查询序列确定它们的优先服务次序,当服务结束后,再响应级别较低的中断源。

  ①CPU正在执行同级或高一级的中断服务程序。因为当一个中断被响应时,其对应的中断优先级触发器被置1,了同级和低级中断。

  ②查询中断请求的机器周期不是执行当前指令的最后一个周期。目的在于使当前指令执行完毕后,才能进行中断响应,以确保当前指令的完整执行。

  ③当前正在执行RETI指令或执行对IE、IP的读/写操作指令。80C51.中断系统的特性,在执行完这些指令之后,必须再继续执行一条指令,然后才能响应中断。

  【答】80C51单片机内部设有2个16位定时器/计数器TO和T1。定时器/计数器有4种工作方式,其特点如下: .

  ①方式O是13位定时器/计数器。由THx高8位(作计数器)和TLx的低5位(32分频的定标器)构成,TLx的低5位溢出时,向THx进位;THx溢出时,硬件置位TFx(可用于软件查询),并可以申请定时器中断。

  THx作为8位计数寄存器。当TLx计数溢出时,一方面将TFx置位,并申请中断;另一方面将THx的内容自动重新装入TLx中,继续计数。由于重新装入不影响THx的内容,所以可以多次连续再装入。方式2对定时控制特别有用。 .

  数器,它占用了T0的GATE、INTO、启动/停止控制位TRO、TO引脚(P3.4)以及计数溢出标志位TF0和TO的中断矢量(地址为000BH)等TH0只能做8位定时器用,因为此时的外部引脚T0已为定时器/计数器TLO所占用。这时它占用了定时器/计数器T1的启动/停止控制位TRl、计数溢出标志位TFl.及T1中断矢量(地址为001BH)。

  T0设为方式3后,定时器/计数器T1只可选方式O、1或2。由于此时计数溢出标志位TFI.及T1中断矢量(地址为001BH)已被TH0所占用,所以T1仅能作为波特率发生器或其他不用中断的地方。

  3.访问片内RAM低128字节使用哪些寻址方式?访问片内RAM高128字节使用什么寻址方式?访问SFR使用什么寻址方式?

  答: 访问片内RAM低128字节使用直接寻址,寄存器间接寻址,位寻址;访问片内RAM高128字节使用寄存器间接寻址;访问SFR使用直接寻址,位寻址。

  答: 访问程序存储器使用指令绝对寻址,指令相对寻址。指令跳转使用指令绝对寻址,指令相对寻址。

  8.在MCS-51单片机的片内RAM中,已知(30H)=38H,(38H)=40H,(40H)=48H,(48H)=90H。请说明下面各是什么指令和寻址方式,以及每条指令执行后目的操作数的结果。

  22.编写程序,把片外RAM从2000H开始存放的16字节数据,传送到片内从30H开始的单元中。

      和记娱乐,和记h88,h88平台官网