热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

Android+高通MIPI转LVDS显示屏调试之基于SD65DSI84

1.硬件接口显示屏分辨率是1920RGB1080pixels。1.1硬件连接示意图1.2硬件连接引脚CPUSN65DSI84DSI转LVDSLM3492HCMH背光控制IC显示

1.硬件接口

显示屏分辨率是1920×RGB×1080 pixels。

1.1 硬件连接示意图






1.2 硬件连接引脚




CPU

SN65DSI84

DSI转LVDS

LM3492HCMH

背光控制IC

显示屏

GPIO126_LCD_1V8_EN

VCC

 

 

GPIO129_LCD_5V_EN

 

 

5V_BL

GPIO125_LCD_COMM

 

COMM

 

MPP2_LCD_BL_PWM

 

DIM1/CLK

 

GPIO123_LCD_DIM2

 

DIM2

 

GPIO7_LCD_I2C2_SCL

SCL

 

 

GPIO6_LCD_I2C2_SDA

SDA

 

 

GPIO124_LVDS_INT

IRQ

 

 

GPIO130_LVDS_EN

EN

 

 

 

 

 

 

我们CPU的DSI采用24bpp的视频数据。



2.SD65DSI84

The SN65DSI8x can be used between a GPU with DSI output and a video panel with LVDS inputs,MIPI DSI-to-LVDS

 


SN65DSI84 非常适合于每秒 60 帧的 WUXGA 1920 x 1200 应用,每像素比特位高达 24。 执行了部分线路缓冲以适应 DSI 与 LVDS 接口间的数据流不匹配。



2.1SN65DSI84的主要特征

(1)单DSI接收通道,可配置为使用1~4个D-PHY数据信道,每个数据信道最高可工作在1Gbps。

(2)支持18bpp(RGB666)和24bpp(RGB888)数据格式的DSI视频包。

(3)支持低压差分信令(LVDS)单通道DSI 至双链路LVDS 桥 (Rev. E)

(4)LVDS输出时钟范围为25MHz~154MHz。

(5)低功耗特性包括关断 (SHUTDOWM) 模式、精简 LVDS 输出电压摆幅、共模和 MIPI® 超低功耗状态 (ULPS,ultra-low power state,超低功耗) 支持



2.2复位芯片

 




2.3SN65DSI84推荐的初始化时序

 

2.4 时钟配置和倍频器


(1)选择DSI通道A时钟作为LVDS时钟源

(2)采用外部参考时钟源



2.5SN65DSI84的工作模式

工作模式由DSI和LVDS通道的使用数量与CSR寄存器配置的DSI数据输入选项来决定。

 


2.6LVDS输出格式

当使用双通道配置,通道A传输奇数像素数据,通道B传输偶数像素数据when 

 


SN65DSI84处理DSI包和以工业标准格式来产生视频数据驱动LVDS接口,上图这是我们产品使用的视频数据格式。





2.7DSI lane数据合并

 


我们采用4路DSI数据通道。





2.8DSI 像素流包

 


2.9DSI视频传输规范

 


2.10ULPS

  




LVDS的输出时序由CSR寄存器对应的视频参数来产生。HSync pulse width, HSync Back Porch duration,and VSync pulse width.这些值需要变成用来创建LVDS显示屏的时序。



2.11LVDS模式生成

 


此特征可用来测试LVDS输出路径和LVDS面板。



2.12SN65DSI84的I2C地址




我们硬件设置是ADDR引脚通过下拉电阻接地,也就是ADDR=0,所以I2C写地址为0x58,读地址为0x59,但在代码里I2C从设备地址为0x2C,采用前7位作为I2C从设备的地址。




