嵌入式Linux裸机开发(十五)——LCD

一、LCD简介LCD(Liquid Crystal Display)是液晶显示器简称。LCD的构造是在两片平行的玻璃基板当中放置液晶盒,下基板玻璃上设置TFT(薄膜晶体管),上基板玻璃上设置彩色滤光片,通过TFT上的信号与电压改变来控制液晶分子的转动方向,从而达到控制每个像素点偏振光出射与否而达到显示目的。

1、LCD类型按照背光源的不同,LCD可以分为CCFL和LED两种。A、CCFL指用CCFL(冷阴极荧光灯管)作为背光光源的液晶显示器(LCD)。CCFL 的优势是色彩表现好,不足在于功耗较高。B、LED指用LED(发光二极管)作为背光光源的液晶显示器(LCD),通常意义上说WLED(白光LED)。LED的优势是体积小、功耗低,因此用 LED作为背光源,可以在兼顾轻薄的同时达到较高的亮度。其不足主要是色彩表现比 CCFL差,所以专业绘图LCD大都仍采用传统的CCFL作为背光光源。

2、技术参数A、对比度LCD制造时选用的控制IC、滤光片和定向膜等配件,与面板的对比度有关,对一般用户而言,对比度能够达到350:1就足够了,但在专业领域这样的对比度并不能满足用户的需求。相对CRT显示器轻易达到500:1甚至更高的对比度而言,只有高档液晶显示器才能达到如此程度。市场上三星、华硕、LG等一线品牌如今的LCD显示器均可以达到1000:1对比度这一级别。B、亮度LCD是一种介于固态与液态之间的物质,本身是不能发光的,需要借助额外的光源才行。因此,灯管数目关系着液晶显示器亮度。最早的液晶显示器只有上下两个灯管,普及型的最低也是四灯,高端的是六灯。四灯管设计分为三种摆放形式:一种是四个边各有一个灯管,但缺点是中间会出现黑影,解决的方法就是由上到下四个灯管平排列的方式,最后一种是“U”型的摆放形式,其实是两灯变相产生的两根灯管。六灯管设计实际使用的是三根灯管,厂商将三根灯管都弯成“U”型,然 后平行放置,以达到六根灯管的效果。C、信号响应时间指的是液晶显示器对于输入信号的反应速度,也就是液晶由暗转亮或由亮转暗的反应时间(亮度从10%-->90% 或者90%-->10%的时间),通常是以毫秒(ms)为单位。人眼存在“视觉残留”的现象,高速运动的画面在人脑中会形成短暂的印象。动画片、电影等一直到现在最新的游戏正是应用了视觉残留的原理,让一系列渐变的图像在人眼前快速连续显示,便形成动态的影像。人能够接受的画面显示速度一般为每秒24张,这也是电影每秒24帧播放速度的由来,如果显示速度低于这一标准,人就会明显感到画面的停顿和不适。按照这一指标计算,每张画面显示的时间需要小于40ms。这样,对于液晶显示器来说,响应时间40ms就成了一道 坎,高于40ms的显示器便会出现明显的画面闪烁现象,让人感觉眼花。要是想让图像画面达到不闪的程度,则就最好要达到每秒60帧的速度。D、可视角度LCD的显示原理中,当背光源通 过偏极片、液晶和取向层之后,输出的光线便具有了方向性,大多数光都是从屏幕中垂直射出来的,所以从某一个较大的角度观看液晶显示器时,便不能看到原本的颜色,甚至只能看到全白或全黑。目前为止有三种比较流行的技术解决,分别是:TN+FILM、 IPS(IN-PLANE -SWITCHING)和MVA(MULTI-DOMAIN VERTICAL alignMENT)。可视角度分为平行和垂直可视角度,水平角度是以液晶的垂直中轴线为中心,向左和向右移动,可以清楚看到影像 的角度范围。垂直角度是以显示屏的平行中轴线为中心,向上和向下移动,可以清楚看到影像的角度范围。可视角度以“度”为单位,比较常用的标注形式是直接标出总水平、垂直范围,如:150/120度,目前最低的可视角度为120/100度(水平/垂直),低于这个值则不能接受,最好能达到150/120度以上。

3、特性LCD特性如下:低压微功耗外观小巧精致,厚度只有6.5~8mm被动显示型(无眩光,不刺激人眼,不会引起眼睛疲劳)显示信息量大(因为像素可以做得很小)易于彩色化(在色谱上可以非常准确的复现)无电磁辐射(对人体安全,利于信息保密)长寿命(寿命极长,但是液晶背光寿命有限,可以更换)

