关于display相关的一些内容—其他杂项

关于display相关的一些内容—其他杂项

  1. 注意屏内的driver IC和panel屏的区别

屏所使用的driver ic的配置需求。一般一款driver IC会用于多种尺寸的多款lcd屏(几种分辨率),然后driver IC的spec上会列出支持的最大分辨率,最大分辨率以下的其他分辨率可以通过寄存器配置,可以固化在firmware的OTP上。
一般屏幕生产时会把driver IC和panel做成一套。而panel的分辨率是固定某个值。针对这个屏,因为屏参数固定了,有很多屏内部会有nvram保存固化的参数(即OTP—one time programable存储方式),这样driver IC的配置直接根据OTP的参数设置,不需要外面spi进行设置。
如果你们的屏没有OTP,那么请给出具体的spi初始化命令和时序。
注意区分文档是针对此屏内的driver IC的,还是针对屏本身的。

  1. 硬件经验

在调试S2D13V40 epson图像校正芯片时,遇到一个问题,就是i2c通信正常(而且VIO电源、vcore电源,其他电源都正常),即能收到S2D13V40的i2c ack回应,读写都有ack,但是寄存器0x02 pid寄存器却读取到0x0000的值,示波器测量i2c信号是正常了,各路电源也是正常的,但是读取寄存器数据就是为0,写也报ack,但写完再读取,还是0,而不是写的值,对比datasheet,发现i2c完全按照spec手册要求的顺序和方式,波形测量和数据也是符合datasheet的,但是就是不行,而且lvds显示也不通。后来检查芯片外接的晶振,频率是对的26MHz,但是后来发现晶振的电压只有1v,而手册要求是3v左右。也就是对于此芯片来说震不起来,所以function功能部分就工作不正常,虽然i2c部分工作正常,所以读取都是0.
通过这个经验,总结就是,如果很简单的东西,软件正常,但是就是硬件不工作。由于现在设计的硬件都是分模块的,所以总线接口io有模块、功能有独立模块。所以你一定要仔细检查硬件的电源、晶振、等等每一个管脚,看是否正常。对比手册,不要漏掉一个细节。

  1. aHD信号波形

  1. 关于android出现黑屏的问题分析步骤

关于黑屏的问题分析:
1)先检查黑屏时,背光是否亮,找个暗的地方看。
2)如果背光亮,看屏幕的kernel log,看屏是否mipi dsi初始化出错,或者屏的上电出问题。
3)如果没有异常,看看是否因为home,即android的launcher没有正常启动或反复crash了。导致没有在framebuffer上画东西。通过启动setting可以看到,如果setting应用起来,能出现显示,那么就是home本身问题了,或者通过logcat log看。

  1. 关于jpeg压缩导致各个图像图形边缘出现魔鬼点。

对于jpeg压缩,需要记住,对于有损压缩,那么就会出现图像的线条旁边出现魔鬼点,即锐利度不够,变差。即所谓的图像细看,线条旁边出现虚幻的旁条。可以保存图片,看看压缩后的原图是怎么样的,再看display panel的显示是怎么样的。 另外看看bmp图来显示的效果,做对比。

具体请参考我的免费的linux各种驱动开发课程如下:
https://edu.51cto.com/course/17138.html

另外我的相关培训视频请看:
欢迎观看我发布的各个课程: https://edu.51cto.com/lecturer/8896847.html

原文地址:https://blog.51cto.com/8906847/2368000

时间: 2024-10-10 19:34:53

关于display相关的一些内容—其他杂项的相关文章

关于display相关的一些内容(总体)

