android之驱动|android之驱动 LCD

今天先写写LCD驱动调试心得
平台 msm7627
LCD icrm68140
前几天拿到屏到今天才调出来都不知道好几天了
现在把过程记录下来
1. 拿到屏 找结构要了 接口图仔细对照原理图 察看接口对不对
2. 检查IM0 IM1 IM2确定SPI通信接口
3.写驱动 GPIO模拟SPI
4。读ID

以上都没问题
5.初始化序列拿到屏厂给序列 我崩溃了

序列不是RGB接口 在关键处没有时间延时
没办法 先抄上去 一点点的看寄存器 一个一个的对
1)3A寄存器写55Hmcu 和 LCD 相匹配rgb565接口
2)B6H寄存器配72 02 3b配置 rgb接口

以上2个是我添上去和修改的寄存器

编译驱动,下载 发现屏 上半部分是白的 下半是黑的


用示波器检查个个信号PclkVs Hs信号正常
【android之驱动|android之驱动 LCD】

向FAE求助
得到答复水平和竖直同步的前后延不对
更悲剧的是在datasheet上 找不到HBP HFP vbp vfp 典型值然后在一个B5 寄存器 找到了决定用其默认值
一切搞定 编译下载LCD 花屏


继续求助 FAE也搞不定


然后我又把datasheet每个寄存器都看了一编然后在B0寄存器 发现了眉目

同步信号的极性可能不对
把这个寄存器配80H

o哦yes 屏亮了但是图片长了斑点
接着我又把 Dclk极性 翻转了
屏正常了







总结

1.调试驱动一定要仔细,小心留意 datasheet每个细节
2.FAE不是万能的,关键时候还是要靠自己

    推荐阅读