屏参使用指南¶
REVISION HISTORY¶
| Revision No. | Description |
Date |
|---|---|---|
| 1.0 | 02/22/2024 | |
| 1.1 | 05/12/2025 | |
| 1.2 | 11/06/2025 | |
| 1.3 | 04/30/2026 | |
| 1.4 | 07/22/2026 |
1. 基本介绍¶
1.1 概述¶
屏参顾名思义是屏幕使用的参数配置。本文档主要讲解点屏相关配置,屏参的含义和如何设置正确的屏参。
1.2. 关键字说明¶
-
TTL/BT656/SRGB/MIPI-DSI
TTL: Transistor-Transistor Logic,接口信号为数字信号,传输并行RGB数据。
BT656: 接口信号为数字信号,传输YUV数据。
SRGB: Series RGB,接口信号为数字信号,传输串行RGB数据。
MIPI-DSI: Mobile Industry Processor Interface-Display Serial Interface,接口信号以差分信号传输,传输RGB数据,有高速HS和低速LP模式。
2. 屏参配置文件介绍¶
2.1 屏参配置文件路径¶
project\board\$(chip)\screen_param\config_disp.json
project\board\$(chip)\$(boardname)\config\config_board.json
2.2 屏参配置文件组成¶
编译image时,会将config_disp.json、config_board.json、config_fb.json整合成一个文件config.json,拷贝到对应的分区中。
系统启动过程中会去解析屏参配置文件,然后将不同屏参保存到系统中,给显示模块使用。显示模块会根据用户调用API的参数设定向系统获取所需屏参。
2.2.1 config_disp.json¶
config_disp.json描述支持的屏参信息,组成如下图所示。mi_disp是根节点,包含两个子节点content和屏参。
content节点是屏参名称列表的集合,包含了四个子节点:m_pnlList、m_btList、m_mipidsiList、m_hdmiList。
-
m_pnlList
"m_pnlList": [ "SAT070AT50H18BH", "RM68200_LX50HDH40145", ...... "DUAL_LVDS_SG2151B04" ]m_pnlList罗列多种用户自定义屏参名称,即m_ePanelTiming=E_MI_DISP_OUTPUT_USER(52)。
-
m_btList
"m_btList": [ "BT656OUT_576P_50", "BT656OUT_480P_60", "BT656OUT_1080P_25", "BT656OUT_1080P_30", "BT656OUT_720P_25", "BT656OUT_720P_30", "BT656OUT_720P_50", "BT656OUT_720P_60", "BT601OUT_576P_50", "BT601OUT_480P_60", "BT601OUT_1080P_25", "BT601OUT_1080P_30", "BT601OUT_720P_25", "BT601OUT_720P_30", "BT601OUT_720P_50", "BT601OUT_720P_60", "BT1120OUT_576P_50", "BT1120OUT_480P_60", "BT1120OUT_1080P_25", "BT1120OUT_1080P_30", "BT1120OUT_1080P_50", "BT1120OUT_1080P_60", "BT1120OUT_720P_25", "BT1120OUT_720P_30", "BT1120OUT_720P_50", "BT1120OUT_720P_60" ]m_btList罗列BT601/BT656/BT1120多种标准分辨率屏参的名称。
-
m_mipidsiList
"m_mipidsiList": [ "MIPIDSI_480P_60", "MIPIDSI_576P_50", "MIPIDSI_720P_30", "MIPIDSI_720P_50", "MIPIDSI_720P_60", "MIPIDSI_1080P_25", "MIPIDSI_1080P_30", "MIPIDSI_1080P_50", "MIPIDSI_1080P_60", "MIPIDSI_4KP_30" ]m_mipidsiList罗列mipidsi多种标准分辨率屏参的名称。
-
m_hdmiList
"m_hdmiList": [ "DACOUT_800x600P_60", "DACOUT_720P_24", "DACOUT_720P_25", "DACOUT_720P_2997", "DACOUT_720P_30", "DACOUT_720P_50", "DACOUT_720P_5994", "DACOUT_720P_60", ...... "DACOUT_4KP_30" ]m_hdmiList罗列hdmi和vga多种标准分辨率屏参的名称。
-
Screen Parameter
屏参由section和variable name组成:
"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_ucPanelSwapChnR": 3, "m_ucPanelSwapChnG": 2, "m_ucPanelSwapChnB": 1, "m_ucPanelSwapRgbML": 0 },section指的是图中屏参名称,EX:"SAT070AT50H18BH"。
variable name指的是":"左边的字段,右边是给variable name赋的值。
section是唯一的,不允许有同名。section与m_pPanelName需保持一致,屏参才能正确获取。
2.2.2 config_board.json¶
config_board.json描述与board相关的硬件信息和默认配置信息,组成如下图所示。board是根节点,包含bootlogo、dev_property、pq、power_sequence四个子节点。
bootlogo节点描述请参考:bootlogo
-
dev_property
参数 描述 device_type 屏幕类型,该参数是bootlogo使用
TTL/BT656/SRGB/MCU/MCU_NOFLM/MIPIDSIpanel_name 屏参名称 dev_id device id rotate 旋转参数,该参数是bootlogo使用
0:0°
90:90°
180:180°
270:270°color_metrix_id csc 矩阵 id gop_dst_id 该参数暂未启用 该节点描述mi_disp和bootlogo共用的默认配置信息。通过panel_name获取默认配置屏参。
-
pq
参数 描述 pq_enable pq功能是否启用 pq_file_path PQ.bin的文件路径 -
power_sequence
参数 描述 ps_enable power sequence功能是否启用 panel_name 需要替换的屏参名称 m_pAfterLP11 需要替换的m_pAfterLP11内容 m_pAfterInit 需要替换的m_pAfterInit内容 m_pAfterDeinitCmd 需要替换的m_pAfterDeinitCmd内容 针对mipidsi屏幕的特殊上下电时序需求,设计特殊的屏参用于客户自定义配置,具体参考本文MIPIDSI接口特有参数章节。
由于不同的封装可能有不同的硬件设计,上下电配置内容也需要跟随变化。此时可配置config_board.json中的power_sequence节点,开启ps_enable。image打包生成config.json的过程中,会将power_sequence节点对应的屏参内容进行替换。
2.3 屏参配置文件加载机制¶
系统启动时按固定顺序查找屏参配置文件,依次尝试以下路径,首个能成功打开并解析为合法 JSON 的路径即被采用(参考 sdk/impl/common/mi_common_cjson.c 中的 MI_COMMON_CJSON_InitCustomerCjson):
| 顺序 | 路径 |
|---|---|
| 1 | /misc/config.json |
| 2 | /config/config.json |
misc 分区挂载成功但无文件时的行为:加载逻辑只关心配置文件能否被打开,与 misc 分区是否挂载无关。当 misc 分区已挂载但其中没有 config.json 时,第 1 路径 /misc/config.json 打开失败,会自动顺延到第 2 路径 /config/config.json 继续尝试,依此类推。
运行时动态加载任意路径:除启动时的静态查找外,还可在运行时通过 proc 节点动态指定配置文件路径:
写入的路径无白名单限制,只要该路径文件存在且为合法 JSON 即可加载(例如 /customer/config.json 这类不在启动查找列表里的路径)。该操作会原地刷新内部链表第 1 个节点的配置,DISP 模块在下一次初始化或重新配置时(参考 sdk/impl/disp/mi_disp_impl.c 中的 _MI_DISP_IMPL_ConfigInit)取到的就是新配置,从而动态生效。
3. 新增屏参与屏参获取流程¶
3.1 新增屏参¶
-
新增屏参定义的section name不允许和已有的section name重名
-
新增的屏参节点名称可以追加在m_pnlList中。
-
在屏参节点中添加新屏参,如下所示:
"mi_disp": { "content": { "m_pnlList": [ "RM68200_LX50HDH40145", "SAT070AT50H18BH" ], ...... }, "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_ucPanelSwapChnR": 3, "m_ucPanelSwapChnG": 2, "m_ucPanelSwapChnB": 1, "m_ucPanelSwapRgbML": 0 }, ...... }
3.2 屏参获取流程¶
目前获取指定屏参的方式分为三种:用户接口传参方式获取,指定eIntfType和eIntfSync获取标准定义屏参,board节点获取默认自定义屏参。
优先级最高的是用户通过调用MI_DISP_SetPubAttr接口传参的方式,优先根据用户指定的pu8PanelName寻找指定屏参。
若MI_DISP_SetPubAttr传参的pu8PanelName为空或者u32PanelNameSize为0,则继续判断当前传入的eIntfSync是否为E_MI_DISP_OUTPUT_USER用户自定义。
如果是user,那么寻找board节点指定的默认屏参。如果不是user,则根据eIntfType和eIntfSync找到标准定义屏参。
解析流程如下所示:
4. 屏参参数说明¶
4.1 公共参数¶
| 参数 | 描述 |
|---|---|
| m_pPanelName | panel name |
| m_ePanelTiming | 输出分辨率,52表示用户自定义 |
| m_ePanelIntfType | 接口类型 VGA:2 BT656:3 BT1120:4 HDMI:5 TTL:9 MIPIDSI:10 SRGB:12 MCU:13 MCU_NOFLM:14 BT601:15 BT1120-DDR:16 LVDS:17 LVDS1:18 DUAL-LVDS:19 MIPIDSI1:20 |
| 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~19是BT接口可选。
m_bPanelInvDCLK,m_bPanelInvHSync,m_bPanelInvVSync正常timing示意图:
m_bPanelInvDCLK,m_bPanelInvHSync,m_bPanelInvVSync开启极性反转timing示意图:
4.2 BT接口特有参数¶
panel默认是逐行扫描模式(P mode),如果是BT601/BT656/BT1120还可以选择隔行扫描模式(I mode),需配置以下参数,下图以BIT656 525 lane举例。
| 参数 | 描述 |
|---|---|
| m_ePanelScanMode | scan mode 0:default 1:old P mode 2:new P mode 3:I mode |
| m_wPanelOddVfdeStart | vertical active start point for I mode odd field |
| m_wPanelOddVfdeEnd | vertical active end point for I mode odd field |
| m_wPanelEvenVfdeStart | vertical active start point for I mode even field |
| m_wPanelEvenVfdeEnd | vertical active end point for I mode even field |
| m_wPanelField0Start | field0 start point for I mode |
| m_wPanelField0End | field0 end point for I mode |
注:old P mode 与 new P mode区别是硬件通路不同,输出给屏幕的数据是相同的。
4.3 MIPIDSI接口特有参数¶
如果是MIPI panel,还需要对MIPI-DSI进行配置。
MIPI-DSI参数说明:
注:如果没有特殊时序需求,目前支持自动计算m_wHsTrail、m_wHsPrpr、m_wHsZero、m_wDaHsExit、m_wClkTrail、m_wClkHsPrpr、m_wClkZero、m_wClkHsExit、m_wClkHsPost、m_wLpx、m_wTaGet、m_wTaSure、m_wTaGo、m_wContDet。即这些参数可不填写,由代码自动计算。
注:以上dphy参数来源于MIPI_D-PHY_specification.pdf

