01.mipi时序

news/2025/1/15 23:31:33/

Video模式又分三种子模式:

1 Non-burst Mode Sync pulses: 在这种模式下,DSI基于各种不同的同步数据包来做数据同步。这种数据包括:重构,时间校准等。更具体的请参考DSI协议标准。

2 Non-burst Mode Sync event: 这种模式和第一种模式很像,但是这种模式不会发重构和时间校准的数据包,它们只发送一种叫做”Sync event”的包。

3 Burst mode: 在horizontal 的时序是一样的情况下DSI会把连接的速度提升到Panel支持的最大速度。在这种模式下发送RGB数据包的时间被压缩,以留出更多的时间用来传送其他的数据。

为了使能Video模式Host需要发送各种不同的包到panel用来设置开始和结束的Porch.以下是Video模式中用到的数据包:

Video Mode interface Timing Legend:

• VSS:  DSI Sync Event Packet: V Sync Start

• VSE:  DSI Sync Event Packet: V Sync End

• BLLP: DSI Packet: Arbitrary sequence of non-restricted DSI packets or Low Power Mode incluing optional BTA.(数据长度为HBP+H+HFP)

• HSS:  DSI Sync Event Packet: H Sync Start

• HSA:  DSI Blanking Packet: Horizontal Sync Active or Low Power Mode, No Data

• HSE:  DSI Sync Event Packet: H Sync End

• HFP:  DSI Blanking Packet: Horizontal Front Porch or Low Power Mode

• HBP:  DSI Blanking Packet: Horizontal Back Porch or Low Power Mode

• RGB:  DSI Packet: Arbitrary sequence of pixel stream and Null Packets

• LPM:  Low Power Mode incuding optional BTA

上图加粗的代表数据包,其他的代表时序的状态。

那么MIPI host如何输入一帧的数据呢,下面分别是三种video mode下的数据传输时序图:

有两个特别的点如下:

1.第一个是VSS-HSA-HSE-BLLP,此后的都是HSS-HSSA-HSE-BLLP

2.最后是以LPM结尾,怎么不是VSE呢?

以上三种时序的差异如下:

video mode同步数据时序RGB数据时序结束
sync pulseVSS-HSA-HSE-BLLP、HSS-HSA-HSE-BLLPHSS-HSA-HSE-HBP-RGB-HFPLPM
sync eventVSS-BLLP、HSS-BLLPHSS-HBP-RGB-HFPLPM
burstVSS-BLLP、HSS-BLLPHSS-HBP-RGB-BLLP-HFPLPM

结合屏的物理结构才看得动上面时序图的含义:

以BURST mode为例 :

首先会发送VSPW行(VSA lines)的空数据包,在发送VBP lines的空数据包,接着发送VACT lines(屏宽)的有效RGB数据,其中每一行数据都包含HSS 行开始信号+HBP数据包+RGB+HFP数据包。最后就是发送VFP lines的空数据包。这样就刷满了一整屏,也就是一帧的数据。

那么这三种video模式的区别就是传递的数序和数据包位置的不同,至于最终在dtsi配置哪一个模式就要根据实际的panel IC所支持video 模式来。

dtsi对应项:

qcom,mdss-dsi-traffic-mode = "non_burst_sync_event";

另外说明一下dtsi 里面qcom,mdss-dsi-h-sync-pulse 的含义

在kernel/Documentation/devicetree/bindings/fb/mdss-dsi-panel.txt:196中说明了:

qcom, mdss-dsi-h-sync-pulse: Specifies the pulse mode option for the panel.

      0 = Don't send hsa/he following vs/ve packet(default)

      1 = Send hsa/he following vs/ve packet

这里所说的pulse mode就是 Non-burst Mode Sync pulses模式。

根据时序图,如果这个值为1就会发图中红色圈圈的部分,如果为0就不会发,不过这个只用于这种模式下有效。


http://www.ppmy.cn/news/326115.html

相关文章

android开发笔记之android编译过程

第一:执行环境变量的sh脚本: 我们先执行: . build/envsetup.shincluding device/generic/car/vendorsetup.sh including device/generic/mini-emulator-arm64/vendorsetup.sh including device/generic/mini-emulator-armv7-a-neon/vendorsetup.sh including device/generic/…

微软Windows操作系统全面兼容机器人操作系统ROS1和ROS2

微软Windows操作系统全面兼容机器人操作系统ROS1和ROS2 turtlebot2:https://github.com/bfjelds/turtlebot2-win10 文档:https://libraries.io/github/bfjelds/turtlebot2-win10 安装在/opt/ros/melodic/x64文件夹下,依据如下教程即可安装成…

2018年智能机器人技术综合实训专题一系统基础

2018年智能机器人技术综合实训专题一系统基础 此部分对应教材:《ROS机器人项目开发11例》,采用翻转课堂模式,并未按书中章节顺序授课。 请自学第一章,入门ROS机器人应用程序开发;第四章,使用ROS控制嵌入式…

南京观海微电子GH1001 datasheet及应用介绍

datasheethttps://pan.baidu.com/s/1I3GXWsrgPGuTe46UpMlLsw?pwd1234 GH1001支持HD 768分辨率驱动IC。 GH1001 设计可驱动 α-Si、LTPS&IGZO TFT 点阵 LCD,最高可支持分辨率:768RGBx2046 。 Single chip solution for a WXGA α-Si type LCD disp…

【汇总】OpenHarmony轻量系统开发【0】目录和个人感悟

前言 还记得2020年9月OpenHarmony大会后,我开始在社区写了一些OpenHarmony轻量系统开发的文章,基于Hi3861。 转眼已经过去那么久了。 OpenHarmony从过去的1.0版本,演变到了现在的3.1版本。 于是决定重新开启篇章,针对3.0以上的版…

OpenHarmony一次开发,多端部署

作者:坚果 团队:坚果派 公众号:“大前端之旅” 润开鸿技术专家,华为HDE,InfoQ签约作者,OpenHarmony布道师,擅长HarmonyOS应用开发、熟悉服务卡片开发,在“战码先锋”活动中作为大队长,累计培养三个小队长,带领100+队员完成Pr的提交合入。 欢迎通过主页或者私信联系我…

Hacker Disassembler Engine (HDE) version 0.07

引用: Hacker Disassembler Engine (HDE) version 0.07 - 09.02.2007 - fixed bug with F6 and F7 opcodes - added support of FPU commands - optimized and small code - corrected documentation 引用: http://www.patkov-site.narod.ru/download/hde.zip

KDE桌面环境下电源管理对应的文件及选项

在KDE桌面环境下,“系统设置”—>“电源管理”—>“高级电源设置”的界面如下: 点击界面中的“配置通知”选项,界面如下所示: 其中图形界面下的各项设置对应的文件为~/.config/powerdevil.notifyrc。上图状态下&#xff0c…