职位题库

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

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

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

全部题目 388 道题

313

电驱项目中,电流环与速度环如何分层?各层周期如何确定,模块接口如何切分?

考察候选人对电机控制软件分层架构、实时周期设计和模块接口边界的理解,能否把控制理论与嵌入式实现结合。
314

FOC中为什么常把三相电流采样点放在PWM中点附近?采样时机偏移会带来什么现象?

考察候选人对电流采样时序、开关噪声和ADC触发机制的理解,以及工程调试手段。
315

永磁同步电机如何从编码器原始计数得到电角度?磁极对数起什么作用?

考察候选人对机械角到电角度换算、极对数作用、上电找零和异常处理的掌握。
316

SVPWM为什么要加死区?死区会带来哪些电流畸变,软件上如何补偿?

考察候选人对死区成因、畸变机理和补偿策略的工程理解,以及验证手段。
317

电机控制中PWM更新、ADC完成、电流环计算的时序和优先级通常怎么排?

考察候选人对控制链路时序、中断优先级、影子寄存器和最坏执行时间测量的掌握。
318

请用C语言编写一个程序,判断A、B、C、D四个数中的最大值。

考察候选人基本的C语言编程能力、条件判断逻辑以及代码的规范性。
319

UART波特率为9600时,每秒能接收多少字节数据?请说明计算过程。

考察对UART通信协议的理解,包括波特率定义、数据帧格式及实际传输效率。
320

请用C语言实现将十六进制数0xAB转换为0xBA(高低4位交换)。

考察位运算能力,包括移位和掩码操作。
321

请描述I2C总线的启动信号(START)条件及其时序。

考察对I2C协议基础知识的掌握,特别是启动信号的电气定义和时序要求。
322

如何判断一个八位数据中有多少个0或多少个1?请给出至少两种方法。

考察位操作技巧和算法思维,常见于嵌入式底层开发。
323

如何设计程序,通过访问时延推断 CPU Cache 的层级和各级容量?

考察候选人对存储层次、时延测量方法和实验设计的理解,以及把抽象概念转化为可执行测量方案的能力。
324

缓存容量测试中如何选择工作集大小、访问方式并定位时延拐点?

考察候选人对缓存测量实验细节的掌握,包括工作集范围、访问模式和拐点判定方法。
返回面试题库