| 参数 | 描述 |
|---|---|
| m_wHsTrail | T_{HS-TRAIL} (可参考文件配置MIPIDSIParamCalculation) |
| m_wHsPrpr | T_{HS-PREPARE} (可参考文件配置MIPIDSIParamCalculation) |
| m_wHsZero | T_{HS-ZERO} (可参考文件配置MIPIDSIParamCalculation) |
| m_wDaHsExit | T_{HS-EXIT} (可参考文件配置MIPIDSIParamCalculation) |

| 参数 | 描述 |
|---|---|
| m_wClkTrail | T_{CLK-TRAIL} (可参考文件配置MIPIDSIParamCalculation) |
| m_wClkHsPrpr | T_{CLK-PREPARE} (可参考文件配置MIPIDSIParamCalculation) |
| m_wClkZero | T_{CLK-ZERO} (可参考文件配置MIPIDSIParamCalculation) |
| m_wClkHsExit | T_{HS-EXIT} (可参考文件配置MIPIDSIParamCalculation) |
| m_wClkHsPost | T_{CLK-POST} (可参考文件配置MIPIDSIParamCalculation) |

| 参数 | 描述 |
|---|---|
| m_wLpx | T_{LPX} (可参考文件配置MIPIDSIParamCalculation) |
| m_wTaGet | T_{TA-GET} (可参考文件配置MIPIDSIParamCalculation) |
| m_wTaSure | T_{TA-SURE} (可参考文件配置MIPIDSIParamCalculation) |
| m_wTaGo | T_{TA-GO} (可参考文件配置MIPIDSIParamCalculation) |
| m_wContDet | contention detection, default 0(可参考文件配置MIPIDSIParamCalculation) |
| m_wBllp | blanking or low power interval, default 0 |
| m_wFps | frame per second, follow panel spec |
| m_eLaneNum | data lane number, 1 ~ 4 |
| m_eFormat | data output format 0:RGB565 1:RGB666 2:LOOSELY_RGB666 3:RGB888 |
| m_eCtrlMode | 0:CMD_MODE 1:SYNC_PULSE 2:SYNC_EVENT 3:BURST_MODE |
| m_wDataClkSkew | default: 7 |
| m_ucPolCh0 | Channel 0 polarity 0:default 1:positive |
| m_ucPolCh1 | Channel 1 polarity 0:default 1:positive |
| m_ucPolCh2 | Channel 2 polarity 0:default 1:positive |
| m_ucPolCh3 | Channel 3 polarity 0:default 1:positive |
| m_ucPolCh4 | Channel 4 polarity 0:default 1:positive |
| m_ucClkLane | clk lane selection 0:select chn0 1:select chn1 2:select chn2 3:select chn3 4:select chn4 |
| m_ucDataLane0 | data lane0 selection 0:select chn0 1:select chn1 2:select chn2 3:select chn3 4:select chn4 |
| m_ucDataLane1 | data lane1 selection 0:select chn0 1:select chn1 2:select chn2 3:select chn3 4:select chn4 |
| m_ucDataLane2 | data lane2 selection 0:select chn0 1:select chn1 2:select chn2 3:select chn3 4:select chn4 |
| m_ucDataLane3 | data lane3 selection 0:select chn0 1:select chn1 2:select chn2 3:select chn3 4:select chn4 |
| m_ePacketType | MIPI LP cmd Data Type, default 0:DCS |
| m_pCmdBuff | MIPI panel cmd buffer, follow panel spec |
| m_pDeinitCmd | MIPI panel deinit cmd buffer, follow panel spec, 内容格式与m_pCmdBuff相同,如不需要可删除该参数 |
m_ePacketType 指定 m_pCmdBuff 的 Data Type。0 表示 DCS,1 表示 GENERIC,非 0 且非 1 的值将被作为 Data Type 的实际值封装进数据包内。只接受传入十进制值。
示例:设定 LP Cmd 的 Data Type 为 0x32(Turn On Peripheral Command)。
m_pCmdBuff是panel初始化cmd,该部分是各panel厂商参照协议标注自定义的,因此该参数设定内容一般找panel厂商提供。该参数的设定内容格式如下所示,以十六进制填写。
"m_pCmdBuff":[
"cmd1","data_num","data[0]","data[1]",...,"data[num-1]",
...,
"cmdN","data_num","data[0]","data[1]",...,"data[num-1]",
"0xFF","0xFF" //结束符
]
注:m_pCmdBuff中的"0xFE, 0xFE, 0xXX"表示延时,单位:ms
| 参数 | 描述 |
|---|---|
| m_pAfterLP11 | LP11之后,power on时序控制,如不需要可删除该参数 |
| m_pAfterInit | mipidsi init cmd发送完成后,power on时序控制,如不需要可删除该参数 |
| m_pAfterDeinitCmd | mipidsi deinit cmd发送完成后,power off 时序控制,如不需要可删除该参数 |
m_pAfterLP11、m_pAfterInit、m_pAfterDeinitCmd 用于控制屏幕的上下电时序,内容格式如下所示。pin_idx后面必须跟上level和delay_ms,以十进制填写。
"m_pAfterLP11":[
"pin_idx","level","delay_ms",
"pin_idx","level","delay_ms",
...,
"pin_idx","level","delay_ms"
]
示例:m_pAfterLP11:拉高gpio_179并延时10ms -> 拉低gpio_179并延时10ms -> 拉高gpio_179并延时10ms。

