LCD接口和RGB介绍【转】
转自:https://www.cnblogs.com/hzl6255/p/5470583.html
1. 介绍
Video的显示离不开LCD, 所以这里简单介绍一下LCD的接口和RGB
LCD的全称是Liquid Crystal Display 的简称, 即液晶显示器
LCD目前已经取代CRT, 成为TV、PC等的标配
2. 接口类型
首先我们以传递的信号类型来区分主要有两大类:
- 模拟信号:
- VGA: Video Graphics Array
- 数字信号
- TTL: Transistor Transisor Logic
- LVDS: Low Voltage Differential Signaling
- TMDS: Transition Minimized Differential Signal
连接方式实例如下图所示
2.1 TTL接口
LCD TTL接口中一般包含
数据信号: 指RGB数据信号, 如R0~R5、G0~G5、B0~B5
时钟信号: 像素时钟信号(DCLK), 是传输数据和对数据信号进行读取的基准
控制信号: 包括数据有效信号(DE), 行同步信号(HSYNC)、场同步信号(VSYNC)
2.2 LVDS接口
LVDS是一种低压差分信号技术掊, 它是美国国家半导体公司为了克服以TTL电平方式传输宽带高码率数据时功耗大、电磁干扰大等缺点而研制的一种数字视频信号传输方式
传递的信号与TTL类型, 不累叙
2.3 TMDS接口
TMDS, 即过渡调制差分信号, 也被称为最小化传输差分信号
是一种微分信号机制, 运行先进的编码算法, 把8bit数据(R、G、B中每路基色信号)通过最小转换编码为10bit数据
这10bit数据包含行场同步信号信息、时钟信息、数据DE、纠错等, 经过DC平衡后, 采用差分信号传输数据
它和LVDS、TTL相比有较好的电磁兼容性能, 可以用低成本的专用电缆实现长距离、高质量的数据信号传输
3. RGB
从上面的接口可以发现, 从LCD传递的是RGB数据
这也是本人比较关注的东西
RGB一般是指RGB色彩模型(RGB color model), 是工业界的一种颜色标准
通过对红(Red)、绿(Green)、蓝(Blue)三个颜色通道的变化以及它们相互之间的叠加来得到各式各样的颜色的
RGB即是代表红、绿、蓝三个通道的颜色, 这个标准几乎包括了人类视力所能感知的所有颜色
通常一个颜色通道由8bit表示, 即每个颜色通道值得范围是0~255, 通常称RGB888/RGB24
三个颜色通道总共能组合出约1678(256×256×256)万种色彩, 通常也被简称为1600万色或千万色, 也称为24位色(2^24)
在实际的使用中, 除了RGB24, 还有RGB555,、RGB565、RGB32(另8bit用作alpha通道或者不用)
|
颜色名称 |
Red |
Green |
Blue |
| 黑色 | 0 | 0 | 0 |
| 蓝色 | 0 | 0 | 255 |
| 绿色 | 0 | 255 | 0 |
| 青色 | 0 | 255 | 255 |
| 红色 | 255 | 0 | 0 |
| 洋红色 | 255 | 0 | 255 |
| 黄色 | 255 | 255 | 0 |
| 白色 | 255 | 255 | 255 |
4. YUV
颜色模型除了RGB, 还有CIE, YUV
其中YUV又包括YUV(PAL), Y'CbCr(是YUV压缩和偏移的版本)
通常YUV(PAL)用于彩色电视机, Y'CbCr在计算机系统中应用非常广泛, 我们一般说的YUV指的是Y'CbCr
历史上, YUV被用于电视系统PAL (NTSC里面使用YIQ, 是YUV color space的变种)的颜色信号的模拟编码
Y'PbPr/Y'CbCr 则被用于视频和静态图像处理系统中的颜色编码(例如MPEG/JPEG)
Y′是亮度(luma)分量, Cb指蓝色色度(chroma)分量,而Cr指红色色度(chroma)分量
Y′是区别于Y(亮度, luminance), 是光强(light)基于Gamma校正的RGB三原色的非线性编码
当只有Y′时, 显示出来的是黑白图像, 详细可参看下图
根据采样格式的不同 Y'CbCr又可分为Y′CbCr 4:2:0、Y′CbCr 4:2:2、Y′CbCr 4:1:1和Y′CbCr 4:4:4
以Y′CbCr 4:1:1为例, 其含义为: 每个点保存一个8bit 的亮度值(也就是Y′值), 每 2x2 个点保存一个Cr 和Cb 值, 图像在肉眼中的感觉不会起太大的变化

用RGB24模型, 每个点需要8x3=24 bits, 而Y′CbCr 4:1:1仅需要 8+(8/4)+(8/4)=12bits, 平均每个点占12bits
这样就把图像的数据压缩了一半
5. FOURCC
我们知道RGB/YUV按照不同采样格式有不同的类型, 在实际的使用中该如何简单快速地区分它们呢, 这里就得提到FOURCC了
FOURCC(four-character code)是一个4bit序列, 用来唯一标识一个数据格式(主要用于视频编解码)
同时也包括了RGB和YUV的格式, 当然FOURCC所定义远不止它们
在Linux中, 可以通过v4l2_fourcc宏来定义该值(include/linux/Videodev2.h)
比较常用的RGB和YCbCr格式有

