职位题库

嵌入式软件工程师面试题库

面向嵌入式软件工程师相关面试,围绕C语言、I2C、RTOS、调试、通信协议等主题展开练习,结合题目考察点、回答思路、参考答案和常见误区,梳理知识要点并练习清晰表达。

388 道题目建议用时 1164 分钟专项面试练习

全部题目 388 道题

13

请描述I2C协议的开始条件、结束条件以及仲裁机制。

考察对I2C协议细节的掌握,包括信号定义和多主机仲裁。
14

SPI有几根线?请对比I2C和SPI的速率。

考察对SPI和I2C物理层和性能的基本了解。
15

请描述UART的数据格式,以及发送一个字节需要传输哪些内容?

考察对UART帧格式的理解。
16

const 和指针组合有几种写法?分别限制什么?函数参数中如何选择?

考察对 const 与指针结合时语义的理解,以及在实际函数接口设计中的运用能力。
17

static 修饰局部变量、文件级变量和函数时,分别改变什么?头文件中定义 static 变量有什么问题?

考察对 static 关键字在不同上下文中的作用理解,以及头文件中使用 static 的潜在问题。
18

中断中修改、主循环中等待的变量,为什么开启优化可能导致死循环?volatile 解决什么问题,不能保证什么?

考察对编译器优化、volatile 关键字以及中断与主循环共享变量问题的理解。
19

小 RAM、长时间运行的 MCU 项目,为什么避免频繁 malloc/free?不用堆时,变长数据可以怎么管理?

考察对嵌入式系统中动态内存分配风险的认识,以及替代方案的设计能力。
20

任务跑飞或进 HardFault 时,如何判断是否栈溢出?FreeRTOS 中可用哪些手段排查?

考察对 RTOS 中栈溢出检测和 HardFault 调试的实践能力。
21

请做一下自我介绍。

了解候选人的教育背景、技术栈、项目经历和求职动机,评估表达能力和与岗位的匹配度。
22

你提到了FreeRTOS任务设计,项目里包含哪些任务?任务是如何设计的(优先级、栈大小、划分依据)?

考察对RTOS任务划分、优先级分配、栈大小估算的实际经验与理解。
23

看门狗的原理是什么?

考察对看门狗定时器工作原理的理解,包括硬件看门狗和软件看门狗的区别。
24

讲讲CAN总线是怎么确保数据可靠性的?错误检测机制?

考察对CAN总线错误检测机制和可靠性保障的理解。
返回面试题库