您现在的位置是:首页 > 智能机电

LVDS串行器与解串器常用寄存器使用说明

智慧创新站 2024-11-19【智能机电】245人已围观

简介以之前开发过的一个具体项目为例,该项目主机端使用TI的串行器SerializerDS90UB947,显示端使用TI的解串器DeserializerDS90UB948,主机端与显示端的通讯交互使用LVDS的透传功能IIC协议传输,如图1所示。图1主机端、显示端连接框图一、初始化寄存器配置一般来说,配对...

以之前开发过的一个具体项目为例,该项目主机端使用TI的串行器SerializerDS90UB947,显示端使用TI的解串器DeserializerDS90UB948,主机端与显示端的通讯交互使用LVDS的透传功能IIC协议传输,如图1所示。


图1主机端、显示端连接框图

一、初始化寄存器配置

一般来说,配对的Serializer和Deserializer使用默认的寄存器配置即可正常工作。但由于项目之间的差异,可能有些寄存器需要进行一些初始化操作以满足特定的需求或功能。比如文中提到的项目,主机端和显示端产品各进行了一些寄存器初始化配置:

1.主机端串行器Ser947初始化如下图2所示。

图2

1)Pass-throughenabled,即打开LVDS的透传功能,主机端可以通过IIC访问显示端的IIC器件。Ser947、LVDS线束起到“桥梁转发”的作用,相当于主机端的MCU通过IIC直接访问显示端的IIC器件。也就是说,主机端的MCU要想通过IIC访问显示端的IIC器件(Deserializer或与Deserializer物理相连接的IIC器件,比如该项目中显示端的Des948和MCU),必须首先打开LVDS透传功能,而后才可以使用。同样的道理,如果显示端想直接通过LVDS线束访问主机端的IIC器件(Serializer或与Serializer物理相连接的IIC器件),也必须先打开串行器Deserializer对应的Pass-through寄存器才可使用。

2)SlaveID、SlaveAlias的意思就是从IIC器件的设备地址,主机端和显示端通过IIC进行数据交互,项目中主机端MCU为主IIC设备,显示端MCU为从IIC设备(显示端MCU初始化Des948时为IIC主设备,Des948为IIC从设备。初始化完成后,将显示端MCU切换为IIC从设备,此时Des948充当代理IIC主设备(proxyIICmaster),即扮演主机端MCU的IIC主设备的角色)。由于显示端只使用了MCU一个从IIC设备(deserializer除外)与主机端MCU通信,所以SlaveID、SlaveAlias的值设置相同。如果有两个以上的IIC从设备,可以将SlaveAlias设置成不一样的值以进行区别,至于具体的值可以在项目中根据情况设定。

3)还有其他的一些重要寄存器,如下图3,可能需要考虑,具体使用与否和配置取决于具体的项目。

图3

2.显示端解串器Des948初始化如下图4所示。

图4

1)SCLhightime和SCLlowtime决定显示端IIC的传输速率,具体计算参考芯片手册。

/(SCL_H+SCL_L)=20MHz/(0x19+0x19)=400KHz

2)其他一些重要的寄存器可能也需要在具体的项目中考虑,如下图5所示。

图5

二、内部图案生成功能(InternalPatternGeneration)

LVDS串行器和解串器支持图案自动生成功能(TI的串行器和解串器均支持,Maxim仅串行器支持),仍以文中提到的该项目为例。可以根据芯片手册手动配置对应的PatgenRegister实现或者使用TI的串行器或解串器EVM开发板实现。如下图6是显示端液晶屏LCD的一些分辨率(1920x384)相关的参数,使用TI串行器Ser947EVM开发板对应的上位机配置ColorBar功能的GUI界面如图7所示,其对应的显示端LCD实际显示效果如图8所示。由GUI界面可以查看或导出具体的Ser947寄存器数值供后续使用(固化到代码中或开发自定义的上位机软件),非常的方便快捷。

解串器Des948的该功能实现与上述Ser947十分类似,不再赘述。实际项目中分别使用它们的Pattern功能来调试LVDS链路两端是否连通或查找排除故障十分的方便。

图6

图7

图8

图8

三、白平衡功能(WhiteBalance)

使用不同厂商的LCD显示屏时,显示端解串器Des948的白平衡功能可以实现相类似的显示外观。它能够补偿显示的原始色温,并将R、G、B的相对强度调整到指定的色温,以还原和保持物体本身真实的色彩。

解串器Des用来定义白平衡功能的3个查找表(LUT:LookUpTable,即红色、绿色和蓝色的8位颜色值)的内容。LUT将输入的RGB值映射到新的输出RGB值,一共有3个LUT,每种颜色一个LUT,每个LUT包含256项数据,每项8位,总大小为6144(3x256x8)位。每一项数据都是可读可写的,校准后的值通过IIC接口写到解串器Des948(从设备)的对应寄存器中,具体操作流程如下图9所示。

图9

很赞哦!(155)