LCD以Tiger dispc 大致可以分这几种: MIPI ,RGB 和MCU 其中MCU屏使用dbi接口,MIPI和RGB的video mode 使用dpi接口 Dpi时序:一个PCLK传输一个像素数据,显示设备在上升沿获取数据。 ID 读id是识别哪一个屏的一种手段,也是利于做兼容。 Adb shell Cat proc/cmdline 通过内核启动命令行查用引导参数 显示 白屏 一旦出现白屏时首先要确定硬件包含 1.IC是否正确。客户及模组厂送错样品的事也还是有的。 2.IC正确则看下屏是8位还是16位的。可以查看规格书并打电话咨询屏厂。 3.确认是1.8V的屏还是2.8V的屏。这里可以量下屏上的电压脚。1.8V的屏2.8V和1.8V的脚位是分来的。假如是连接在一起的说明是2.8V的屏。 4.检查FPC的脚位是否有断裂或者没焊好的现象。
5.确定正确IC电压及位数的话可以看下ID是否正确。可以只打开一个IC的驱动来验证,前提是这个驱动以前是点亮过这个IC的。 6.如果还是不亮那么就可以请求屏厂支持。
二当排除硬件故障后还是不正常 1.首先看下驱动是否用对。虽然有时候屏厂说是和某个IC一样可以点,但也不一定就完全 相同。 2.驱动正确的话可以看下初始化最后的写入寄存器的命令是否有写到。如果在初始化最后 没有写写入操作的寄存器则会导致驱动不能写入或者不能完全写入造成不正常。
3.初始化里上电操作有问题。一般是上电寄存器的延迟不够导致上电不正常造成初始化失 败。 4.其他问题待总结。
分块 LCD有时候会显示成诺干小块(一般为2或者4个)这种问题是刷新屏的格式出错比如应该是LCD_WIDTH的却写成QVGA_WIDTH这样导致平刷新是不能正常的刷完整个屏幕而出现分块。
图像镜像 有时候调试出来LCD显示是正常的但是点击屏幕刷新的图像却是镜像的。比如点击左边图标会刷新到右边。这种情况是屏的刷新方向(GS SS)与输入模式(Direction)设置出错。可根 据实际情况来修改。
颜色 屏的颜色和背光玻璃密切相关。一般来说如果同一客户两个屏颜色差异比较大那么可以让 其显示为纯白色(进入校准TP界面)来查看颜色。同一客户的屏颜色不能差异太大。可以 用图片及进入相机测试。
亮度 直接和背光有关,没什么特别的了。注意的是有时候客户要求增加背光亮度等级来提升屏 亮度。这样会导致所有屏都会变亮,不能解决问题。所以不是已经生产出来的屏一般不要 修改。让模组厂修改背光。
抖动 抖动条纹要求要严格。要求变色区域在抖动时也不能有条纹。如果要求低了那么会导致重 复修改是浪费时间。出现水波纹的问题,我们可以将线翻转改为点翻转,对于不是全视角的屏效果明显和微调read scan line。
色斑 要求颜色渐变区域不能有色斑(可以适当放宽)。因为调试抖动要改到电压有可能会影响 到色斑的产生。所以调试抖动要严格,色斑也要严格。这些由我们确认。颜色亮度由客户 确认。
转屏 转屏调用270度,只要配好对应的转屏寄存器操作(set_dirction)及横屏起始点 (set_displaywindow)即可转屏。 转屏一般都是调用270度,但最近发现有的项目调用的不是270而是H或者是V,为保险起见可将270度配置到H V镜像里。根据IC资料配置的转屏寄存器数字不一定是完全按照IC资料上所写。有时候不一定要写翻转的寄存器位。即如果IC资料上要求写寄存器某一位就可以转成横屏那么写完后不正常可以尝试不写这一位而只是做水平垂直方向翻转来试验。而且有的IC不一定都有起始点。或者有的IC转屏时不需要挪动起始点(一般都需要)所以具体以具体IC为准。
帧率不够: MCU的屏(dbi): 1.
加快写时序twc 2.
根据合适的写时序写一帧数据的时间T,设置合适的自刷新频率fps。如果写时序已经很经凑了仍然不满足公式Twc *HV < T 可以适当降低自刷新频率,如果自刷新频率小于60Hz,出现闪烁问题,可以double(不建议)。
根据计算公式 dbi_clock / 分频比 / (H+twc) * (V+twc) dbi_clock / 分屏比+ 1 / (H+twc) * (V+twc 所得到的这个最好在1/T附件最好。 对于twc的选择,我们适当的控制在45ns扣到43ns以下,分频比可抓取kernel log信息查看到,一般平台默认dividor =12。
如果修改写时序,发现fps并没有增加,这是由于有接Fmark引起的,因为BB只有在fmark才发送数据,即按自刷新频率刷屏。BB发送越快越好,要快于自刷新频率,即Tfmare>Tlcd.. 使自刷新频率尽量贴近最好。
Dpi接口 由于Dpi接口的屏是通过Pclock来提供时钟,所以我们可以通过修改dpi_clock和屏初始化参数来修改帧率。
防止切屏: BB接入Fmark
软件上以check
TE 为辅:查看datasheet 搜索TE寄存器 如ili9806E的屏 由0x4400 0x4401分别写 0x00 0x50。 具体写多少根据切屏位置来改动。 软件上需要打开Fmrak 写时序周期必须要小于自刷新时间 Thv <
Tf
测试 TP和播放MP4转屏一定要测试。TP位置出现镜像不要紧,但一家客户使用的屏TP要保持一致。同时要注意反向只能是X与X轴上反向,Y轴与Y轴方向反向。对于X轴走线与Y轴走线互相接错的只能修改屏走线。
附LCD初始化流程图 |
|