长安汽车 嵌入式 面经
一、针对个人项目与实践经历展开提问
二、八股:C/C++相关:
全局变量与局部变量的区别及其存储位置;
static关键字的作用;
如何通过类静态函数修改某个对象的成员变量;
volatile关键字的作用与适用场景;
数组指针与指针数组的区别;
内存对齐的概念及设置方法(如使用#pragma pack)
三、单片机相关:
MCU从上电到执行main函数的过程;
查询与中断方式的区别及各自的优缺点;
中断频繁触发可能的原因;
串口通信的参数设置;
串口停止位的作用;
SPI的连线方式及各线路功能,与IIC的对比;
如何确保串口接收数据时不丢帧(串口数据读取的常规流程)
四、操作系统相关:
“裸机”与基于FreeRTOS的系统各自适用的场景;
FreeRTOS创建任务时可传入的参数;
线程间通信的方式;
使用共享内存时需注意的问题;
FreeRTOS调度多线程的算法机制;
系统“跑飞”可能的原因分析
五、开放性问题:
个人未来职业规划;
技术栈中同时涉及深度学习与嵌入式,未来的发展方向如何考虑;
对汽车行业及长安汽车企业的了解与看法