首页 > 其他分享 >MTK 屏的帧数、mipi clock 浅谈

MTK 屏的帧数、mipi clock 浅谈

时间:2024-11-02 10:50:18浏览次数:5  
标签:mipi 干扰 浅谈 clock 代码 MTK params dsi

从入职到现在,有个问题困惑我很久了。那就是怎么计算屏的帧数?

前言:代码里面的params->dsi.PLL_CLOCK 这个PLL_CLOCK是mipi clock吗?我的个人理解认为不是。

屏的帧数怎么计算(虽然可以用apk测出来,但是我想知道准确的数值)

目前只知道mtk平台的

液晶屏的模式,一种是command模式 (cmd),一种是video模式 (vdo) 

目前我点过的屏都是vdo模式

mtk屏的帧数跟以下参数有关:height、vsa、vbp、vfp、width、hsa、hbp、hfp、LANE_NUM、位深、PLL_CLOCK、horizontal_bllp、clk_lp_per_line_enable

这是6761 62 65的屏的代码:LK跟Kernel代码一样

一块屏的部分代码

#define FRAME_WIDTH                                          (720)
#define FRAME_HEIGHT                                         (1600)

//params->dsi.mode   = CMD_MODE;
params->dsi.mode   = SYNC_PULSE_VDO_MODE; //BURST_VDO_MODE;

params->dsi.LANE_NUM                = LCM_FOUR_LANE;

params->dsi.PS=LCM_PACKED_PS_24BIT_RGB888;

    params->dsi.vertical_sync_active                = 6;    
    params->dsi.vertical_backporch                  = 28;  
    params->dsi.vertical_frontporch                   = 140;    
    
    params->dsi.horizontal_sync_active             = 4;
    params->dsi.horizontal_backporch               = 335;
    params->dsi.horizontal_frontporch               = 335; 

    params->dsi.PLL_CLOCK = 410;

params->dsi.horizontal_bllp             = 0;

params->dsi.clk_lp_per_line_enable=1;

=========================================================================

网上看到他们说的计算公式:

Mipiclock = [ (width+hsync+hfp+hbp) x (height+vsync+vfp+vbp) ] x(bus_width) x fps/ (lane_num)/2

假如我把代码里面的PLL_CLOCK当成Mipiclock带进去,fps算得的结果是56.61,但是用apk测得明明是60帧啊。

我又用了其他的apk测,还是60帧。

=========================================================================

询问了mtk,mtk说旧的apk测出来的已经不准了,就是那个fps2d_4.apk

他说以这个表格为准

VPW HPW对应的是代码里面的vertical_sync_active和vertical_sync_active

Ideal Bit_Freq对应代码里面的PLL_CLOCK,表格中的Ideal Bit_Freq要x2,填820

左下角这两个,假如屏代码里面没有的话,就默认是0

horizontal_bllp             

clk_lp_per_line_enable

表格算出来的是60.69,那跟apk测的差不多了。

表格公式又看不了,公式我也不知道。等以后理解深了再修改笔记。

==================================================================================================================================================

工作经验,跟屏的帧数(proch、mipi clock)有关的问题:(其实改的是代码里面的pll_clock,现在先认为pll_clock是mipi clock吧,个人理解还没那么到位)

1.点新屏

1.1屏点不亮

proch、mipi clock参数设得不对,导致帧数过低。

1.2雪花屏 

雪花屏出现说明DDIC已经初始化成功,但数据没有刷出来。可以检查LCM的参数设定,尤其是porch参数,datarate的设定。

1.3内容不正常

此种情况通常已经可以隐约看到内容,屏也有色彩变化,但显示内容是乱的

首先check屏参各方面设置是否正确

在高帧率下出现异常,低帧率正常的情况,考虑可能是系统clock设定不足,可以考虑先拉系统clock至最大看能否正常

2.亮灭屏干扰

屏幕出现异常的亮灭情况。这种现象可能由多种因素引起,包括但不限于软件故障、硬件故障或外部电磁干扰等。例如,当设备靠近强磁场或高频率变化的电器时,可能会因为受到电磁干扰而导致屏幕闪烁或自动熄灭。

2.1软件解决方案:

我一般都是增大mipi clock或者减小mipi clock

比如mipi clock=260MHZ 帧数为60帧 mipi clock改为240后,58帧。客户测试没有问题了,不纠结帧数问题就不用改proch了。

2.2其他解决方案:

检查并更换可能损坏的硬件部件;避免将设备放置于强磁场附近以减少电磁干扰的影响

3.天线射频干扰

天线射频干扰则是指在无线通信过程中,由于外界因素的影响导致信号传输质量下降的现象。这种干扰可以来源于其他无线电信号、电力线路、电子设备等产生的电磁波。射频干扰会影响无线信号的接收与发送,可能导致通话质量下降、数据传输错误增加等问题。例如,在一些密集的电子设备使用环境中,多个设备同时发射的无线信号可能会相互干扰,影响彼此的通信效果。

3.1软件解决方案:

3.1.1.开展屏,mtk有个宏控 params->dsi.ssc_disable  = 0;

3.1.2.修改mipi clock和proch 修改mipi的频段,可能是天线频段和mipi频段太接近了有干扰

