嵌入式底层笔试面试题
1、以下关于Cotex-M控制器在中断中嵌套说法正确的是?
A:只有响应优先级不一样就有可能发生中断嵌套
B:只要抢占优先级不一样就有可能发生中断嵌套
C:只要抢占优先级和响应优先级不一样才有可能发生中断嵌套
D:只有在响应优先级一样抢占优先级不一样时,才有可能发生中断嵌套
正确答案:C .中断是按照优先级来处理的,如果一个中断正在执行,而此时另外一个中断的优先级更高,那么第二个中断会抢占第一个中断。中断嵌套的条件是两个中断的抢占优先级和子优先级有不一样。
2、以下哪种接口属于全双工工作模式?
A:I2C B:RS485 C:RS232 D:单总线
I2C:
工作模式:多主机、多从机
通信方式:半双工
连接:使用两根线,一跟时钟线(SCL),另一根数据线(SDA)
RS485:
工作模式:常用于多点,多主机系统
通信方式:全双工
连接:使用两根平衡的差分线
RS232:
工作模式:常用于点对点通信
通信方式:半双工或全双工,但是通常用于单向通信
连接:使用至少三根线,包括发送线(TX)、接受线(RX)和地线
单总线:
工作模式:单总线通信
通信方式:单工
连接:只有一跟线来通信
3、对于SPI通讯,以下说明错误的是?
A:在进行SPI通讯时,必须将CS先拉低
B:MISO为主设备的接收线
C:SPI总线需要接上拉电阻,以提供驱动能力
D:CLK的频率与SPI传输bit个数是1:1的关系
SPI是一种高速、全双工、同步的通信总线,串行外设接口,常用于微控制器与外部设备之间的通信。主要支持包括同步传输、支持多个从设备、具有主从设备之分
4、STM32 中断是怎么进入到中断服务程序的?
在STM32中,为了区分不同的中断,每个设备有自己的中断号。系统有
0-255
一个256
个中断号,系统有一张中断向量表,用于存放256个中断服务程序入口地址。每个中断入口地址对应一段代码,即中断服务程序。
5、下列不是常用的中断触发方式是?
A:上升沿触发 B:下降沿触发 C:软件触发 D:低电平触发
常用的中断触发方式有:
①外部中断(硬件中断): 外部设备发送一个信号给处理器,通知处理器发生了一个事件,需要处理器的响应。如:键盘输入、鼠标移动、定时器等。
②软中断: 由当前运行的程序或操作系统内核通过软件指令触发的中断。
③异常: 当出现运行过程中发生错误或者不正常的情况时,处理器会引发异常中断。
④系统调用: 用户程序通过软中断指令(例如:int 0x80
)请求操作系统提供服务,这也可以看作是一种软中断的形式。
⑤定时器中断: 通过设置定时器,处理器可以定期触发中断,用于执行一些定时任务或操作系统的调度。
上面的题目中
上升沿、下降沿触发都是属于外部中断,软件触发属于软中断
6、以下关于Cotex-M控制器中中断嵌套说法中正确的是?
A:只要响应优先级不一样就有可能发生中断嵌套
B:只要抢占优先级不一样就有可能发生中断嵌套
C:只要抢占优先级和响应优先级都不一样才有可能发生中断嵌套
D:只有在响应优先级一样抢占优先级不一样时,才有可能发生中断嵌套
答案:只有在响应优先级一样抢占优先级不一样时,才有可能发生中断嵌套
这是因为在Cortex-M中,如果一个中断正在被处理(即处于中断服务程序执行中),而此时发生了一个具有相同或更高响应优先级的中断请求,那么这个新的中断请求可以被立即响应,从而导致中断嵌套。而抢占优先级的不同并不会影响中断嵌套的条件。
7、以下哪种接口属于全双工工作模式?
A:I2C B:RS485 C:RS232 D:单总线
答案:B
常见的外设接口:
①UART:通用异步收发器
功能:提供串行通信、全双工、在设备之间传输异步数据
工作模式:异步通信、通过引脚传输数据,包括一个起始位、数据位、可选的奇偶校验位和停止位
②I2C:串行总线接口
功能:用于连接多个设备,半双工、设用与连接低速设备(传感器、存储器)
工作模式:使用双线制,包括数据线(SDA)和时钟线(SCL)、支持多主机和多从机
③PWM:脉冲宽度调制
功能:用于产生的可变脉冲宽度的信号,用于控制电机速度、LED亮度等
工作模式:在一个固定周期内,通过调整脉冲宽度的占比来控制输出
④SPI:串行外围接口
功能:用于设备之间的同步串行通行,全双工、适用于短距离高速通信
工作模式:使用主从结构,包括主设备和从设备、具有时钟、数据输入/输出和片选等信号
8、对于SPI通信中,以下说明中错误的是?
A:进行SPI通信时,必须将CS先拉低
B:MISO为主设备的连接线
C:SPI总线需要连接上拉电阻,以提供驱动能力
D:CLK的频率与SPI传输bit个数是1:1的关系
答案:D
①通信线:
SCLK: 时钟线,由主设备产生并控制,指定数据传输的时钟频率。
MOSI: 主设备输出,从设备输入的数据线。
MISO: 从设备输出,主设备输入的数据线。
SS/CS: 从设备选择线,用于选择与主设备通信的特定从设备。
②数据传输过程:
a:主设备选择一个或多个从设备,通过拉低SS/CS线。
b:主设备产生时钟信号(SCLK),在时钟的上升或下降沿将数据传输到MOSI线上。
c:从设备通过MISO线回传数据,数据在时钟的相应边沿被采样。
d:数据传输完成后,主设备通过释放SS/CS线取消对从设备的选择。
9、单片机的寻址方式有哪些?
①
立即寻址
:操作数直接嵌入在指令中,指令本身包含了要处理的数值
②寄存器寻址
:操作数在寄存器中,指令直接引用寄存器
③直接寻址
:操作数的地址直接包含存储器实际的操作数地址
④基址寻址
:通过数的基址寄存器存储一个地址,然后再加上一个偏移量来计算最终的地址
⑤相对寻址
:操作数的地址由指令中的相对值和程序计数器(PC)的当前值加上得到
⑥变址寻址
:指令包含一个寄存器索引,该索引与一个基址相加以得到最终的操作数地址
⑦堆栈寻址
:操作数位于堆栈中,堆栈指针(SP)用于指向栈中的当前元素
⑨相对基址寻址
:与基址寻址类似,但用于一个相对值和一个基址来计算当前的元素
10、复位启动
是指系统或芯片初始时通过复位引脚的拉低来进行的启动过程。复位启动的两种常见方式是:
①冷启动
:指系统在初始化启动时,其所有的组件都处于为初始化的状态
②热启动
:指系统在之前已经运行过一段时间后重新启动。
11、复位的两种启动方式
①
硬件复位
:通过硬件电路或外部信号引发。可以是用户按下系统的复位按钮、电源切换或者是其他硬件事件而触发
②软件复位
:通过执行特定的软件指令来触发。
12、单片机正常运行的三要素?
①
电源供应
:单片机需要稳定的电源供应以正常工作
②时钟信号
:需要时钟信号来同步其各个部件的操作。
③复位机制
:将单片机从初始化状态恢复到已知状态的重要过程。
13、什么是中断?中断的优缺点?
中断是计算机系统中的一种机制,用于处理与正常执行无关的事件或条件,当发生中断时,CPU会立即停止当前的程序,保存当前的状态,然后跳转到中断处理程序来处理中断事件。处理完中断后,CPU会返回到原来发生中断的地方,继续执行被中断的程序。
优点:
①实时响应:
②多任务处理:
③硬件通知:
缺点:
①复杂性
②竞争和优先级
③上下文切换开销大
④可靠性和安全性不高