使用MStar的TSUM系列的芯片,主要是用来驱动LVDS的屏

使用MStar的TSUM系列的芯片,主要是用来驱动LVDS的屏。
在硬件设置无误的情况下(屏开关口、屏电压、PWM等),按照屏规格书上的参数配置屏参,就可以完成点屏了.大概分为几个步骤,确定屏供电电压,Panel时序设置,H/VTotal设置,Clock设置,H/VSync设置,Bit设置,刷新率设置。

1.确定屏的供电电压
在点屏之前最重要的一步,就是确定屏电压是多少伏,即我们要点的屏是多少伏的,是否和硬件主板上匹配,如果硬件12V,屏5V,就会烧屏。一般屏规格书上可以查到。
注意:屏供电电压,和屏背光电压是两个不同模块。
在这里插入图片描述

2.Panel时序设置
PANEL开机步骤:先开启PANEL供电,后传送PANEL DATA,最后点亮灯管;关机时序则相反。其DELAY时间由MCU软体设定,若时间设定不好则出现瞬间白画面或画面。
以显示LOGO为例,先开屏,delay,送LOGO,此时用户看到的是黑的,因为没开背光,然后等LOGO稳定后,开背光,就可看到LOGO了。
屏上电掉电时序图如下(来自屏规格书):
在这里插入图片描述
软件设置如下:

#define PanelOnTiming1      50// time between panel & data while turn on power
#define PanelOnTiming2      550 // time between data & back light while turn on power
#define PanelOffTiming1     150// time between back light & data while turn off power
#define PanelOffTiming2    30// time between data & panel while turn off power

   
   
  • 1
  • 2
  • 3
  • 4

如果开机时,出现闪白线,可以考虑在屏规格时序内,增大PanelOnTiming2时间;另外,如果是用恒流板供电的话,也出现开机闪白线,也可以考虑增大PanelOnTiming2 时间就可以解决.
补充一下开屏流程:
在这里插入图片描述

3.H/V Total的设置
注意,根据屏是单通道还是双通道,HTotal和Clock要相应的乘以2,双通道:HTotal和Clock乘以2,单通道,不乘以2.
(1).如何区分单通道和双通道,一般屏规格书上有写
在这里插入图片描述
在这里插入图片描述
软件设置:根据是双通道还是单通道,屏参里有一个define要设置成0或者0xFF

#define PanelDualPort       0xFF // 双通道为0xFF,单通道为0

   
   
  • 1

(2).H/VTotal参数设置
以双通道的FHD(1920*1080)分辨率的屏为例,屏规格书如下:
在这里插入图片描述
软件设置:

 #define PanelWidth    		1920
 #define PanelHeight   		1080

#define PanelHTotal 2100
#define PanelVTotal 1130

#define PanelMaxHTotal 2200
#define PanelMinHTotal 2088 // miniHTotal要先乘以2,再+20,为什么加20,后面讲

#define PanelMaxVTotal 1818
#define PanelMinVTotal 1092

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11

**关于miniHTotal为什么加20的解释:
PanelMinHTotal的设定要求Panel最小的Htotal加上20。屏有很多分辨率,尽量满足Panel的不同的特性,把MinHTotal按照PanelMinHTotal来设定。会把Panel能承受的最小的范围当作中间点来设定,在设置的值恰好到最小承受范围的情况下,如果有一点偏差,Panel就会出现异常,所以要加20。

注意:PanelHSyncWidth+PanelHSyncBackPorch+PanelWidth<PanelMinHTotal
改miniHtotal会增大Clock

(3).Clock设置
单通道Clock不乘以2,双通道要乘以2,这里以双通道为例,屏规格书如下
在这里插入图片描述
软件设置:

 #define PanelDCLK       		142
 #define PanelMaxDCLK     	    188
 #define PanelMinDCLK     		113

 
 
  • 1
  • 2
  • 3

DClock=HTotal×VTotal×VFreq×Q,Q为放大系数

