单片机常见面试题(单片机面试常见问题)
下面是好好范文网小编收集整理的单片机常见面试题(单片机面试常见问题),仅供参考,欢迎大家阅读!
1、中断的概念?简述中断的过程
(1)中断:指CPU在正常执行程序的过程中,由于内部/外部事件的触发或由程序的预先安排,引起CPU暂时中断当前正在运行的程序,转而执行为内部/外部事件或程序预先安排的事件的服务子程序,待中断服务子程序执行完毕后,CPU再返回到被暂时中断的程序处(断点)继续执行原来的程序。
(2)中断向量:中断服务程序的入口地址
(3)中断向量表:把系统中所有的中断类型码及其对应的中断向量按一定的规律存放在一个区域内,该存储区就叫中断向量表
(4)中断处理过程:由中断请求、中断响应、中断处理三个阶段组成
中断请求:由中断源发出的并送给CPU的控制信号,由中断源设备将接口卡上的中断触发器置“1”完成。
(5)中断响应:当CPU接到中断请求,若满足下列条件,就会响应中断。1. 允许中断触发器为“1”状态;2.CPU结束了一条指令的执行过程3.新请求的中断优先级较高
中断处理步骤:
关中断->保存断点保护现场->判中断源转中断服务->开中断->执行中断服务程序->关中断->恢复现场恢复断点->开中断->返回断点
2、单片机中断几个/类型,编中断程序注意什么问题
51单片机中断及其中断优先级
中断源
默认中断级别
外部中断0
INT0
最高
interrupt0
定时器中断0
T0
1
interrupt1
外部中断1
INT1
2
interrupt2
定时器中断1
T1
3
interrupt3
串口中断
TX/RX
4
interrupt4
中断类型分为三类:
1)T0、T1是2个定时器/计数器中断,由片内定时器提供;
2)INT0、INT1是2个外部中断
3)RX、TX为串行口中断所用,由片内串口提供。
编写中断程序时要注意:处理好中断服务的入口地址和中断的优先级,还有中断的使能开关
3、串行通信中同步异步传输的差异
同步就是双方有一个共同的时钟,当发送时,接收方同时准备接收。
异步双方不需要共同的时钟,也就是接收方不知道发送方什么时候发送,所以在发送的信息中就要有提示接收方开始接收的信息,如开始位,结束时有停止位。
(1)异步通信方式的特点:
异步通信是按字符传输的。每传输一个字符就用起始位来进行收、发双方的同步。不会因收发双方的时钟频率的小的偏差导致错误。
这种传输方式利用每一帧的起、止信号来建立发送与接收之间的同步。特点是:每帧内部各位均采用固定的时间间隔,而帧与帧之间的间隔是随即的。接收机完全靠每一帧的起始位和停止位来识别字符时正在进行传输还是传输结束。
(使用串口USART中的串行异步通信是一个代表)
(2)同步通信方式的特点:
进行数据传输时,发送和接收双方要保持完全的同步,因此,要求接收和发送设备必须使用同一时钟。
优点是可以实现高速度、大容量的数据传送;缺点是要求发生时钟和接收时钟保持严格同步,同时硬件复杂。
4、串行通信与同步并行异同,特点,比较
串行:一位一位的传
并行:同时传输多条数据总线上的数据
5、普通IO口如何实现LED十六级亮度调节
设置PWM波不同的占空比
6、ROM和RAM的区别
存储器可分为随机存取存储器(RAM)和只读存储器(ROM)两大类。
ROM表示的是只读存储器,即:它只能读出信息,不能写入信息,计算机关闭电源后其内的信息仍旧保存,答一般用它存专储固定的系统软件和字库等。
RAM表示的是读写存储器,可其中的任一存储单元进行读或写操作,计算机关闭电源后其内的信息将不在保存,再次开机需要重新装入,通常用来存放操作系统,各种正在运行的软件、输入和输出数据、中间结果及与外存属交换信息等,我们常说的内存主要是指RAM。
7、简述MCS-51单片机片内RAM区地址空间的分配特点
在MCS-51单片机中的存储器共有片内RAM、片外RAM和ROM三种。
(1)片内RAM
片内RAM的寻址地址从00H到7FH共256个存储地址单元,使用汇编指令MOV对其进行访问读写。
00H~1FH:工作寄存器区,含有寄存器R0~R7。
20H~2FH:位寻址区,共有128个位,可对位进行访问
30H~7FH:字节寻址
80H~FFH:共有128个地址空间,并含有21个特殊寄存器。
(2)片外RAM
片外地址范围是0000H~FFFFH,容量为64KB,读写必须使用MOVX执行
且寻址要使用简介寻址方式,且必须用DPTR寄存器为间接寻址寄存器。
8、单片机上电后没有运转,首先要检查什么
(1)电源电压是否正常,查看单片机各引脚电压值是否正确
(2)查看晶振是否正常工作,可以用示波器查看
(3)查看最小系统有无接错,断路等毛病,用万用表
9、锁存器、触发器、寄存器三者的区别
(1)触发器:
触发器是边沿敏感的存储单元,数据存储的动作由某一信号的上升或者下降沿进行同步的。触发器是计算机记忆装置的基本单元,一个触发器能储存一位二进制代码。寄存器是由触发器组成的。一个触发器可以组成一个一位的寄存器,多个触发器可以组成一个多位的寄存器。存储器是由大量寄存器组成的,其中每一个寄存器就称为一个存储单元。它可以存放一个有独立意义的二进制代码。
(2)寄存器:
一般是边沿触发的触发器,在时序电路中寄存器的作用就是只在时钟的边沿有效传输data(满足建立时间和保持时间使得数据是稳定被采得)。在实际的数字系统中,通常把能够用来存储一组二进制代码的同步时序逻辑电路称为寄存器。由于触发器内有记忆功能,因此利用触发器可以方便地构成寄存器。由于一个触发器能够存储一位二进制码,所以把n个触发器的时钟端口连接起来就能够构成一个存储n位二进制码的寄存器。
(3)锁存器:由电平触发,比如JK和RS等。一般用在传输门和反向器。由若干钟控D触发器构成的一次能存储多位二进制代码的时序逻辑电路。数据有效比时钟信号有效晚(也就是先时钟信号有效,后数据有效)。这意味着时钟信号先到,数据信号后到。其优点是面积小,但是时序分析困难。
10、晶振的接法或分类
晶体振荡器,简称晶振,其作用在于产生原始的时钟频率,这个频率经过频率发生器的倍频或分频后就成了电脑中各种不同的总线频率。以声卡为例,要实现对模拟信号44.1kHz或48kHz的采样,频率发生器就必须提供一个44.1kHz或48kHz的时钟频率。
11、键盘与单片机连接时是如何工作的?
现有的主要分为独立键盘和矩阵键盘两种。
(1)独立键盘:每一个键位需要一个专门的I/O口进行控制,优点在于各个按键独立工作彼此之间互不影响。
(2)矩阵键盘:通常通过多乘多的网格式分布,每个I/O口控制一行或一列,例如当有4个I/O口控制行,4个I/O口控制列,则共可以控制16个按键(4+4个IO口即可控制4*4=16个IO口),通过识别行列I/O口的序号控制对应的按键。优点在于可节约单片机的I/O资源,但缺点则是当一个I/O口出现问题时会影响到好几个按键的使用。
工作方式的选择会对系统CPU的使用效率产生较大的影响,在选择时既要保证能够及时检测按键的按下,又要不过多占用CPU的资源。目前常见的有编程扫描方式、定时扫描方式、中断扫描方式。
(1)编程扫描方式
利用编写程序的方式完成键盘的扫描,当CPU执行键盘扫描程序时,将无法感应新的按键按下,CPU被占用。
(2)定时扫描方式
主要是利用了单片机中的定时中断,利用定时器设定一定的时间,当计数到一定的时间后溢出定时中断,CPU响应定时中断检测是否有按键按下。
(3)中断扫描方式
通过单片机已有的中断资源,将按键按下作为触发中断的方式,相较于前两种方式,可以更好的节约CPU资源,不需要CPU来回反复的扫描按键是否被按下,但因单片机的中断资源通常有限,这种方式通常只在IO口控制键盘数量少时方便调用,一般可以采用定时扫描的方式,每隔一段时间进行扫描。
12、单片机对系统的滤波
分硬件滤波和软件滤波
软件滤波算法:(1)限幅滤波算法(2)中值滤波算法(3)算术平均滤波算法(4)加权平均滤波算法(5)滑动滤波算法