二、LCD接口技术LCD的接口依据LCD的驱动方式和控制方式有:MCU模式,RGB模式,SPI模式,VSYNC模式,MDDI模式,DSI模式。应用较多的有MCU模式和RGB模式。MCU接口和RGB接口主要的区别是:A、MCU接口方式:显示数据写入DDRAM,常用于静止图片显示。B、RGB接口方式:显示数据不写入DDRAM,直接写屏,速度快,常用于显示视频或动画用。RGB模式是大屏采用较多的模式,数据位传输有6位,16位和18位,24位之分。连线一般有:VSYNC,HSYNC,DOTCLK,CS,RESET,有的也需要RS,剩下就是数据线。RGB-LCD的显存是由系统内存充当的,因此其大小只受限于系统内存的大小。RGB屏只需显存组织好数据。启动显示后,LCD-DMA会自动把显存中的数据通过RGB接 口送到LCM。而MCU屏则需要发送画点的命令来修改MCU内部的RAM(即不能直接写MCU屏的RAM)。所以RGB显示速度明显比MCU快,而且播放视频方面,MCU-LCD也比较慢。TFT-lCD常用的接口有TTL(RGB)、LVDS、EDP、MIPI。

1、TTL(RGB)TTL(Transistor Transistor Logic)即晶体管-晶体管逻辑,TTL电平信号由TTL器件产生。TTL接口属于并行方式传输数据的接口,采用这种接口时,不必在液晶显示器的驱动板端和液晶面板端使用专用的接口电路,而是由驱动板主控芯片输出的TTL数据信号经电缆线直接传送到液晶面板的输人接口。TTL 接口信号电压高、连线多、传输电缆长,因而电路的抗干扰能力比较差,而且容易产生电磁干扰(EMI)。在实际应用中,TTL接口电路多用来驱动小尺寸 (15in以下)或低分辨率的液晶面板。TTL最高像素时钟只有28MHz。TTL是信号时TFT-LCD唯一能识别的信号,早期的数字处理芯片都是TTL的,也就是RGB直接输出到TFT-LCD。RGB接口:VD[23:0]:24根数据线,用爱传输图像数据HSYNC:水平同步信号,VSYNC:垂直同步信号,VCLK:像素时钟,VDEN:LEND:行结束标志

2、LVDSLVDS,即Low Voltage Differential Signaling, 是一种低压差分信号技术接口。克服以TTL电平方式传输宽带高码率数据时功耗大、EMI电磁干扰大等缺点而研制的一种数字视频信号传输方式。LVDS输出接口利用非常低的电压摆幅(约350mV)在两条PCB走线或一对平衡电缆上通过差分进行数据的传输,即低压差分信号传输。采用LVDS输出接口,可以使得信号在差分PCB线或平衡电缆上以几百Mbit/s的速率传输,由于采用低压和低电流驱动方式,因此,实现了低噪声和低功耗。

三、LCD显示图像过程LCD-TFT的图像显示过程如下图:

1、像素像素是图像元素简称,是指基本原色素及其灰度的基本编码。像素只是分辨率的尺寸单位,而不是画质。像素是构成数码影像的基本单元,通常以像素每英寸PPI(pixels per inch)为单位来表示影像分辨率的大小。通过控制每一个像素显示一定的颜色可以显示一幅完整的图像。

2、图像扫描加载LCD图像通过从左到右,从上到下的顺序加载每一个像素,进而加载整幅图像。

3、LCD驱动器、控制器LCD控制器是SoC的内部外设,用于产生数字信号,按照一定的通信时序与LCD驱动器通信,控制LCD驱动器工作。LCD驱动器集成在LCD面板,通过模拟电信号驱动LCD面板的液晶分子旋转发光。

四、LCD参数

1、RGB接口时序HSPW:水平同步信号脉冲宽度HBPD:水平同步信号前肩HFPD:水平同步信号后肩VSPW:垂直同步信号脉冲宽度VBPD:垂直同步信号前肩VFPD:垂直同步信号后肩行数据格式:HSPW+HBPD+有效信息数据+HFPD(一个VDEN周期)帧数据格式:VSPW+VBPD+帧有效信息+VFPD具体的参数值查阅LCD技术文档。

2、LCD显示参数像素pixel:图像元素像素间距pitch:相邻连个像素中心之间的距离分辨率resolution:LCD屏幕横向和纵向的像素个数,分辨率与屏幕尺寸无关。清晰度:影像上各细部影纹及其边界的清晰程度像素深度bpp(bits per pixel):一个像素由多少位保存

五、LCD编程实践

1、电路原理图查阅查阅LCD文档LCD时序部分,获取LCD的时序参数#define HSPW(10)#define HBPD(40 - 1)#define HFPD(210)#define VSPW(7)#define VBPD(23)#define VFPD(22)#define ROW(480)#define COL(800)#define HOZVAL(COL-1)#define LINEVAL(ROW-1)查阅核心板电路原理图LCD相关部分,相应GPIO引脚为GPF0-GPF3查阅底板电路原理图LCD部分,背光打开引脚为XpwmTOUT1,对应GPIO为GPD0。

2、工程项目工程项目以SDRAM初始化项目为模本,主要是在LCD屏幕画像素、横线、竖线、斜线、圆。源码见附件。

本文出自 “生命不息,奋斗不止” 博客,请务必保留此出处http://9291927.blog.51cto.com/9281927/1787955