4.H/VSync的设置
其中,H/VSync的意思做下解释
(1).前肩(Front Porch)/后肩 (Back Porch) :行同步或场同步信号发出后,视频数据不能立即使能,要留出电子枪回扫的时间。以行扫描为例,从HSYNC结束到DE开始的区间成为行扫描的后肩(绿色区域),从DE结束到HSYNC开始称为前肩(紫色区域)。同样对于场扫面也可以由类似的定义。
(2).行同步(HSYNC):行同步就是让电子枪控制器知道下面要开始新的一行像素
(3).场同步(VSYNC: 场同步就是告诉电子枪控制器下面要开始新的画面
其中,H/VSync 这些参数一般不改,但是只要满足PanelHSyncWidth+PanelHSyncBackPorch+PanelWidth<PanelMinHTotal就可以。其中,Blanking=FrontPorch + Sync + BackPorch
VESA表中,H/VSync如下,H/V上一帧画面:
在这里插入图片描述
软件设置

#define PanelHSyncWidth     35
#define PanelHSyncBackPorch 40

#define PanelVSyncWidth 6
#define PanelVSyncBackPorch 20

#define PanelHStart (PanelHSyncWidth+PanelHSyncBackPorch)
#define PanelVStart (PanelVSyncWidth+PanelVSyncBackPorch)

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8

5.Bit设置,屏是8Bit还是6Bit
般屏都是6BIT(屏规格书最上面的介绍会有)。如果是8bit可以显示0~255灰阶,如果是6bit只有0~63),但是我们的PanelDither 写成8,因为有FRC抖色可以实现假8bit,硬件上省成本。
在这里插入图片描述
软件设置:

#define PanelDither     8

 
 
  • 1

关于8Bit的解释:bit代表的还是计算机二进制中的基本单位,而二进制信息是由0和1组成的,而我们假设小谨做的显示器是2bit面板时,表示显示器的像素点只能识别1位信息。那么这个像素点可以展现的信是“00”“01”“10”和“11”四种,那么这个像素点可以显示4(2^2)种颜色。同理,显示器如果是8Bit,那么总共可以显示2的8次方=256种颜色。但是每个像素点都是RGB色组成的,于是8bit最终将能展现256×256×256=16777216种颜色。
FRC抖色简单理解:有时候为了提高性价比,屏只有6bit+FRC,然后利用scaler实现8bit的效果。这样与8bit屏的效果有一定的差距,但是性价比高。比如我们要显示255灰阶(白场)时,但是我们6Bit,达不到,所以做法是,在最白和最黑之间抖动,类似PWM波形,但是白的波形宽度长一些,所以在视觉看来是全白的。

6.屏的刷新率设置
屏的刷新率是指,一秒钟刷新多少次,比如60Hz刷新率就是一秒钟刷新60次
从屏规格书上可以看到屏和最大,最小及合适的刷新率
在这里插入图片描述
软件设置

#define PanelMaxVfreq   (750+15) // 75Hz
#define PanelMinVfreq   (500-15) // 50Hz

 
 
  • 1
  • 2

至于刷新率为什么是看VFreq可以看上一篇转载的博客:LCD显示的一些基本概念以及DSI的一些clock解释
这篇博客介绍比较详细。附上链接:https://blog.csdn.net/cswuhsdaz/article/details/95231752

因为我们的屏是“之”字形扫描,从上到下,并且是逐行扫描方式,也就是常说的p信号,所以刷新率就是1秒钟扫描次数,即VFreq。

7.屏参参数解释(也是自己琢磨的,可能不太准确,有好的理解的可以留言补充,共同学习)
LVDS_TIMode:具体含义不太懂,解决问题看上面,画面花屏,可以试下这个
PanelDualPort:屏的通道 0:单通道, 0xff:双通道
PanelSwapPort:交换位选择,数据口,有时候硬件layout板子时候,可能屏端接口和板子端接口是反的,也会出现屏点不亮,可以反一下PanelSwapPort,
PanelHTotal:单位时间行扫描的次数,参考屏规格书来。此值非常关键,常影响屏的显示效果,如上下缺线、白屏、闪动、VGA 某些模式拉丝、OSD 底部显示缺边等都可以调它
PanelVTotal:单位时间列扫描的次数
PanelHSyncWidth和PanelVSyncWidth:同步信号的行宽、列高。有时候图象只显示了一半,就可以调这两个,V方向和 H 方向

  • 5
    点赞
  • 25
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值