关于display相关的一些内容(总体) 请看<关于linux的通用显示框架和android显示框架(必读的总结).docx> 一定要明白各个部分之间的关系,哪些部分为了Rendering渲染,哪些部分为了送显. android或其他显示架构中,应用向类似android的surfaceflinger申请buffer,然后使用gpu在各自的buffer中渲染(画)相应的图,然后类似android的surfaceflinger会把所有的显示的buffer做图层的merge处理(利用hardware

关于display相关的一些内容—MIPI panel的调试

关于display相关的一些内容-MIPI panel的调试 MIPI接口中DSI - Command and Video ModesDSI-compliant peripherals support either of two basic modes of operation:Command ModeSending command and send/receive data to/from peripheral.Video ModeTransfer of real-time pixel dat

关于display相关的一些内容—lvds接口

关于display相关的一些内容-lvds接口 lvds接口<显示lvds–LVDS接口分类,时序,输出格式.docx>需要注意的是,lvds设置的时钟频率是像素时钟频率,即(H_PW+ H_BP+ H_VD+ H_FP) (V_PW+V_BP+V_VD+V_FP) fps. 经验:所以出现屏幕闪烁严重,而且是一线一线的花屏,那么一定要注意clock,测量一下,看看频率对不对.不要光相信软件设置是多少,实际硬件就多少. 注意vsync.hsync信号跟RGB屏不同,不是独立的信号线,而是特定b

关于display相关的一些内容—关于RGB接口屏调试

关于display相关的一些内容-关于RGB接口屏调试 1)关于VBP.VFP.HFP.HPB的影响 需要注意的是,对于像RGB接口tft9k23553 这样的tft屏,本身支持通过硬件拉高或者拉低两个管脚来控制扫描的方向和起始点,从而实现上下屏镜像或者左右屏镜像.本身不存储一帧数据,所以只是通过扫描方向和起始点实现此种镜像.但是如果调整了一个方向后,你再硬件修改了上下镜像方向,那么VBP和VFP可能需要重新调整,HFP和HBP不需要调整.否则出现图像被往上或者往下推了.但是如果调整了一个方向后

Extjs4对Model定义相关的校验内容

方法名称在添加上一个Message就可以 设置错的内容了 config的内容如下 config配置内容 value,用户传递的值 来自为知笔记(Wiz)Extjs4对Model定义相关的校验内容,布布扣,bubuko.com

RoundTo 及其相关的一些内容总结

1.Round(四舍六入五留双) 功能说明:对一个实数进行四舍五入.(按照银行家算法) 例:var    i, j: Integer;begin    i := Round(1.5); // i等于2    j := Round(2.5); // j等于2end; 在Delphi中使用Round函数得到的答案有时与我们所预期的会不太一样:采用的是四舍六入五留双.即当舍或入位大于或小于五时按四舍五入来处理 ,而当舍或入位等于五时,就要看前面一位是什么,根据奇进偶不进,它总是返回一个偶数值.例:  

C++ 第三十四天:类相关的一些内容

复习 // 以下内容含个人见解 Ⅰ.有时不得不用到“构造函数初始值列表”,原因是有些编译器不支持类内初始值,这样做可以避免在函数体内初始化. 需要注意的是:被初始化列表忽略的数据成员将被默认初始化(结果取决于位置,可能产生可怕后果).下面是构造器的 N 种情况: 程序员直接忽略构造器 --> 产生默认合成的构造函数 --> 成员被默认初始化 --> 不确定的结果. 给数据成员提供初始值(Java 中所谓的属性初始化),不写构造函数 --> 默认合成的构造函数使用提供的初始值初始化对

filebeat相关registry文件内容解析

filebeat的registry文件中存放的是被采集的所有日志的相关信息. linux中registry中一条日志记录的内容如下 {"source":"/var/log/messages","offset":5912,"FileStateOS":{"inode":38382035,"device":64768},"timestamp":"2017-03-1

【linux】 linux中的进程管理相关的一些内容

_ linux进程管理 ■ top top命令用于动态地查看系统的进程和其他一些资源的信息.开启top的时候可以加上-t <sec>来设置top更新的频率高低.进入top界面之后,可以输入一些命令比如P表示以cpu资源占用率对进程排序,M表示以内存的使用率排序进程,N表示以PID的顺序排序等等.想要知道更多命令可键入?来查看 top的界面说明: 第一行:<当前时间> <开机到目前的总时间> <登录用户人数> <系统最近一分钟.五分钟.十五分钟的平均负载