天线射频干扰能先开展屏就先开展屏,因为我曾经遇到过亮灭屏干扰和天线射频干扰两个都有的,改了不同mipi clock和proch只能解决一个,那就只能改mipi clock去解决亮灭屏干扰,展屏解决天线射频干扰。或者你跟fae说服客户也行,说改不了,哈哈

3.2其他解决方案:

可以尝试改变设备的位置以远离干扰源;使用屏蔽材料包裹干扰源或受影响的设备以减少干扰;提高天线增益或使用更高质量的天线来增强信号接收能力;

4.tp问题(tp无触)

LCD的Vcom信号是影响TP的主要因素。LCD的刷新率可能也会对TP造成影响。我遇到过3次开机后tp无触的,看串口log tp固件版本号都读到了(固件加载成功),后面都是改了屏的初始化代码和proch参数改好的

标签:mipi,干扰,浅谈,clock,代码,MTK,params,dsi
From: https://blog.csdn.net/m0_73108512/article/details/143385159

相关文章

  • 浅谈android设备sysfs接口硬件调用之手电筒,马达,呼吸灯
    这篇文章我们来介绍下几个sysfs接口的调用。事实上,驱动接口一般有两种方式调用:ioctl()和read()/write()。前一种要么能读懂内核源码,要么照抄strace用户空间驱动得到的调用,因此不做研究。需要注意的是,由于安卓内核碎片化过于严重,各个厂商之间的代码差异过大,因此直接和内核交互来......
  • 浅谈VCU之扭矩管理
    扭矩管理模块是VCU(VehicleControlUnit)中极为重要的一个组成部分。它处于VCU控制的核心位置,因为扭矩是车辆动力输出的关键物理量。无论是加速、减速还是保持匀速行驶,都与扭矩的合理分配和控制密切相关。在新能源汽车中,电机扭矩的控制直接影响车辆的动力性能、驾驶体验和......
  • 浅谈——深度学习和马尔可夫决策过程
            深度学习是一种机器学习方法,它通过模拟大脑的神经网络来进行数据分析和预测。它由多层“神经元”组成,每一层从数据中提取出不同的特征。多层次的结构使得深度学习模型可以捕捉到数据中的复杂关系,特别适合处理图片、语音等复杂数据。        马尔可夫......
  • 浅谈对账拓展功能设计
    在Saas类产品中,对账功能是一个拓展比较多的设计,不同企业有着不同的要求。这篇文章,我们看看作者的总结。需求场景:不同企业针对对账单的表单字段有不同的要求,如何满足不同企业用户对于对账的个性化字段诉求,包含核对本账期内发生的企业支付明细、本账期可开票结账明细、本期及......
  • TYPE-C PD浅谈(三)
    由于TYPE-C两头都一样,没有方向性,所以在对接前并不会有电源输出,数据主从也尚未定义。在PD的规范内,针对装置对接,定义了三个电阻来进行对接的识别。Rp:做为Provider需要在CC脚位上上拉一个Rp电阻。Rp电阻允许有三种阻值(pullhigh5V时,10K/22K/56K),这三种阻值也同时初步的宣告了Provid......
  • 浅谈指标平台的价值:赋能企业决策、加速业务响应与提升技术效率
    指标平台在现代企业管理中扮演着至关重要的角色,它不仅是数据分析的核心工具,更是驱动企业决策优化、业务增长和技术效能提升的关键。通过构建一个“管研用一体化”的指标平台,企业能够在复杂多变的市场环境中迅速响应,精准定位问题,从而实现持续稳健的发展。下面将从管理者、业务侧以及......
  • 浅谈TiKV集群运维问题排查与修复——磁盘空间占用问题
    作者:来自vivo互联网存储团队-YuanJianwei本文介绍了TiKV磁盘空间问题的排查思路与解决方案。一、背景介绍在业务快速扩张的年代,vivo内部的很多业务为了可以快速上线,给现网功能提供支撑,在KV类型的选型下许多场景都选用了轻量快速的Redis集群。但是随着业务的不断发......
  • TYPE-C PD浅谈(二)- E-Marker
    E-Marker指的是在TYPE-C缆线中会被放置一颗识别IC,这等于是这条缆线的身份证,其功能主要是在宣告缆线的能力、缆线ID及制造商ID等。前面章节有提到当装置对接后,CC其中会有1pin变成VCONN供电出来,就是为了供电给E-marker来使用。对接后供电端(Provider)会去读取E-Marker的电流承载能......
  • TYPE-C PD浅谈(一)
    聊聊USBPowerDelivery两三事,接下来会依下列几个主题来探讨WhatisPowerDeliveryE-MarkerAttachedSourceCAPSinkCAPPowerRoleSwapDataRoleSwapVCONNSwapAlternateModeChargerDesignNoteWhatisPowerDeliveryUSB界面历经20年的演变,在界面上一直没有太......
  • RK3588J的6路MIPI CSI视频采集方案
    本文主要介绍基于RK3588J的6路高清视频采集案例,开发环境如下Windows开发环境:Windows764bit、Windows1064bit虚拟机:VMware15.5.5开发环境:Ubuntu20.04.664bitU-Boot:U-Boot-2017.09Kernel:Linux-5.10.160LinuxSDK:rk3588_linux_release_v1.2.1摄像头模块型号:TL138......