某大厂嵌入式实习面试失败记录

这篇博客记录了我面试某大厂嵌入式失败的过程和心路,给正在找实习的牛友们一个经验吧,同时也是一篇求助博客,因为我不知道为啥我应聘不上,因为我这个人比较老实,平常也不怎么说话,希望能得到前辈的指点,而且现在也感觉有点迷茫,不知道下一步该怎么办。(当然最大的原因是自己实力不济(-

在招聘上大概是这样写的:会设计电路,会画PCB,焊接,会stm32开发,会BLDC电机开发的优先。
我的情况是这样的:根据网上开源的四轴程序从“0”DIY一个无人机,能成功起飞但是不稳,没有定高功能,因为我没有在开源程序之上进行改善。stm32F1起码能看懂里面的代码,并能根据代码进行硬件的调试就是debug,有时元件有虚焊之类的可能会怀疑代码的正确性,但是经过测试和看数据手册,代码没有问题,在调试PID参数的时候,自己写了nrf24 (用的I2C)的驱动,和一对多通信进行无线传参调参,也就是说整个程序就这里敲了代码,其他的确实没敲,我的想法是先照着搞一个,后面我再加上RTOS(FreeRTOS)(有学习但是没有实战过),但是3月份开始就一直在找实习,而且发现可能也要开始学习Linux了(因为感觉以后应该从事嵌入式驱动开发,而不是控制,感觉要控制的话还要读研,不想读啦,虽然感觉控制也很有趣,可以用于无人机和自动驾驶),所以时间上就不够了。
然后面试:电话面试,面试官说晚上7点,但是6点25就打电话来了,一来就问要腾讯会议,我要看一下你的代码和PCB之类的(我的电脑重装过2次,AD打不开,)然后一开始就是自我介绍,自我介绍的话,我是写好草稿的,然后我就照着念(没有开摄像头),然后就介绍了一下项目经验,简单的介绍了我入门stm32做的红外解码发射器,详细介绍无人机制作的过程,并告诉面试官这是开源程序,然后介绍完之后,就到了面试官提问的环节。
1.一开始面试官上来就问你用的IMU是什么,我一下子没反应过来?心里想IMU是啥?然后面试官说:这么说吧,你能介绍一下互补滤波算法吗?(我对互补滤波算法还没吃透,但是感觉也差不多了,但是就是时间有点久了),我就说:互补滤波就是利用2个测量得到的加速度的误差然后取PD控制然后再取权重互补。然后我没想到是哪2个量了。然后面试官说:不是这样的,因为角速度随时间的积分会越积越大,而加速度容易受到高频噪声的干扰,所以需要互补(我当时想不到要说这个,就是我可能在面试官看来答非所问了)互补滤波我也看了很多资料的,但是已经快一个月没搞了,忘了很多,只是想不到面试的时候会被问到。然后他可能觉得我有点假,就问我mpu6050采集到的是哪样的数据?我就说:加速度和角度,哦,不不,加速度和角速度(因为那个时候很慌)。哦不不,面试官一来就问我,你的无人机会不会空翻?我说不会。然后的话我就不记得了
然后就到第二个面试官问我:他说是电气相关,他问我有没有画过PCB,我说其实一开始的时候我有画,但是后来因为画得不好就直接用了别人开源的,但是后来也有画了射频的一部分(因为在搞无人机的时候射频部分一直搞不定哦,因为低频和高频电路在一个开发板上),然后我说虽然是开源的,但是我该会的还是会的,然后他就问:你能说一下SPI和I2C吗?然后我就挑了I2C说,:在这个无人机的项目中,I2C其实也可以用硬件来进行通信但是据说硬件IIC有bug就没有用,我用的都是用IO模拟IIC,所以我对它的时序会比较了解,比如一开始要有起始信号和终止信号,还要有ACK确认,(我感觉我这里没大到点子上),然后我接着说:对于SPI的话,因为用的是stm32的硬件资源来做的,所以对它的时序就不是很了解了,只需要进行一些设置,然后面试官说SPI也是要设置一些极性的(然后我听到极性我就想起我看过的资料什么CHOL=1,CAOL=1之类的),然后我就说了出来,但是面试官说:啊,行了,问下一个问题,然后他问我调试的时候是怎么调试的,我说有线调试debug,然后他说:如果是 完全不用线呢?然后我就说:我用的是nrf24无线传参就是多对多通信传输数据(这里我项目介绍的时有说了,感觉他没在认真听我说)。期间他问:你以后工作应该是从事什么工作?我说我应该偏向于嵌入式软件开发。说完这个无线传参后,面试官就说:好,今天就到这。然后很快就被挂断了。(还有一个就是他问我,IIC传输数据的速率多少?我说我没有测,然后我接着答:不过我在网上看到IIC的通信速率是2M,SPI的是40M左右,我答的期间他反问:多少兆?(我没跟他说我这个是在网上看到的资料,我也不知道准不准确,后来看了网上看了一下IIC500kb?))(还有那个问我算法的,还问我定高算法有没有实现了,我说没有,他接着问:有没有思路?我说根据它的加速度来,只要加速度有变化,就在那个位移上根据加速度的变化来进行判断同时根据气压计测得的气压的变化来互补估计高度)
面试完心里慌得一批,因为感觉答的不是很好,特别是算法那里。
然后现在反思一下:感觉我回答都没在点子上,虽然我也做了很多“前戏”,但是,,,比如那个IIC我要怎么说?就介绍这里的时候感觉很乱,不知道从哪介绍起,面试了2-3个小公司,他们都会叫你介绍一下IIC SPI usart这些通信方式,有的还会叫你介绍一下通信过程(我就被问到了usart的通信过程是咋样的,但是也是凭记忆回答了)

事后总结了一下:不大会的就不要往简历上写,面试官都是根据你的简历来进行提问的,说不定一开始就会问你最难的,那个互补滤波说实在程序中的每一条代码我都分析过,但是3个星期没搞了,很多细节都忘了。之所以没有继续改善,是因为正在学习Linux,现在Linux也中断了,因为要面试一些大厂要做题,之前做了华为的机试题,第一题勉强做出了70-80% 那里吧,第二题是这样的:求这个公司至少有多少人?每个员工头上都有一种颜色的帽子,总共有26种颜色,输入是:A 3 B 4 C 5等等就是A员工看到员工中和他同样颜色的帽子有3个,B看到和他同样颜色的有4个其他的一样,但是输入可能是A B C D E 等等。当时就懵了,这题完全没有思路啊。第三题也是求最值,忘了。这些题我几乎没怎么做过(好像是ACM?),也就最近一个星期才开始算题。然后Linux的学习就中断了,感觉软件开发的竞争好激烈啊,数据结构学过但是也忘得差不多了,也要捡起来。要想准备好,起码得前一年大三就得开始刷题,刷到中等的就行了,但是这样的话就又没有项目经验了。
所以我接下来应该怎么办?是去小厂有一个实习好?还是做题学Linux准备秋招?甚至秋招提前批?还有就是介绍SPI IIC USART应该从哪说起?那我有模糊的就不往简历上写?
刷题的话可以在力扣上,也可以顺便复习刷一下数据结构相关的题,感觉做力扣一做就是一整天,所以就有点费时间,就没空学其他的了,我要怎么进行取舍?因为我没有加入实验室,所以就没有比较厉害的师兄可以问,于是就在这里发问啦,希望能得到帮助,同时也将我的经验介绍给你们,不知道这对你们有没有用

全部评论
我猜大厂是dji
点赞 回复 分享
发布于 2021-10-16 01:15

相关推荐

01-18 09:26
已编辑
门头沟学院 Java
王桑的大offer:建议中间件那块写熟悉即可,写掌握 面试包被拷打到昏厥
点赞 评论 收藏
分享
01-02 21:17
已编辑
西安理工大学 后端
程序员小白条:项目不太重要,你的优势的算法竞赛,然后多背相关的八股文,项目可以不作为重点考虑,面试可能就简单带过项目就行了,你可以直接写简历,背项目相关的八股文就行,也不用自己做,时间紧张的情况下,性价比最高
点赞 评论 收藏
分享
评论
5
16
分享

创作者周榜

更多
牛客网
牛客企业服务