android系统平台显示驱动开发简要:LCD常用接口篇『二』

平台信息:
内核:linux3.4.39
系统:android4.4 
平台:S5P4418(cortex a9)

作者:瘋耔(欢迎转载,请注明作者)

欢迎指正错误,共同学习、共同进步!!

关注博主新浪博客:http://weibo.com/cpjphone

TFT-lCD常用的接口,TTL(RGB)、LVDS、EDP、MIPI,这篇我们大致说一下这些接口的信号组成已经基本原理。

一、TTL
1、TTL接口概述
TTL(Transistor Transistor Logic)即晶体管-晶体管逻辑,TTL电平信号由TTL器件产生。TTL器件是数字集成电路的一大门类,它采用双极型工艺制造,具有高速度、低功耗和品种多等特点。
TTL接口属于并行方式传输数据的接口,采用这种接口时,不必在液晶显示器的驱动板端和液晶面板端使用专用的接口电路,而是由驱动板主控芯片输出的TTL数据信号经电缆线直接传送到液晶面板的输人接口。由于TTL接口信号电压高、连线多、传输电缆长,因此,电路的抗干扰能力比较差,而且容易产生电磁干扰(EMI)。在实际应用中,TTL接口电路多用来驱动小尺寸(15in以下)或低分辨率的液晶面板。TTL最高像素时钟只有28MHz。
TTL是信号时TFT-LCD唯一能识别的信号,早期的数字处理芯片都是TTL的,也就是RGB直接输出到TFT-LCD。
2、TTL接口的信号类型
驱动板TTL输出接口中一般包含RGB数据信号、时钟信号和控制信号这三大类信号。如下图所示:

(1)RGB数据信号

a、单通道TTL



单通道6bit TTL输出接口
对于6bit单路TTL输出接口,共有18条RGB数据线,分别是R0~R5红基色数据6条,G0~G5绿基色数据6条,B0~B5蓝基色数据6条,共3*6=18条。由于基色RGB数据为18bit,因此,也称18位或18bitTTL接口
单通道8bit TTL输出接口
对于8bit单路TTI,输出接口,共有24条RGB数据线,分别是R0~R7红基色数据8条,B0~B7绿基色数据8条,BO~B7蓝基色数据8条,共3*8=24条。由于基色RGB数据为24bit,因此,也称24位或24bitTTL接口
b、双通道TTL
双通道,也就是两组RGB数据,分为奇通道、偶通道,时钟有的也分为OCLK/ECLK,有的公用一个我们示意图上画了两个,如下所示:

双通道6bit TTL输出接口
对于6bit双路TTL,输出接口,共有36条RGB数据线,分别是奇路RGB数据线18条,偶路RGB数据线18条,3*6*2=36条。由于基色ROB数据为36bit,因此,也称36位或36bitTTL接口
双通道8bit TTL输出接口
对于8bit双路TTL输出接口,共有48条RGB数据线,分别是奇路RGB数据线24条,偶路RGB数据线24条,3*8*2=48条。由于基色RGB数据为48bit,因此,也称48位或48bitTTL接口
(2)时钟信号
是指像素时钟信号,是传输数据和对数据信号进行读取的基准。在使用奇/偶像素双路方式传输RGB数据时,不同的输出接口使用像素时钟的方法有所不同。有的输出接口奇/偶像素双路数据共用一个像素时钟信号,有的输出接口奇/偶两路分别设置奇数像素数据时钟和偶数像素两个时钟信号,以适应不同液晶面板的需要。
(3)控制信号
控制信号包括数据使能信号(或有效显示数据选通信号)DE、行同步信号HS、场同步信号VS。

二、LVDS

1、LVDS接口概述
LVDS,即Low Voltage Differential Signaling,是一种低压差分信号技术接口。克服以TTL电平方式传输宽带高码率数据时功耗大、EMI电磁干扰大等缺点而研制的一种数字视频信号传输方式。LVDS输出接口利用非常低的电压摆幅(约350mV)在两条PCB走线或一对平衡电缆上通过差分进行数据的传输,即低压差分信号传输。采用LVDS输出接口,可以使得信号在差分PCB线或平衡电缆上以几百Mbit/s的速率传输,由于采用低压和低电流驱动方式,因此,实现了低噪声和低功耗。
2、LVDS接口电路的组成
   在液晶显示器中,LVDS接口电路包括两部分,即主板侧的LVDS输出接口电路(LVDS发送端)和液晶面板侧的LVDS输入接口电路(LVDS接收器)。LVDS发送端将TTL信号转换成LVDS信号,然后通过驱动板与液晶面板之间的柔性电缆(排线)将信号传送到液晶面板侧的LVDS接收端的LVDS解码IC中,LVDS接收器再将串行信号转换为TTL电平的并行信号,送往液晶屏时序控制与行列驱动电路。也就是其实TFT只识别TTL(RGB)信号。这部分我们做samsung的方案中用的比较多,因为samsung芯片没有LVDS输出,所以我们用LVDS接口的TFT-LCD的时候就要加一个(RGB-LVDS)转换芯片,这个后面我们重点说。