4.4 LVDS接口特有参数¶
LVDS接口需要额外配置下列参数,若未配置则默认是0。
| 参数 | 描述 |
|---|---|
| lvds_eFormat | data format 0:VESA 1:JEIDA |
| lvds_eLaneNum | lane number 0:NONE 3:3 lane 4:4 lane |
| lvds_u8SwapOddEven | swap odd and even for dual-lvds 0:default 1:swap |
| lvds_u8SwapML | Swap RGB MSB/LSB 0:disable M/L swap 1:enable M/L swap |
| lvds_u8PolHsync | Hsync polarity |
| lvds_u8PolVsync | Vsync polarity |
| lvds_u8ClkLane | default: 0x63 |
| lvds_u8PolLane0 | lane0 polarity 0:default 1:positive |
| lvds_u8PolLane1 | lane1 polarity 0:default 1:positive |
| lvds_u8PolLane2 | lane2 polarity 0:default 1:positive |
| lvds_u8PolLane3 | lane3 polarity 0:default 1:positive |
| lvds_u8PolLane4 | lane4 polarity 0:default 1:positive |
| lvds_u8SwapLane0 | data lane0 selection 0:select chn0 1:select chn1 2:select chn2 3:select chn3 4:select chn4 |
| lvds_u8SwapLane1 | data lane1 selection 0:select chn0 1:select chn1 2:select chn2 3:select chn3 4:select chn4 |
| lvds_u8SwapLane2 | data lane2 selection 0:select chn0 1:select chn1 2:select chn2 3:select chn3 4:select chn4 |
| lvds_u8SwapLane3 | data lane3 selection 0:select chn0 1:select chn1 2:select chn2 3:select chn3 4:select chn4 |
| lvds_u8SwapLane4 | data lane4 selection 0:select chn0 1:select chn1 2:select chn2 3:select chn3 4:select chn4 |
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 |
5.2 协议规范¶
如果是MIPI panel,还需要根据MIPI spec配置MIPI dphy相关参数。


UI的计算方法:
H_Total = m_wPanelHTotal
V_Total = m_wPanelVTotal
BitsPerPixel=24(RGB888)/18(RGB666)/16(RGB565)
Bitrate = H_Total * V_Total * FPS * BitsPerPixel / lane number
UI = 1/Bitrate
比如表格中HS-PREPARE的要求是大于(40ns + 4 * UI)并且小于(85ns + 6 * UI),那么对应MIPI dphy timing中的参数
(40ns + 4 * UI) / (8 * UI) < m_wHsPrpr < (85ns + 6 * UI) / (8 * UI)
其他MIPI dphy timing中参数计算方法同上。
hpw、hbp、hfp需满足下列公式
data_init_cycle = HsExit + Lpx + HsPrpr + HsZero
HFP_WC = HFP * BPP – 12 – data_init_cycle * lane_num
HBP_WC = HBP * BPP – 10
HSA_WC = HPW * BPP – 10
HFP_WC/HBP_WC/HSA_WC need > 0
上述参数计算都可参考文件 MIPIDSIParamCalculation。