1.简介
系列文章TFT彩条测试介绍到,屏幕是由厂家提供的TFT显示模组和屏幕PCB背板组成。PCB的作用是提供LCD背光所需的电压、用于屏幕显示的电压、与其他设备相连的排针或者其他连接器形式。当模组支持触摸功能时还可以接上触摸转换或触摸控制芯片,通过SPI或IIC等方式向控制端提供触摸信息。液晶屏提供的常见的视频接入口有RGB、LVDS、VGA、HDMI、MIP-DSI接口。本文点亮一块LVDS接口的液晶屏介绍LVDS接口时序。
拿到一块屏幕,在编程之前,应该搞清pin定义,屏幕时序参数,和接口时序三部分内容,在屏幕手册中均可找到。手头的这块板子pin定义如下。搞清每一个管脚的作用,并且根据硬件连接在FPGA工程中为每一个管脚添加约束。该屏幕支持触摸功能(即PCB背板上有触摸控制芯片且屏幕模组支持触摸功能。),但本次开发并未涉及,所以无需关注。
该屏幕的时序参数如下,这与其他接口的显示参数是一致的,只是没有前沿和后沿的概念,这是因为LVDS接口时序中只有de信号,而没有行场同步信号。而这个de信号是 RGB 时序中才有,对于 VGA 时序是不需要的。
该屏幕支持RGB888格式的图片,在此模式下,其操作时序如下所示,图中PINC即为屏幕时序参数中的时钟频率转换成差分信号所得,可以看到该时钟占空比为4:3,参数中为51.2MHz,实操中给50MHz即可。图中的”-”在编程时给0即可。
2.RGB、LVDS、VGA、HDMI、MIPI DSI接口的区别
RGB TTL接口信号类型是TTL电平,信号的内容是RGB666或者RGB888还有行场同步和时钟,以及DE信号;LVDS接口信号类型是LVDS信号(低电压差分对),信号的内容是RGB数据和DE信号和时钟,本质是RGB的信号转换成差分串行的数据,不同的屏幕位组合通道组合的方式有所不同;VGA接口与RGB接口信号基本一致,是传统的接口,现在也已基本淘汰。HDMI接口是速度比较快的接口,活跃于生活的各个角落,接口类型丰富,常用的HDMI1.4、2.0和2.1,分别支持最高2k60hz、4K60hz和4K120hz(8K60hz),采用TMDS电平标准,本质是RGB接口经过TMDS编码,该过程可以用编码芯片实现,也可通过支持TMDS标准的FPGA实现。另外,HDMI还可作为输入接口应用。MIPI-DSI接口信号类型是LVDS信号,信号的内容是视频流数据和控制指令,是消费类电子中常见的接口,例如手机玩具等。此外MIPI还有用于视频采集的CSI接口,常见于各类CMOS图像传感器中。
3.源代码与实现
工程链接顶层模块Top例化了三个模块,其中clk ip生成各模块所用的时钟,lvds_driver模块完成RGB数据到LVDS数据的转换(满足该屏幕的操作时序),并且对外留下数据同步信号lcd_de和RGB数据进入信号,即在lcd_de有效的时候按照像素顺序输入RGB数据即可。Rgb888_data模块是自定义的图片数据源。每秒切换一张图,一共8张不同颜色的图,在实际应用中数据替换即可。
LVDS发送端在LVDS收发实例中介绍了使用serdes原语串并转换的方式,此处使用另外一种方式完成串并转换,在此过程中将数据也重组成符合该屏幕操作时序的序列。
另外上电之后lcd_de信号的生成应该等其他位置就绪之后在进行,这里将原复位信号延时后作为模块的复位信号做到了二者之间先后启动。
4.效果