【元戎面经】25届嵌入式软件开发
8.21三面
7.20投递 7.31一面 8.7二面 8.19三面 8.21通知挂了bg双非本 9硕一段实习 3个项目 本科20几个作品
一面:(一小时)
- 自我介绍
- 介绍项目 问:是不是**开发是第一个项目问:介绍下CAN通信原理,原理讲问:编程方面的,数据链路方面的问:具体编程是怎么样的问:有哪些入参问:有了解过canFD吗,can拓展协议呢问:讲一下UDP吧问:怎么去创建UDP问:以太网通信几层问:电路板上有哪些芯片实现这7层问:ros通信原理问:验证平台里用到了组合导航,用来干啥的问:用的什么协议问:用linux读的spi吗问:还有相机和雷达问:C++用的多还是c多
- 基础问题(八股) 问:对定时器的理解,时钟源是啥问:时钟源来自哪里问:stm32为什么叫32问:学名叫啥问:对中断的理解问:写过啥中断问:什么是RAM什么是ROM问:代码运行的地方是哪个问:定义和声明的区别问:static关键词作用问:static修饰函数是啥用的问:c语言结构体存储规律,一个char和一个int占多少问:中间有空格吧,怎么去掉这些空格问:heap和stack区别问:智能指针初始化对象,放在哪问:什么时候用到stack问:类里static修饰函数表示这个函数咋样问:内联函数了解吗问:linux线程通信有哪些问:线程进程区别问:uboot启动流程问:uboot干啥的问:TCP用过吗问:GDB调试用过吗?问:源代码到可执行过程步骤问:那你平时怎么写程序问:docker用过吗问:调试以太网用具?问:git常用命令问:那你常用哪些操作问:驱动开发流程问:stl库用的多的是啥问:python用过吗
- 写代码: c语言实现一个字符拷贝函数,要求自己写函数实现,用函数返回地址
二面:(一小时)
- 自我介绍
- 介绍项目 问:主要是在哪接触到的Uboot和驱动开发,**项目里,巴拉巴拉问:主要是在哪里用到的STM32,本科作品问:STM32用到过什么外设?照着本科做的说了一遍问:C++在哪用到过的?和C语言区别是什么?问:CAN在哪用到过的?是什么协议的?最长收发有多少位?问:Orin主要是在哪用到的?问:ROS是在哪用到的,有写过ROS的程序吗?问:STL库用到过哪些?问:static你用来做过什么?问:命名空间std干啥的?问:自己写的函数和std里的同名咋办?问:const用来干啥的,以前用过的有哪些?问:设计模式知道吗问:智能指针了解吗
- 写代码: 你需要设计一个简单的汽车展示系统,包括一个基类 Vehicle 和两个派生类 Car 和 Truck。 每个类都应该具有简单的属性,如名称和价格,并实现简单的函数。 要求: Vehicle 类应该包含名称和价格两个属性,并提供适当的构造函数和成员函数来操作这些属性。 Car 类应该是 Vehicle 类的派生类,适当重写基类的成员函数以打印适应汽车的特性。 Truck 类应该是 Vehicle 类的派生类,适当重写基类的成员函数以打印适应卡车的特性。 在主数中创建一个 vector 容器,然后向其中添加几个 Car 和 Truck 对象,并计算它们的总价格。 输出每辆车的信息,包括名称和价格。 你的任务是实现这个简单的汽车展示系统,并在主函数中演示其功能 针对这个代码问了些问题: override 关键词干啥用的为什么子类没有name成员,能用为什么vector<Vehicle* >里要加*,不加可不可以代码里怎样体现多态?
三面:(半小时)
- 问实习局域网通信系统里做了什么?数据流向是怎么样的;
- 问实习里遇到的最难的点是什么,怎样解决的?
- 问Orin的CAN怎么使用的,有没有连什么外接的芯片(感觉是因为这个负责人只会这个,又想看看我是不是自己做的,所以问了个这么奇怪的问题)
- 问小车标定标了啥,有和相机标定吗?为什么要做小车?
- 问嵌入式想做哪一方面的,底层还是应用?
- 反问:你对你们公司的产品有自豪感吗? 感觉面试官有点****的,看背景是公司走廊的沙发上?感觉还在干活,抽空出来面试,迟到了一分钟。 三面是主管面,前两面是组长,前面两面体验还行,估计排序给挂了吧
8.21二面
因为实习经历和jd方向很相关,甚至可以说就是现在实习做的事情,所以整个面试非常快面试官人很好,上来没自我介绍之前还问我是不是上海嘉定,我说学校有一个校区在那(深圳的公司对上海这么熟悉嘛)
正式流程:
自我介绍实习和项目拷打:问了下工具链使用和具体配置细节,使用多久了
然后问了一个实习项目的实现方式和流程
checksum是怎么计算的,
大致流程八股:任务调度机制,
抢占式和非抢占式有什么区别优先级反转和解决方式,应该是有两个解决方式,我说了一种
can和canfd的区别
详细问了波特率是每个数据段都不一样吗
问了zlg的配置(我是canoe用得多,答得不好)
urat和SPI有什么区别
手撕:出了一个场景题,写伪代码就行,重在思路的考察吧
就是rolling counter,每组数据16位,一直递增为正确,不符合为错误,然后需要返回每组数据和对应的信号正确与否还涉及一些实际情况的逻辑,比如不是从第一位开始发,如果有错误,错误处理机制是上面?
写得还行吧反问:部门的组织架构,上位组织是什么,组内负责的工作有哪些?问了下今后的学习路线和方式?问了下SOP车型和项目,合作的OEM?面试官人很好,总流程40多分钟,感觉有5分钟多都在回答我的问题
8.16一面
我主要是实习经历为主,
问题如下:
capl怎么实现周期发送报文?
aspices认证有几级,是什么模型?
需求、开发和测试是如何连接的?
OS用的是什么?
为什么没用Autosar的OS,而是自研os,两者有什么区别?
谁更加安全、实时性更高?
OSEK标准(autosar os的一个标准吧)功能测试是怎么实现的,以NOA举例?
UDS的服务,具体id,读写服务?
19服务是什么?
OS你比较了解,这个Cpuload测量是怎么实现的?
用的是API函数吗?
有用劳德巴赫对比过吗?
这个测量需要注意什么?
劳德巴赫的命令行拷打?
。。。。。。(部分忘记了)
八股拷打:OS有什么调度机制?说下static?指针?数组?没啥太难的八股,所以这部分没啥记忆点
coding:最长公共前缀 leetcode 14题
总体时常1小时,coding占一半吧面试官人不错,问题上有的浅尝辄止,有的会拓展一下。
7.23二面
7.11一面:30min 纯结合项目 参考意义不大
7.18二面:50min 前面问项目 然后开始出题 我说********刷的不多 然后选了一道字符串easy题 挺烦的就没做出来,我应该不多嘴的出道链表我问题不大的。后面问了一些简易的八股:
1.二维数组的内存分布
2.c➕➕的虚函数与纯虚函数
3.short data[]={0,1} sizeof(data)与sizeof(&data[0])大小
4.bin文件的内容组成
反问信息给大家做参考吧:
1..主要是做应用层开发simulink 然后部署到具体的控制器
2.加班不多,与项目的紧张程度有关
3.我问了下对数据结构算法也就是********的要求水平,面试官说要求不会很高,联想到我简单题没写出来大概是没了
面试官都是技术职员,面试过程体验很好,很专业,真的挺想去元戎的这个岗
24届以及之前嵌入式软件面经
25届校招投递地址
点我,投递的同学,在下方回复:名字简称+地址方便确认是否投递成功,例如:xyz + 深圳