系统:android6.0
本文仅仅是对于本人调试一款mipi屏调试问题的记录,关于Mipi各方面的知识点可以自行百度,这方面的文章很多,这里就不再赘述了。
关于配置mipi屏基本就是分3步:
1.打开menuconfig开关
Device Drivers --->
Graphics support --->
[*] RockChip display transmitter support --->
[*] Rockchip MIPI DSI support
<*> rk32 mipi dsi support
2.在dts里面打开hostdsi,,正常在rk3288.dtsi中把开关打开即可。
3.在主dts加入你写好的dtsi(这个是你的Mipi屏参文件)。并注释掉之前的屏参文件。
调试记录:
正常拿到mipi屏之后要让硬件看一下屏线对应上了没有,如果没对应轻则没显示重则烧屏。
硬件确认了之后就开始参照规格书该屏参啦,这里说一点先不要急着去写初始化代码,先试一下没有初始化代码是否可以点亮,因为有些屏是不需要这些的。如果不需要会省去很多时间。
如果没有点亮,那就要写初始化代码啦,这个是个体力活,慢慢弄吧!!!!
弄完之后就可以下载烧录试一下啦,当然最好的情况就是点亮,那这时候就要恭喜你了,但是往往好运不会有太多的,有很多还是点不亮的,这时候先要确认初始化代码是否写的有误。确认无误,这时候就要请原厂协助了,首先可以先要一下屏自检指令,在GAMMAR初始化之前要加入,如果可以显示红绿蓝证明mipi数据是通的,如果还是没有显示就要问下是否有特殊的引脚或者延时方面有特殊的要求,我这里就是对rst脚有电平要求,需要1.8V,然后在平稳电压情况下控制io口的高低高,再放松初始化代码才可以,因为电压问题我的rst时序一直没有成功,所以屏幕一直没有显示,最后通过硬复位解决问题。
你认为读到这里就ok了吗,还没有!!!
这时候点亮之后应该还是红绿蓝的状况,需要把自检代码去掉才可以正常显示。
开机之后发现颜色显示不对,而且有一点点偏移,开始我是以为要改下前后肩,并且寻找是哪两个颜色反了,在屏参中进行反转,但是修改之后没有效果,改了out-face也没有达到效果。最后通过修改dsi_hs_clk这个参数,减小,达到了效果。解决了偏移和颜色问题,还有这个clk也可能导致黑屏,太大或太小。
dsi_hs_clk = ((h_active + hfp + hbp + h_sync) * (v_active + vfp + vbp + v_sync) * fps * bpp) / lane_number
以上就是调试一款mipi的过程,希望对读者能起到帮助。