推荐阅读
  • 在Android开发中,使用Picasso库可以实现对网络图片的等比例缩放。本文介绍了使用Picasso库进行图片缩放的方法,并提供了具体的代码实现。通过获取图片的宽高,计算目标宽度和高度,并创建新图实现等比例缩放。 ... [详细]
  • android listview OnItemClickListener失效原因
    最近在做listview时发现OnItemClickListener失效的问题,经过查找发现是因为button的原因。不仅listitem中存在button会影响OnItemClickListener事件的失效,还会导致单击后listview每个item的背景改变,使得item中的所有有关焦点的事件都失效。本文给出了一个范例来说明这种情况,并提供了解决方法。 ... [详细]
  • CF:3D City Model(小思维)问题解析和代码实现
    本文通过解析CF:3D City Model问题,介绍了问题的背景和要求,并给出了相应的代码实现。该问题涉及到在一个矩形的网格上建造城市的情景,每个网格单元可以作为建筑的基础,建筑由多个立方体叠加而成。文章详细讲解了问题的解决思路,并给出了相应的代码实现供读者参考。 ... [详细]
  • 本文详细介绍了如何使用MySQL来显示SQL语句的执行时间,并通过MySQL Query Profiler获取CPU和内存使用量以及系统锁和表锁的时间。同时介绍了效能分析的三种方法:瓶颈分析、工作负载分析和基于比率的分析。 ... [详细]
  • RouterOS 5.16软路由安装图解教程
    本文介绍了如何安装RouterOS 5.16软路由系统,包括系统要求、安装步骤和登录方式。同时提供了详细的图解教程,方便读者进行操作。 ... [详细]
  • Android工程师面试准备及设计模式使用场景
    本文介绍了Android工程师面试准备的经验,包括面试流程和重点准备内容。同时,还介绍了建造者模式的使用场景,以及在Android开发中的具体应用。 ... [详细]
  • 网址:https:vue.docschina.orgv2guideforms.html表单input绑定基础用法可以通过使用v-model指令,在 ... [详细]
  • 计算机存储系统的层次结构及其优势
    本文介绍了计算机存储系统的层次结构,包括高速缓存、主存储器和辅助存储器三个层次。通过分层存储数据可以提高程序的执行效率。计算机存储系统的层次结构将各种不同存储容量、存取速度和价格的存储器有机组合成整体,形成可寻址存储空间比主存储器空间大得多的存储整体。由于辅助存储器容量大、价格低,使得整体存储系统的平均价格降低。同时,高速缓存的存取速度可以和CPU的工作速度相匹配,进一步提高程序执行效率。 ... [详细]
  • Tomcat/Jetty为何选择扩展线程池而不是使用JDK原生线程池?
    本文探讨了Tomcat和Jetty选择扩展线程池而不是使用JDK原生线程池的原因。通过比较IO密集型任务和CPU密集型任务的特点,解释了为何Tomcat和Jetty需要扩展线程池来提高并发度和任务处理速度。同时,介绍了JDK原生线程池的工作流程。 ... [详细]
  • C++字符字符串处理及字符集编码方案
    本文介绍了C++中字符字符串处理的问题,并详细解释了字符集编码方案,包括UNICODE、Windows apps采用的UTF-16编码、ASCII、SBCS和DBCS编码方案。同时说明了ANSI C标准和Windows中的字符/字符串数据类型实现。文章还提到了在编译时需要定义UNICODE宏以支持unicode编码,否则将使用windows code page编译。最后,给出了相关的头文件和数据类型定义。 ... [详细]
  • CentOS 7部署KVM虚拟化环境之一架构介绍
    本文介绍了CentOS 7部署KVM虚拟化环境的架构,详细解释了虚拟化技术的概念和原理,包括全虚拟化和半虚拟化。同时介绍了虚拟机的概念和虚拟化软件的作用。 ... [详细]
  • 本文讨论了在iOS平台中的Metal框架中,对于if语句中的判断条件的限制和处理方式。作者提到了在Metal shader中,判断条件不能写得太长太复杂,否则可能导致程序停留或没有响应。作者还分享了自己的经验,建议在CPU端进行处理,以避免出现问题。 ... [详细]
  • 本文讨论了在openwrt-17.01版本中,mt7628设备上初始化启动时eth0的mac地址总是随机生成的问题。每次随机生成的eth0的mac地址都会写到/sys/class/net/eth0/address目录下,而openwrt-17.01原版的SDK会根据随机生成的eth0的mac地址再生成eth0.1、eth0.2等,生成后的mac地址会保存在/etc/config/network下。 ... [详细]
  • 纠正网上的错误:自定义一个类叫java.lang.System/String的方法
    本文纠正了网上关于自定义一个类叫java.lang.System/String的错误答案,并详细解释了为什么这种方法是错误的。作者指出,虽然双亲委托机制确实可以阻止自定义的System类被加载,但通过自定义一个特殊的类加载器,可以绕过双亲委托机制,达到自定义System类的目的。作者呼吁读者对网上的内容持怀疑态度,并带着问题来阅读文章。 ... [详细]
  • 嵌入式处理器的架构与内核发展历程
    本文主要介绍了嵌入式处理器的架构与内核发展历程,包括不同架构的指令集的变化,以及内核的流水线和结构。通过对ARM架构的分析,可以更好地理解嵌入式处理器的架构与内核的关系。 ... [详细]
author-avatar
举报处冫__理大厅_283
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有