对于S5P4418内部集成了LVDS所以芯片可以直接和LVDS屏相连,不用再经过LVDS编码芯片

参考exynos4412如下:

3、LVDS接口的信号类型
LVDS信号有数据差分和时钟差分信号组成。如下图所示:


(1)、单通道LVDS

单通道6位数据(如果是6位的Y3M/P这组红色的线没有)

4组差分线,3组信号线,一组时钟线。Y0M、Y0P、Y1M、Y1P、Y2M、Y2P、CLKOUT_M、CLKOUT_P。

单通道8位数据

5组差分线,4组信号线,一组时钟线。分别是Y0M、Y0P、Y1M、Y1P、Y2M、Y2P、CLKOUT_M、CLKOUT_P。

(2)、双通道

LVDS在传输分辨率较高的数据时,抗干扰能力比较强,可是1920X1080以上分辨率时,单路不堪重负,所以有双路接口出现。目的很简单,加快速度,增强抗干扰能力。
双通道6位数据
刚好是单通道的两倍,时钟也是两路,红色部分:Y3M、Y3P、Y3M1、Y3M1这两组信号不接。
双通道8位数据
和前面的比较类似。
三、EDP
    这个接口比较陌生,我接触到一个屏IPAD3的,用于高清屏,比如2048*1536,goole n10的分辨率2536*  也是用这个接口。

(整理中…………)

四、MIPI接口
  这个我们公司有产品用,不过是其他平台的,不是我们调试 ,我也没接触过。只是过一下。感觉这类接口非常类似:比如LVDS、EDP、HDMI、MIPI,都是差分信息+差分时钟。

(整理中…………)
五、TTL(RGB)转换成LVDS  

我们在项目中用到过两颗芯片:SN75LVDS83B 、THC63LVD827(可输出双路LVDS),以SN75LVDS83B来说明。

1、SN75LVDS83B、主控、LVDS接口的LCD关系
如下图所示SN75LVDS83B的应用:

其实就是:把三星芯片输出的TTL(RGB)信号转换成LVDS差分信号输出的LCD接收端。


硬件的接口如下所示:

对于4418来说:

硬件电路如下:

1路8bit LVDS接口,支持1366x768

这是和外屏接口部分;

CPU部分;

2、SN75LVDS83B的参考电路
其实这部分要注意的是LCD的位数,你的屏是16bit、18bit、还是24bit的,不同位数的LCD有不同的硬件接线方法。如下图是samsung exynos4412提到的AP端,在不同位数输出时的接线图。

(1)、24bitRGB 24bit lcd
注意到用到五组差分信号线,四组信号一组时钟。

(2)、24bitRGB 18bit lcd
注意到用到四组差分信号线,三组信号一组时钟,Y3M、Y3P是NC的。AP端RGB的接线方式也不一样,6、7两个bit接地。

如果按(1)中的接线方法(24bit输出),接上18bit的屏。18bit 屏RGB(纯色)信号显示正常,可是有画面、渐变的就不正常。为此跟硬件争论了好久,不过问题解决了就好。做技术实践是非常重要的一个环节,有些事认识上的误区,就会导致工作的失误。

六、RGB转换成EDP
这个我们点过一个屏,不过分辨率太大,我们的系统非常卡,最后就停掉了。
线路图如下所示:

示意图:

edp 的信号和和lvds比较类似,不过多了一个HPD的信号。

参考:http://blog.csdn.net/xubin341719/article/details/9125799

-------------------------------------------

时间: 2024-10-14 12:07:11

android系统平台显示驱动开发简要:LCD常用接口篇『二』的相关文章

android系统平台显示驱动开发简要:Samsung LCD接口篇『二』

平台信息: 内核:linux3.4.39系统:android4.4 平台:S5P4418(cortex a9) 作者:瘋耔(欢迎转载,请注明作者) 欢迎指正错误,共同学习.共同进步!! 关注博主新浪博客:http://weibo.com/cpjphone 参考:S5PV210显示驱动分析与移植(android) 这篇文章中转载的成分比较多,不过大部分内容是从芯片手册上翻译过来.Framebuffer部分是黄冈老师--<嵌入式Linux之我行>这一系列博客中的,嵌入式Linux之我行这系列博客写

android系统平台显示驱动开发简要:LCD基本原理篇『一』