/* RGB formats */
#define V4L2_PIX_FMT_RGB555 v4l2_fourcc('R', 'G', 'B', 'O') /* 16 RGB-5-5-5 */
#define V4L2_PIX_FMT_RGB565 v4l2_fourcc('R', 'G', 'B', 'P') /* 16 RGB-5-6-5 */
#define V4L2_PIX_FMT_RGB24 v4l2_fourcc('R', 'G', 'B', '3') /* 24 RGB-8-8-8 */
#define V4L2_PIX_FMT_RGB32 v4l2_fourcc('R', 'G', 'B', '4') /* 32 RGB-8-8-8-8 */ /* two planes -- one Y, one Cr + Cb interleaved */
#define V4L2_PIX_FMT_NV12 v4l2_fourcc('N', 'V', '1', '2') /* 12 Y/CbCr 4:2:0 */
#define V4L2_PIX_FMT_NV16 v4l2_fourcc('N', 'V', '1', '6') /* 16 Y/CbCr 4:2:2 */

参考:
<Android LCD>
<常见视频接口介绍>
<各种视频信号格式及端子介绍>
<深入理解color model(颜色模型)>
LCD接口和RGB介绍【转】的更多相关文章
- LCD接口和RGB介绍
1. 介绍 Video的显示离不开LCD, 所以这里简单介绍一下LCD的接口和RGB LCD的全称是Liquid Crystal Display 的简称, 即液晶显示器LCD目前已经取代CRT, 成为 ...
- LCD接口(转载)
LCD接口分类 1. I8080接口,我觉得应该就是所谓的8080,通常会用在12864屏上面,且有内部sdram,不需要实时的刷新图片,速度有限制, 支持的数据宽度有8/9/16/18bit,接 ...
- 【转】Android LCD(三):Samsung LCD接口篇
关键词:android LCD控制器 Framebuffer PWM 平台信息:内核:linux2.6/linux3.0系统:android/android4.0 平台:samsung exynos ...
- Android LCD(三):Samsung LCD接口篇
关键词:android LCD控制器 Framebuffer PWM 平台信息: 内核:linux2.6/linux3.0 系统:android/android4.0 平台:samsung exy ...
- 对LCD接口的认识
LCD接口类型: 1.首先我们以传递的信号类型来区分主要有两大类:- 模拟信号: - VGA: Video Graphics Array- 数字信号 - TTL: Transistor Transis ...
- List接口:(介绍其下的两个实现类:ArrayList和LinkedList)
以下介绍接口: List接口:(介绍其下的两个实现类:ArrayList和LinkedList) ArrayList和数组非常类似,其底层①也用数组组织数据,ArrayList是动态可变数组. ① ...
- JDBC常用接口、类介绍
JDBC常用接口.类介绍 JDBC提供对独立于数据库统一的API,用以执行SQL命令.API常用的类.接口如下: DriverManager 管理JDBC驱动的服务类,主要通过它获取Connectio ...
- android系统平台显示驱动开发简要:Samsung LCD接口篇『三』
平台信息: 内核:linux3.4.39系统:android4.4 平台:S5P4418(cortex a9) 作者:瘋耔(欢迎转载,请注明作者) 欢迎指正错误,共同学习.共同进步!! 关注博主新浪博 ...
- (转)常见LCD接口
LCD常用接口原理 点击打开链接 点击打开链接 点击打开链接 点击打开链接 点击打开链接 点击打开链接 点击打开链接 点击打开链接 xubin 平台信息:内核:linux2.6/linux3.0系统: ...
随机推荐
- kali linux 2.0 web 渗透测试 电子书
原创 2017-05-31 玄魂工作室 玄魂工作室 打起精神,重新开启订阅号的原创文章写作工作,但是需要点时间,请耐心等待. 求资料的同学,没有及时回复的,请再次留言,我会尽快处理.今天分享两本电子书 ...
- Mego开发文档 - 快速开始
Mego 快速开始 我们将创建一个简单的数据新增及查询来演示 Mego 的使用过程.演示中都是使用 Visual Studio 2017 作为开发工具,SQL Server 2012 作为数据库. 创 ...
- SpringBoot使用log4j
1.添加log4j相关依赖 在pom.xml文件中添加相关依赖: <!--配置log4j--> <dependency> <groupId>org.springfr ...
- Python入门之三元表达式\列表推导式\生成器表达式\递归匿名函数\内置函数
本章目录: 一.三元表达式.列表推导式.生成器表达式 二.递归调用和二分法 三.匿名函数 四.内置函数 ================================================ ...
- python基础——面向过程的编程思想及举例
面向过程的编程思想 1.面向过程的编程思想及举例 写程序时: 要先想功能,分步实现 2. os模块中walk输出目录中文件路径 os.walk() 方法用于通过在目录树中游走输出在目录中的文件名,向上 ...
- Python基础-用户验证
一.项目需求 1.根据用户名和密码,验证用户是否可登陆 2.允许一次执行可验证三次 3.当用户名输错三次后,该用户名锁定,永久不可登陆 二.代码如下 #!/usr/bin/env python #-* ...
- 移动端,input输入框被手机输入法解决方案
当界面元素靠下时候的时候,input输入框会被系统的键盘遮挡. 我们可以让界面向上移动一定距离去避免遮挡. $('#money').click(function(){ setTimeout(funct ...
- jacascript 鼠标事件和键盘事件
前言:这是笔者学习之后自己的理解与整理.如果有错误或者疑问的地方,请大家指正,我会持续更新! 鼠标事件 鼠标事件共10类,包括click.contextmenu(右键).dblclick(双击).mo ...
- border三角形阴影(不规则图形阴影)和多重边框的制作
前言:这是笔者学习之后自己的理解与整理.如果有错误或者疑问的地方,请大家指正,我会持续更新! 1. border的组合写法 border:border-width border-style borde ...
- Java高级篇(三)——JDBC数据库编程
JDBC是连接数据库和Java程序的桥梁,通过JDBC API可以方便地实现对各种主流数据库的操作.本篇将介绍一下如何使用JDBC操作数据库(以MySQL为例). 一.JDBC JDBC制定了统一访问 ...