linux开发板lcd按压,嵌入式Linux裸机开发(十五)——LCD相关推荐

  1. 北京迅为i.mx6ull终结者开发板使用手册+嵌入式Linux开发指南+裸机手册下载地址

    i.MX6ULL终结者三大手册,加速学习和开发速度,一秒化无形! <嵌入式Linux开发指南>+<开发板使用手册>+<裸机使用手册> 详细手册点击链接下载:http ...

  2. 嵌入式linux/鸿蒙开发板(IMX6ULL)开发(一) 嵌入式Linux开发基本概念以及开发流程介绍

    文章目录 1.linux开发初了解 1.1 嵌入式Linux开发的基本概念 1.1.1关于Git的背景介绍 1.1.2关于repo的背景介绍 1.1 3 一些关于此背景知识的介绍 1.1.4关于Lin ...

  3. 嵌入式Linux开发系列之一: 走进嵌入式Linux的世界

    走进嵌入式Linux的世界 一.嵌入式系统 嵌入式系统是以应用为中心,以计算机技术为基础,并且软硬件是可裁剪的,适用于对功能.可靠性.成本.体积.功耗等有严格要求的专用计算机系统.嵌入式系统最典型的特 ...

  4. 嵌入式3D-嵌入式3D开发环境的建立-嵌入式linux系统

    由于毕业设计所要进行的是3D图像的开发,那么就必须有一个高效,稳定,安全,可移植性强的嵌入式操作系统,有考虑到我们是一般学生用户,所以也要经济实惠.因此我选择的嵌入式操作系统是Linux.Linux具 ...

  5. linux 开发板模拟u盘,linux 开发板(Linux USB Gadget) 模拟u盘

    前几天,搞了 hid设备,通过usb hid设备和windows进行通信.现在开始搞这个 mass storge 首先说明 环境:linux版本:3.15        使用开发板:SAMa5d3   ...

  6. 尚观linux视频配套教程,尚观最新嵌入式Linux基础视频教程 98集嵌入式Linux巨制视频教程 新手必备...

    尚观最新嵌入式Linux基础视频教程 98集嵌入式Linux巨制视频教程 新手必备 5.jpg (67.09 KB, 下载次数: 0) 2018-4-16 09:34 上传 1.jpg (44.17 ...

  7. arm11 s3c6410 开发板比较 哪个公司的arm11开发板好? arm11开发板推荐

    代理arm11开发板已经几个月了,说下我自己的看法. 我首先用语言描述一下国内主流的arm开发板情况,个人对各个公司开发板的看法,仅代表个人意见,没有针对某个公司的意思,由于6410 的开发难度以及工 ...

  8. arm11 s3c6410 开发板 学习板 工业开发板 比较 国内主流的arm开发板比较

    代理arm11开发板已经几个月了,说下我自己的看法. 我首先用语言描述一下国内主流的arm开发板情况,个人对各个公司开发板的看法,仅代表个人意见,没有针对某个公司的意思,由于6410 的开发难度以及工 ...

  9. 迅为国产开发板值得入手的三款开发板

    迅为国产开发板值得入手的三款开发板 瑞芯微RK3568: RK3568处理器 瑞芯微 RK3568 芯片采用 22nm 制程工艺,搭载一颗四核 Cortex-A55 处理器和 Mali G52 2EE ...

最新文章

  1. ETH网络要爆炸,未来Token的最佳选择注定是BCH
  2. 在 emu8086 中学习汇编In,Out指令
  3. Mysql之一:mysqldump和LVM逻辑卷快照
  4. bzoj 2435: [Noi2011]道路修建 树上 dp
  5. Delphi的Socket编程要分几步?
  6. php中isdefin,在PHP中定義全局常量數組的最“優雅”方法是什么
  7. Java线程池newSingleThreadExecutor newFixedThreadPool newCachedThreadPool newScheduledThreadPool
  8. 银行家舍入VS四舍五入(下):.NET发现之旅(四)
  9. HDU - 5934
  10. 打钱!我的数据库被黑客勒索了!
  11. C#Panel 控件的使用
  12. 风变编程python第一关_风变编程【学习笔记】,第8关学习心得及代码扩展
  13. 使用 matlab 数字图像处理(六)—— 空域滤波
  14. [原创]Tsys 2.0 beta 官方版无法使用自定义SQ
  15. Java23种设计模式(一)
  16. 用 Swift、Foursquare API 和 Realm 創建一個咖啡店 App
  17. 已知三边求三角形夹角度数
  18. android tv 国内使用,不花钱解决 Android TV 原生系统国内APP不显示图标
  19. 中国移动dns服务器没有响应,江苏移动宽带DNS设置方法及常见问题
  20. 注册oracle驱动,[XXX] 注册了JDBC驱动程 序 [oracle.jdbc.OracleDriver]

热门文章

  1. 主动学习(Active Learning)简介综述汇总以及主流技术方案
  2. Python MoviePy中文教程导览及可执行音视频剪辑工具下载
  3. qt mingw32编译项目报错:Nothing to be done for 'first'.
  4. ¥3EG踩坑记录¥Vitis HLS xfopencv库的安装解决minGW32-make 编译opencv时 error
  5. 关于移动端token解决方案
  6. Python第一阶段学习总结
  7. 4月27日—5月1日四年级课程表
  8. 目标检测算法汇集介绍
  9. 健康保健--维多利亚宣言
  10. 物联网安全技术——思维导图