1.
camera 调试过程常见问题及 Debug方法
1.1 开机过程模组注册失败
在上电的时候 logcat 里面会有
说明已经连上了,如果 connect 为 0 有可能存在以下问题:
1. Cam_board.xml 中
GPIO ,d
VDD 等配置可能有误,请根据硬件
原理图和模组
规格书配置好;
2.
I2C 通信有问题,需要检查硬件电路;
1.2 调试过程进入 apk 黑屏没显示或者卡住
LOGD("%s(%d): receive CMD_
display_
start", __FUNCTION__,__LINE__); 请先看看有没有这句话的打印,如果没有,说明流程没走对,请检查驱动文件写的是否有问题, 导致程序没有正常跑。
1.3 驱动写正常并且进入有 display start 的打印还是黑屏
当然包括自带驱动出问题(自带驱动代码没问题,所以流程没问题,就是
信号问题) 这个时候可以先敲几次命令看看: io -4 -l 0x100 0xff911c00 (注:RK3399 平台有两个 ISP
控制器,如果接 phy0 地址为 0xff911c00 , 如果接 phy1 地址为 0xff921c00); 会有如下显示:
ff911c00: 00061f03 00002000 00000000 09600000
ff911c10: 00000000 00000000 00000000 0000002b
ff911c1c 寄存器识别
0000002b 表示 isp 识别到为
raw,0000001e 表示识别到
YUV 数据,如果其他表示识别异常, 很有可能是工作异常。
如下有几种常用的处理方法: 请注意这几个方法一定都试试:
检查 cam_board.xml 里面的 phyindex 配的是 0 还是 1,
mipi rx 那组对应的为 0 , RX/TX 那组对应为 1;
将 dvdd 电压提高 0.05-0.2v 都试试;
将 cam_board.xml 里面配置的 24m 的 mclk 改成 12m;
还有就是修改驱动里面的帧率寄存器,降低帧率可能可以收到;
硬件方面可以查查 mipi 信号波形,具体在摄像头硬件文档中。
1.4 插着 camera 开机概率死机问题
尝试将 isp_clk 降为 210M,如果不会死机,按照下面方法修改,按照硬件的实际测得的结果, 填入 regulator-min-microvolt 和 regulator-max-microvolt,开机后,实际测得的电压等于rockchip,
PWM_voltage 设置的电压。
1.5 预览画面边缘有条纹
调整 DVDD 电压,根据具体情况调高调低。