esp32 camera_camera驱动工程师到底做什么?

dfd0636123782b775a1ddffedf621337.png

camera驱动负责的模块

一颗camera模组,包含了sensor、AF、Flash、eeprom这些模块,模组本身不大,但是集成的模块还是很多,一个camera驱动工程师,相当于负责4个模块的驱动,如果前后摄像头都有这些模块,相当你差不多得负责8个驱动,如果后面在有二供、三供的话,你得多调试4颗摄像头,前后双摄前提下就得调试12个驱动,还不包含三摄四摄五摄六摄等情况,所以camera驱动工程师太难了,他们太不容易了,如果你们见到他们,好好请他们吃个饭,安慰安慰他们,他们一定会非常的感激你的理解和善意之心,肯定会动感涕留。他们这帮底层工作者,默默的坚守在最底层工作,给上层打好最坚实的地基,当效果和产品呈现时,底层工作者往往会被淹没在最底端,永远不会被看见,鲜花往往会送给效果端和算法端,因为他们才是最直接的呈现者。

驱动工作分为以下阶段:

1. Porting工作

porting工作,就是把现有的驱动,按照框架去合入AP端,确保编译通过。如果一些都是比较顺利的情况下,我们按理能够正常点亮。然而,代码编译通过只是完成最简单的工作,但是不一定能够确保你的器件就能够正常的工作起来,如果器件工作不起来,你得去检查上电和上电时序,你得去看datasheet和原理图,查看各路电压,查看时序图,你得学会用示波器去测量电压和时序图,查看下发i2c命令,查看sensor端在下发器件地址以后,sensor slave端是否有回应,所以说,调试驱动就是对器件的硬件的理解的过程。跟硬件打交道,我们得学会使用各种仪器,我们得知道硬件各种性能,才能够优化最好的驱动性能。

2. 测试工作

当器件能够正常工作起来后,你以为camera调试就完成了吗?嘎嘎,其实还远着呢。既然你对camera器件想要达到最优性能,那么你还得去测试功耗和速度对吧,谁家不想自己的产品功耗最低,速度最快呢。测试功耗,你得学会使用程控电源对吧,AVDD DVDD IOVDD AF各摄像头的电压,假如3摄4摄和5摄,单单测试也够你和一壶的了。那么各种场景下测试,例如preview capture和video,还有各种算法场景融合的测试,各种光源下的测试,底电测试等,你就知道,单单功耗测试就工作量已经很大,若果大一点的厂商,分得会更加细一点,会配置有相关的测试人员测试。

3. Debug工作

porting和测试工作完成以后,伴随你的是漫长的debug工作,底层的接口是供给上层调用,那么camera往往是应用和应用场景最多和最为丰富的模块,那么交互的复查,也给你带来了更多的问题,一个问题可能牵扯到hal和算法和底层和tuning,所以底层代码一定得健壮性。一般只完成简单的功能和接口就好,不要做业务复查的逻辑,一般复查的业务逻辑功能都放在应用端去做,然后也有牛逼的大神放在底层端去做,debug工作量会给底层带来更多的挑战。

如果项目没有结案或者量产之前,驱动工程师要一直跟进项目,一直到项目的结束。所以说,驱动工程师任务和事情还是非常繁重,很多面试者去面试驱动的时候,往往不懂底层的老大,他们会认为底层驱动没有什么可做,一般都是厂商提供好的驱动程序,他们这么说,一个是他们不了解,二是他们想占有主动权,在这岗位上面去压低你的工资。所以说,驱动工程师要会陈述你们的工作,不然真的哑巴吃黄连,有苦说不出的感觉。

  • 1
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值