Camera I2C不通的分析思路

常见问题及debug

1) Camera I2C不通的分析思路

I2C不通,有两种原因:一种是device端(也就是我们的camera sensor)本身就没有回ACK,另一种就是在master端(也就是我们的baseband端)。我们可以从kernel log里面搜索I2C的关键字:“I2C_TIMEOUT”和“I2C_ACKERR”。

I2C_ACKERR:问题多半在slave端,需要检查上电时需是否符合sensor spec的规范,和模组厂的工程师或者sensor厂的工程师一起修改sensor的上电时序。(PS:工作中遇到另外一种情况,在上电时序正常的情况下,还是发现I2C不通。最后是I2C驱动能力不足的问题,增强I2C的驱动电流即可。)

I2C_TIMEOUT:一般是BB端,至于是代码的哪个地方造成的I2C_TIMEOUT,我们得根据具体问题具体分析,出现I2C_TIMEOUT的rootcause之一是, 在I2C bus上没有上电的情况下去操作I2C,就会出现timeout。如果I2C bus有电,就需要结合示波器等手段深入分析。这个问题也是分析一般I2C器件不通的常用思路。 

2)花屏:如果是很多绿线的花屏的话那么通常是HS/VS/PCLK的极性配置反了或者驱动电流太小被干扰了,如果是红蓝的颜色反了的那么是yuv输出数据反了。

3)光晕:出现此种现象的原因是data线有丢失。

a) 检查data line是否配置正确。

a) 可以修改sensor的输出能力,另一个是改pclk的极性。

b) 去掉HW上的,CAMERA data pin上的EMI器件。

 

供自己备忘:

原文地址:https://www.aliyun.com/jiaocheng/14274.html

 

你可能感兴趣的:(一时兴起)