屏参使用指南¶
REVISION HISTORY¶
| Revision No. | Description |
Date |
|---|---|---|
| 1.0 | 02/22/2024 |
1. 基本介绍¶
1.1 概述¶
屏参顾名思义是屏幕使用的参数配置。本文档主要讲解点屏相关配置,屏参的含义和如何设置正确的屏参。
1.2. 关键字说明¶
-
TTL/BT656
TTL: Transistor-Transistor Logic,接口信号为数字信号,传输并行RGB数据。
BT656: 接口信号为数字信号,传输YUV数据。
2. 屏参配置文件介绍¶
2.1 屏参配置文件路径¶
project\board\$(chip)\$(boardname)\config\config_disp.json
2.2 屏参配置文件组成¶
系统启动过程中会去解析屏参配置文件,然后将不同屏参保存到系统中,给显示模块使用。显示模块会根据用户调用API的参数设定向系统获取所需屏参。 获取屏参流程请参考:MI_DISP_API
屏参配置文件组成如下图所示,mi_disp是根节点,包含三个子节点:content,屏参,PQ。
content节点是屏参名称列表的集合,包含了两个子节点:m_pnlList、m_btList。
-
m_pnlList

m_pnlList罗列了每种接口类型的屏参名称,用户自定义屏参可放于此处,但是一种接口类型只能对应一份屏参,若存在相同类型,只会选取排在最前面的屏参。
-
m_btList

m_btList罗列BT656多种分辨率屏参名称。
屏参由section、variable name组成:

