完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
背景
在开发项目中,笔者需要用一个MPU驱动一个1280x1024的双路LVDS液晶屏,不巧的是这颗MPU硬件上仅支持TTL RGB接口和MIPI接口,没有现成的LVDS接口。一开始是尝试使用THC63LVD827将TTL RGB转成双路LVDS驱动液晶屏,但是发现该MPU的TTL RGB接口最高只能驱动1280x768 60fps显示。无奈只能从MIPI转LVDS入手,该MPU的MIPI接口最高能支持4lane 1.5Gbps MIPI信号发送,最高可驱动1920x1080 60fps显示。然后查找资料发现GM8775C是可以满足笔者将MIPI转成双路LVDS驱动1280x1024液晶屏的需求。 GM8775C介绍 1、产品概述 GM8775C 型 DSI 转双通道 LVDS 发送器产品主要实现将 MIPI DSI 转单/双通道 LVDS功能, MIPI 支持 1/2/3/4 通道可选,最大支持 4Gbps 速率。 LVDS 时钟频率最高 154MHz,最大支持视频格式为 FULL HD(1920 x 1200)。 该芯片主要应用于手持设备、双屏显示,大屏幕显示等应用需求。 2、产品特征 a) I/0 电源电压: 1.8V /3.3V; b) core 电源电压: 1.8V; c) 支持 MIPI® D-PHY 1.00.00 和 MIPI® DSI 1.02.00。 d) MIPI 支持 1/2/3/4 通道可选的传输方式, 最高速率 1Gbps/通道。 e) MIPI 接收 18bpp RGB666 、 24bpp RGB888 、 16bpp RGB565 的打包格式。 f) MIPI 支持 LPDT 传输(Low-Power Data Transmission)和反向 LPDT 传输。 g) LVDS 的时钟范围为 25MHz 到 154MHz。 h) LVDS 输出支持单/双通道模式。选择双通道模式时,可配置输出为 18/24bit,JEIDA/VESA 模式;选择单通道时,每通道可同时输出,且可单独配置输出模式(18/24bit, JEIDA/VESA 模式)。 i) LVDS 的输出数据通道可灵活调整顺序以方便 PCB 布线。 j) 可选择采用 MIPI 时钟或外部参考时钟做 LVDS 输出的参考频率,且支持自动校准功能。 k) 支持 MIPI command mode 配置和外部 I2C 配置两种芯片配置方式; l) GPO 可以输出 PWM 信号,控制屏幕背光。 m) 封装: QFN48-pins with e-pad. n) 工作温度: -40℃~85℃; o) ESD 能力:≥2KV。 3、产品功能框图 GM8775C调试 1、调换LVDS lane、P/N GM8775C芯片支持LVDS lane交换,以及同一组lane内的P/N交换,方便PCB走线。下图是GM8775C提供的参考PCB,可以看到LVDS输出端是不需要打过孔或者多绕线的,还是很方便的。 如果有调整lane或者P/N,到后面使用上位机产生配置寄存器时需要需改对应的选项。笔者自己的板子只交换了LVDS的lane,没有交换P/N,所以到后面用上位机测试GM8775后端驱动LVDS液晶屏时需要调整如下 该上位机是用于产生GM8775C配置寄存器,并可以通过usb转IIC接口配置测试GM8775C功能。 2、使用外部26Mhz晶振,IIC命令进行BIST TEST 一开始笔者为了排除其他因素的干扰就先使用外部的26Mhz晶振作为GM8775C的时钟源,用usb转iic工具对其进行BIST TEST。GM8775C的I2C_TYPE引脚需拉低作为Slave,I2C_ADDR选择高拉,器件地址为0x5A;选择拉低,器件地址为0x58。 配置好对应的参数后,点击产生寄存器参数,选择对应的器件地址写入数据。测试后若无问题,则屏幕可以被正常点亮显示。如果点不亮,则读回数据进行比较看数据是否被正确写入。如果读写数据一致,则检查配置是否正确、晶振是否起振、芯片是否焊接好等问题。 3、使用外部26Mhz晶振,MIPI命令进行BIST TEST 以上测试没有问题后,已经可以证实后端输出lvds信号正确,后端电路没有问题了。接着复位GM8775C,将生成的寄存器组数据拷贝到mpu上,让mpu产生MIPI信号,将配置寄存器数据通过MIPI从lane0发送到GM8775C,看是否能正常被电亮。如果能点亮,证明mipi信号的clock,lane0线序没有问题,在低速下通讯是正常的;若不能点亮,则查找焊接或者MIPI线序有问题。 4、使用MIPI时钟信号,MIPI命令进行BIST TEST 测试没有问题后,可以使用MIPI来给GM8775C提供时钟源,这样既可以省去一个26Mhz晶振,同时可以测试MIPI在高速情况下工作是否正常。如果不能正常显示的话,则需要检查下mipi的布线是否符合规范。 5、使用MIPI时钟信号,MIPI命令进行应用测试 如果都没问题后,则可以测试所有的MIPI线的信号了,配置好MIPI Clock频率,选择MIPI Clock作为时钟源,MIPI 命令作为配制命令,关闭BIST TEST,生成寄存器配置数据,写入到MPU,开启应用测试。 如果没有问题则液晶屏将显示应用程序的内容;如果显示异常,则有可能MIPI布线有问题或者焊接接触不良。 总结 虽然一系列测试过程看着有些繁琐,但是有助于我们减少干扰因素,出站问题的话,可以快速定位原因,解决问题,达到我们想要的结果。 注意事项 1、调整LVDS link奇偶场 GM8775C驱动显示屏发现整体图片显示是OK的,但在边缘发现一些奇怪锯齿化像素点,这个是因为GM8775C LVDS LINK0 / LINK1的EVEN / ODD配置错了,只要重新配置好LINK EVEN / ODD后重新拷贝生成应用程序,编译运行就OK了。 2、MIPI布线 MIPI是高速差分信号接口,对布线要求比较严格,为了保证信号的同步和一致性,必须保证MIPI 同组信号P/N线等长。在LCD MIPI的信号线,组与组之间长度相差不超过200mil,每组的P/N信号线相差不超过60mil。长度尽量越短越好。 同时还要尽可能少的打孔换层、尽量远离干扰、走线时应保证连续的参考层,且最好时地层,差分阻抗要求在100ohm。其他更多的要求可以参考网络上其他文章。 一开始,笔者为了MPU能兼顾驱动LVDS和TTL RGB屏,同时保留了MIPI转LVDS功能和TTL RGB接口,导致走线不是很好走,MIPI布得不是很好,后面一直驱动不了液晶屏,所以在布MIPI信号线时尽量精简,满足以上以上布线要求,减少不必要的麻烦。 3、GM8775C焊接 在焊接过程中一定要焊好GM8775C和MPU,特别时MIPI引脚位置,测试应用程序驱动屏时需要MIPI信号都全部正常传输到GM8775C上才能看到正常的图像。笔者在GM8775C上位机单独测试后端LVDS信号时都测试好好的,但是用MIPI转接过来的信号驱动就是不行,看布线也布的很好。后面用手按压GM8775C居然点亮了,这就是明显的焊接接触不良,之前让笔者一度以为是软件设计有问题或者MIPI布线不行呢!真的是搞死了!如需详细资料或购买可联系占生 原装正品 。现货优势 4、win10系统使用usb转i2c不能下载偶数行配置 在用上位机生成寄存器配置后,笔者在win10系统上使用usb转i2c工具下载配置发现写入再读出偶数行的配置跟写入的不一样,用逻辑分析仪抓i2c数据发现并没有写入偶数行的寄存器配置项,两台win10系统都是如此,但是在win7系统上却是正常的,这个不知道是usb驱动问题还是上位机问题。 |
|
相关推荐
1 个讨论
|
|
有大量库存,可以任性出货
|
|
|
|
|
|
PD诱骗取电芯片_PD_Sink端芯片之XSP05实战应用电路
1949 浏览 1 评论
BLDC、PMSM电机智能栅极驱动芯片之TMC6140知识分享
744 浏览 0 评论
国产电源芯片DP4054 软硬件兼容TP4054 规格书资料
1251 浏览 0 评论
2865 浏览 3 评论
1323 浏览 1 评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-4 22:15 , Processed in 0.520866 second(s), Total 41, Slave 32 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号