平台信息:内核:linux3.4.39系统:android4.4 平台:S5P4418(cortex a9) 作者:瘋耔(欢迎转载,请注明作者) 欢迎指正错误,共同学习.共同进步!! 关注博主新浪博客:http://weibo.com/cpjphone 从在校时玩单片机的点阵屏,到工作后android系统下的LCD,他们像一条流水线,顺应,简单的原理构成了复杂的结构: 我们来梳理一下: 玩51用的点阵 玩51用的lcd1602 玩51.32用的TFT彩屏 对于点阵的原理相比大多数朋友都非常熟悉,

第一章 Android系统移植与驱动开发概述

本书第一章首先简单概要地介绍了关于Android系统移植和驱动开发的相关内容. 所谓“移植”是指为特定的自己的设备,如手机定制Android的过程.自己开发一些程序(移植)装载在设备上,使得Android系统可以识别设备中的蓝牙,WiFi等,这样就可以使用这些功能了.这些程序大多是支持各种硬件设备的Linux驱动程序. 这一章中介绍了许多在进行Android系统移植和驱动开发前要了解的概念以及要做的准备.接下来主要说的是在Android系统移植过程中的主要工作. Android移植分为两部分:应

Android深度探索(卷1)HAL与驱动开发 第一章&#160;Android系统移植与驱动开发概述 读书笔记

Android深度探索(卷1)HAL与驱动开发 第一章 Android系统移植与驱动开发概述 读书笔记 本章是 Android系统移植与驱动开发概述性的具体讲解.首先,Android被分为了四层架构.在最底层的是Linux内核 .然后分别是C/C++代码库.Android SDK A和应用程序.而Android的移植又分为系统移植和应用移植.系统移植要实现Android操作系统在其他硬件平台上运行起来,其中的关键是Linux的内核.内核必须要完成对平台上运行的各个硬件的识别.所以这就需要Linu

Android系统移植与驱动开发----第一章

第一章 Android系统移植与驱动开发 Android源代码定制完全属于自己的嵌入式系统,但是支持的设备不多,所以要移植,而在移植的过程中使用的不得不提的是驱动开发. Android系统构架主要包括四个层次:Linux内核,C/C++代码库,Android SDK API,应用程序.在第一层Linux中主要包括驱动程序,内存管理,进程管理,电源管理等程序,但是不同版本的系统则驱动也不相同,切记不可通用.在第二层C/C++代码库中有.so文件和虚拟机的Runtime,第三层的java语言是基于l

Android系统移植与驱动开发概述读书心得

第一章是Android系统移植与驱动开发概述,包含了Android系统架构.Android系统移植的主要工作.查看Linux内核版本.Linux内核版本号的定义规则.如何学习Linux驱动开发以及Linux设备驱动等六方面内容 Android系统架构分为四层,分别是Linux内核.C/C++代码库.Android SDK API和应用程序.Linux内核这一层主要包括Linux的驱动程序以及内存管理.进程管理.电源管理等程序. Android移植可分为两部分:应用移植和系统移植.应用移植是指将应

《Android深度探索卷一》第一章Android系统移植与驱动开发概述。

<Android深度探索>第一章讲的是Android系统移植与驱动开发概述.这一章节将对Android以及Linux驱动做一个总体的介绍. Android是一个非常优秀的的嵌入式操作系统.经过几年的发展和演进,Android已经形成了非常完善的系统架构.Android的系统架构分为四层,如下图 Android移植可分为两部分:应用移植和系统移植. Android系统移植是指让Android操作系统在某一个特定硬件平台上运行.使一个操作系统在特定硬件平台上运行的一个首要条件就是该操作系统支持硬件

Android系统移植与驱动开发概述 第一章

Android系统移植与驱动开发概述 1. Android的系统架构分为Linux内核.C/C++代码库.Android SDK API.应用程序四层. 2. Android移植可分为应用移植和系统移植.应用移植是指将应用程序移植到特定的硬件平台.系统移植指的是让Android操作系统在某一特定硬件平台上运行(首要条件是该操作系统支持硬件平台的CPU架构).系统移植的主要任务是移植Linux驱动和HAL(Hardware Abstraction Layer:硬件抽象层,位于应用程序与驱动之间).

第一章 Android系统移植与驱动开发概述 心得笔记

1.想要在自己的设备上运行Android,必须为自己的设备开发特定软件,这个为特定设备定制Android的过程被称为“移植”. 2.Android的系统构架分为:最底层Linux内核,和其他Linux系统的差异很小:再上一层是C/C++代码库:再上一层是Android SDK API,这一层是用java编写的Library:最上层是应用程序,这一层所有用户都要接触到,所有的Android应用程序. 3.Android移植分为应用移植和系统移植,主要工作是移植Linux驱动和移植HAL(硬件抽象层