备注:

PO3100的使用其实很简单,但是按照官方参考做出来的摄像头效果很差,一直怀疑是拿到的参考设计有明显的问题,但是一直没有头绪,又跟Pixelplus的工程师邮件咨询过之后,还是决定再修改一版进行测试。 PO3100v1.2改进:

  1. 将DVDD跟HVDD断开
  2. 用外部LDO给DVDD供电(后来布板时又根据Pixelplus的建议去掉了,测试结果证明外部LDO是必须的,虽然官方给的参考是不用LDO给DVDD供电,但是后续的测试结果显示,如果没有LDO,内部DVDD模式工作,片子的工作稳定度,PLL抖动都会变差,以至于无法用LVDS传输)

调试过程

2015-11-17
step1
上电后板子发烫,LDO不正常,很崩溃,做个小改动,完全没有实质的修改,又出现没理由的问题,一度将这批小板标记报废。中午测试完Truly的Lvds摄像头之后重新将板子拿出来,仔细又核对了一遍这些完全不可能出错的简单电路。确认是焊接厂将27M晶振焊反了。修改后烧写程序(20fps,4分频pclk=60M),sensor工作正常,但是lvds不通,示波器查看pclk抖动厉害。
step2
修改电源,给DVDD飞线增加两个22uF电感,现象依旧。
修改电源,给AVDD额外增加一个22uF电感,现象依旧。
step3
虽然PixelPlus的工程师反复说,PO3100在实际使用时没人使用外部LDO给DVDD供电,但是还是怀疑原因在DVDD上。在板子上设法飞线增加了一个1.8V(PO3100内部LDO是1.5V,但是实际电压高一些完全能工作),将1.8V连接到DVDD上,DVDD由内部LDO供电改为外部LDO供电。
sensor工作正常,lvds也通了,并且测试软件可以看到稳定的图像。
step4
传输线增加到7米,仍然正常。
step5
重新烧写配置程序(25fps,4分频pclk=74.25M),lvds不通,去掉传输延长线,仍然不通,ds90ub913/914修改为10bit和12bit fast两种模式,lvds都不通。
step6
重新烧写配置程序(20fps,4分频pclk=60M),lvds通信正常。
step7
去掉AVDD电容,lvds通信正常。
step9
去掉DVDD电容,lvds通信正常。

结论1

  1. PO3100 sensor内部信号比较糙,pclk信号抖动较大,如果要跟LVDS芯片连接,使用官方参考设计,pclk完全不能驱动LVDS正常工作,必须使用外部LDO,才能提高pclk信号质量,驱动LVDS。

  2. 在上述情况下,PO3100的pclk仍然不是很理想,在74.25M的输出时,LVDS仍然不能通信,但是频率降低到60M,则可以稳定的工作。

  3. 在DVDD由3.3V改为1.8V之后,PO3100严重发烫的问题解决了,PO3100图像中严重的噪点问题也大幅度降低了。但是PO3100的DR跟SNR另个参数毕竟比较低,所以图像效果只能算是中等,夜视也是普通效果。

后续测试补充

因为要测试Lvds传输的长度和并评估线缆,于是又将PO3100模组拿出来当作测试配件。因为在720P25fps@74.25M的配置下,Lvds不通,只能降频降到60Mhz,帧率也相应的降低了,Lvds才能正常通信,所以直觉就是Pclk质量不好。

依次修改频率从低到高设置了几组配置,烧写PO3100模组后,明显的看到随着频率从低到高,Lvds芯片接收端的Lock信号从稳定,到零星闪速,到平凡闪烁,到不亮 的变化过程。

翻看PO3100的datasheet跟配置数据对照,找了到pll设置的那几个数字,然后根据手册的说明,发现pll倍频数还没有到最高,也就是说有改善的条件,于是将pll的倍频数和分频数都加倍(等于是输出频率还是变,但是这个频率是由一个更高的pll频率分频得到的,因此抖动和偏移理论上会更低一些。)输出频率设置为74.25M,也就是标准的720P的输出时序。

烧写PO3100并连接Lvds,跟设想的一样,Lvds能够稳定的工作,Lvds 传输端接收端能够稳定的Lock。