section指的是图中屏参名称,EX:"SAT070AT50H18BH"。
variable name指的是":"左边的字段,右边是给variable name赋的值。
section是唯一的,不允许有同名,但是variable name允许。如上图,section SAT070AT50H18BH只能有一个,但是m_pPanelName可以在不同的section中。系统根据不同的section区分variable name,然后添加不同的屏参。
3. 新增屏参¶
1、新增的屏参定义的section name不允许和已有的section name重名
2、新增的屏参可以放在在m_pnlList的前面(同类panel只有第一个panel是有效的)。如果m_pnlList存在与新增屏参相同接口类型的屏参,可以将原有相同接口类型的屏参删除,也可以将新增的屏参加在原有接口屏参前面。
3、在屏参节点中添加新屏参,如下所示:
"SAT070AT50H18BH": {
"m_wPanelDispPath": 0,
"m_pPanelName": "SAT070AT50H18BH",
"m_ePanelTiming": 52,
"m_ePanelIntfType": 9,
"m_wPanelHSyncWidth": 48,
"m_wPanelHSyncBackPorch": 46,
"m_wPanelVSyncWidth": 4,
"m_wPanelVBackPorch": 23,
"m_wPanelHStart": 98,
"m_wPanelVStart": 27,
"m_wPanelWidth": 1024,
"m_wPanelHeight": 600,
"m_wPanelHTotal": 1344,
"m_wPanelVTotal": 635,
"m_wPanelDCLK": 51000000,
"m_bPanelInvDCLK": 0,
"m_bPanelInvDE": 0,
"m_bPanelInvHSync": 0,
"m_bPanelInvVSync": 0,
"m_wSpreadSpectrumFreq": 0,
"m_wSpreadSpectrumRatio": 0,
"m_ucPanelSwapChnR": 3,
"m_ucPanelSwapChnG": 2,
"m_ucPanelSwapChnB": 1,
"m_ucPanelSwapRgbML": 0
},
4. 屏参参数说明¶
4.1 公共参数¶
| 参数 | 描述 |
|---|---|
| m_pPanelName | panel name |
| m_ePanelTiming | 输出分辨率,52表示用户自定义 |
| m_ePanelIntfType | 接口类型 BT656:3 TTL:9 |
| m_wPanelHSyncWidth | 行同步信号脉宽 |
| m_wPanelHSyncBackPorch | 行同步信号后肩 |
| m_wPanelVSyncWidth | 场同步信号脉宽 |
| m_wPanelVBackPorch | 场同步信号后肩 |
| m_wPanelHStart | m_wPanelHSyncWidth+m_wPanelHSyncBackPorch |
| m_wPanelVStart | m_wPanelVSyncWidth+m_wPanelVBackPorch |
| m_wPanelWidth | 行有效像素点数 |
| m_wPanelHeight | 场有效行数 |
| m_wPanelHTotal | m_wPanelWidth+m_wPanelHSyncWidth+m_wPanelHSyncBackPorch+HsyncFrontPorch |
| m_wPanelVTotal | m_wPanelHeight+m_wPanelVSyncWidth+m_wPanelVBackPorch+VsyncFrontPorch |
| m_wPanelDCLK | pixel clk: m_wPanelHTotal * m_wPanelVTotal * fps |
| m_bPanelInvDCLK | pixel clk极性反转 |
| m_bPanelInvHSync | Hsync极性反转 |
| m_bPanelInvVSync | Vsync极性反转 |
| m_wSpreadSpectrumFreq | 时钟延展幅度调制(详见spreadSpectrumFreqCalculation) |
| m_wSpreadSpectrumRatio | 时钟延展频率调制(详见spreadSpectrumFreqCalculation) |
| m_ucPanelSwapChnR | Swap channel R default = 0(保持物理线路原始连接,即R通道使用硬件设计中默认对应的信号源) 1:select R(强制覆盖通道信号源,将R通道数据替换为主控输出的R通道信号) 2:select G 3:select B |
| m_ucPanelSwapChnG | Swap channel G default = 0 1:select R 2:select G 3:select B |
| m_ucPanelSwapChnB | Swap channel B default = 0 1:select R 2:select G 3:select B |
| m_ucPanelSwapRgbML | Swap RGB MSB/LSB(控制RGB数据的高低位(MSB/LSB)顺序交换) 0:disable M/L swap 1:enable M/L swap MSB:数据的最高位有效 LSB:数据的最低位有效 |
| m_ePanelRgbDataType | RGB data type or LCD data bus 0:E_MI_DISP_MHALPNL_RGB_DTYPE_RGB888, 1:E_MI_DISP_MHALPNL_RGB_DTYPE_RGB666, 2:E_MI_DISP_MHALPNL_RGB_DTYPE_RGB565, 3:E_MI_DISP_MHALPNL_RGB_DTYPE_RGB444, 4:E_MI_DISP_MHALPNL_RGB_DTYPE_RGB333, 5:E_MI_DISP_MHALPNL_RGB_DTYPE_RGB332, 6:E_MI_DISP_MHALPNL_RGB_DTYPE_BGR888, 7:E_MI_DISP_MHALPNL_RGB_DTYPE_BGR666, 8:E_MI_DISP_MHALPNL_RGB_DTYPE_BGR565, 9:E_MI_DISP_MHALPNL_RGB_DTYPE_BGR444, 10:E_MI_DISP_MHALPNL_RGB_DTYPE_BGR333, 11:E_MI_DISP_MHALPNL_RGB_DTYPE_BGR332, 12:E_MI_DISP_MHALPNL_RGB_DTYPE_YUV422_UY0VY1, 13:E_MI_DISP_MHALPNL_RGB_DTYPE_YUV422_VY0UY1, 14:E_MI_DISP_MHALPNL_RGB_DTYPE_YUV422_UY1VY0, 15:E_MI_DISP_MHALPNL_RGB_DTYPE_YUV422_VY1UY0, 16:E_MI_DISP_MHALPNL_RGB_DTYPE_YUV422_Y0UY1V, 17:E_MI_DISP_MHALPNL_RGB_DTYPE_YUV422_Y0VY1U, 18:E_MI_DISP_MHALPNL_RGB_DTYPE_YUV422_Y1UY0V, 19:E_MI_DISP_MHALPNL_RGB_DTYPE_YUV422_Y1VY0U |
| m_ePanelRgbDeltaOddMode | delta mode 奇场数据排列 0: RGB 1: RBG 2: GRB 3: GBR 4: BRG 5: BGR |
| m_ePanelRgbDeltaEvenMode | delta mode 偶场数据排列 0: RGB 1: RBG 2: GRB 3: GBR 4: BRG 5: BGR |
| m_ePanelRgbDataSwap | RGB data swap ,对所有的数据做swap 0: disable 1: enable |
| m_wPadDrvngLvl | pin脚驱动能力调整,对接口所有的pin脚设置驱动能力档位,共有4个档位 0: 4mA 1: 8mA 2: 12mA 3: 16mA |
注:m_ePanelRgbDataType的12~13是BT接口可选。m_ucPanelSwapRgbML是交换RGB数据传输的高低位,m_ePanelRgbDataSwap是对RGB所有数据进行交换。
m_bPanelInvDCLK,m_bPanelInvHSync,m_bPanelInvVSync正常timing示意图:
m_bPanelInvDCLK,m_bPanelInvHSync,m_bPanelInvVSync开启极性反转timing示意图:
5. 配置正确的屏参¶
配置正确的屏参除了可以参考上述列表中的附件表格,还需要根据屏幕规格书或者协议规范调整对应的参数。
5.1 屏幕规格书¶
大部分屏芯片的规格书可以找到Timing相关部分,如下图所示。如果找不到,可以找厂家询问。


| 参数 | 描述 |
|---|---|
| m_wPanelVSyncWidth | Horizontal Sync. Width |
| m_wPanelHSyncBackPorch | Horizontal Sync. Back Porch |
| m_wPanelVSyncWidth | Vertical Sync. Width |
| m_wPanelVBackPorch | Vertical Sync. Back Porch |
| m_wPanelHStart | m_wPanelHSyncWidth+m_wPanelHSyncBackPorch |
| m_wPanelVStart | m_wPanelVSyncWidth+m_wPanelVBackPorch |
| m_wPanelWidth | 240(H) |
| m_wPanelHeight | 320(V) |
| m_wPanelHTotal | m_wPanelHStart+m_wPanelWidth + hfp |
| m_wPanelVTotal | m_wPanelVStart+m_wPanelHeight + vfp |