




免费预览已结束,剩余1页可下载查看
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
ARM驱动TFT-LCD的研究摘要:介绍了S3C2410的LCD控制器的数据和控制管脚,并给出了LCD的控制流程和TFT-LCD的控制器设置规则。参照TFT-LCD CJM10C0101的逻辑要求和时序要求设计了其驱动电路,设置了各主要LCD寄存器。开发了CJM10C0101在嵌入式LINUX下的显示驱动程序,并在CJM10C0101上显示了清晰稳定的画面。实验表明这套装置通用性好,能驱动大部分的TFT-LCD;可移植性强,经过少许修改即可应用在其他嵌入式系统中。它是S3C2410驱动TFT-LCD的一套较佳的解决方案。1 引言 随着科技的发展,ARM在社会各个方面的应用越来越广。S3C2410是三星公司生产的基于ARM920T内核的RISC微处理器,主频可达203MHz,适用于信息家电、SmartPhone、Tablet、手持设备、移动终端等领域。其中,集成的LCD控制器具有通用性,可与大多数的LCD显示模块接口。CJM10C0101是一种用非晶硅TFT作为开关器件的有源矩阵液晶显示器,该模块包括TFT-LCD显示屏!驱动电路和背光源,其接口为TTL电平。分辨率为640480像素,用18bit数据信号能显示262144色。6点视角是最佳视角。 在以三星ARM芯片S3C2410为核心,USB、UART、LCD、TOUCHPANEL等作为输入输出设备,FLASH和SDRAM作存储器,加上固化在FLASH里面的嵌入式LINUX组成的嵌入式系统中,我们致力于使此系统用本国生产的TFT-LCD作显示输出,因此研究设计了驱动CJM10C0101型26.4cm(10.4in)TFTLCD的硬件适配电路与嵌入式LINUX下的显示驱动程序。2 S3C2410 LCD控制器介绍2.1 管脚 S3C2410 LCD控制器用于传输视频数据和产生必要的控制信号,像VFRAME、VLINE、VCLK、VM等等。除了控制信号,S3C2410还有输出视频数据的端口VD23:0,如图1示。 将要用到的管脚描述如下:VCLK像素时钟信号;VD23:0LCD像素输出端口;VM/VDEN/TPLCD驱动器的AC偏置信号(STN)/数据使能信号(TFT)/SECTFT源驱动器数据加载脉冲信号。2.2 寄存器介绍 S3C2410的LCD控制寄存器主要有:LCDCON1寄存器、LCDCON2寄存器、LCDCON3寄存器、LCDCON4寄存器和LCDCON5寄存器等,详情请见参考文献1。2.3 控制流程 LCD控制器由REGBANK、LCDCDMA、VIDPRCS、TIMEGEN和LPC3600组成(见图2)。 REGBANK有17个可编程寄存器组和25616的调色板存储器,用来设定LCD控制器。LCDCDMA是一个专用DMA,自动从帧存储器传输视频数据到LCD控制器,用这个特殊的DMA,视频数据可不经过CPU干涉就显示在屏幕上。 VIDPRCS接受从LCDCDMA来的视频数据并在将其改变到合适数据格式后经VD23:0将之送到LCD驱动器,如4/8单扫描或4双扫描显示模式。 TIMEGEN由可编程逻辑组成,以支持不同LCD驱动器的接口时序和速率的不同要求。TIMEGEN产生VFRAME、VLINE、VCLK、VM信号等。 数据流描述如下:FIFO存储器位于LCDCDMA。当FIFO空或部分空时,LCDCDMA要求从基于突发传输模式的帧存储器中取来数据,存入要显示的图像数据,而这个帧存储器是LCD控制器在RAM中开辟的一片缓冲区。当这个传输请求被存储控制器中的总线仲裁器接收到后,从系统存储器到内部FIFO就会成功传输4个字。FIFO的总大小是28个字,其中低位FIFOL是12个字,高位FIFOH是16个字。S3C2410有两个FIFO来支持双扫描显示模式。在单扫描模式下,只使用一个FIFO(FIFOH)。2.4 TFT控制器操作 S3C2410支持STN-LCD和TFT-LCD,这里我们只介绍其对TFT-LCD的控制。 TIMEGEN产生LCD驱动器的控制信号,如VSYNC、HSYNC、VCLK、VDEN和LEND等。这些控制信号与REGBANK寄存器组中的LCDCON1/2/3/4/5寄存器的配置关系相当密切,基于LCD控制寄存器中的这些可编程配置,TIMEGEN产生可编程控制信号来支持不同类型的LCD驱动器。 VSYNC和HSYNC脉冲的产生依赖于LCDCON2/3寄存器的HOZVAL域和LINEVAL域的配置。HOZVAL和LINEVAL的值由LCD屏的尺寸决定,如下公式:HOZVAL=水平显示尺寸-1 (1)LINEVAL=垂直显示尺寸-1 (2) VCLK信号的频率取决于LCDCON1寄存器中的CLKVAL域。VCLK和CLKVAL的关系如下,其中CLKVAL的最小值是0:VCLK(Hz)=HCLK/(CLKVAL+1)2 (3) 帧频率是VSYNC信号的频率,它与LCDCON1和LCDCON2/3/4寄存器的VSYNC、VBPD、VFPD、LINEVAL、HSYNC、HBPD、HFPD、HOZVAL和CLKVAL都有关系。大多数LCD驱动器都需要与显示器相匹配的帧频率,帧频率计算公式如下:FrameRate=1/(VSPW+1)+(VBPD+1)+(LINEVAL+1)+(VFPD+1)(HSPW+1)+ (HBPD+1)+(HFPD+1)+(HOZVAL+1)2(CLKVAL+1)/(HCLK) (4) 参照CJM10C0101的参数和公式(1)、(2),可得出HOZVAL=639;LINEVAL=479。其余主要寄存器的值在下面给出。3 CJM10C0101的逻辑、时序要求2 各时间参数见表1。 根据时序要求,我们设定VM/VDEN信号作LCD的ENAB信号,VCLK信号作LCD的NCLK信号。要想得到合适的VM和VCLK波形,就要正确设定寄存器的值,根据寄存器的值与VM和VCLK波形的关系,我们设定了如下关键寄存器的值: HSPW=10;HBPD=100;HFPD=47; VSPW=1;VBPD=37;VFPD=4S3C2410的HCLK工作频率为100MHz左右,因此根据公式(3)设CLKVAL=1。这些值将在驱动程序中得到具体体现。4 硬件驱动电路组成 因为开发板引出管脚有限,只引出了16根视频数据线,所以我们只利用这16根数据线扩充为18根作CJM10C0101的数据输入线,即RB信号的最低两位共用一根数据线。CJM10C0101要求其电源电压Vdd典型值为5V,并且LCD数据和控制信号的高电平输入电压V在3.5V,Vdd范围内,低电平输入电压Vil在0,1.5V范围内,故用4片74LVC4245进行35V的逻辑电平转换,具体电路如图4。同时考虑到通用性,使74LVC4245的电源为3V/5V可选,这样也能驱动3V逻辑电平的TFT-LCD。 5 嵌入式Linux下驱动程序的开发6 FrameBuffer是出现在Linux2.2.xx内核当中的一种驱动程序接口,对应的源文件在linux/drivers/video/目录下,总的抽象设备文件为fbcon.c。这种接口将显示设备抽象为帧缓冲区。用户可以将它看成是显示内存的一个映像。 在使用帧缓冲时,Linux是将显卡置于图形模式下的。 我们根据以上对LCD各主要寄存器设置的分析得出的结果,开发了基于FrameBuffer机制的S3C2410 fb驱动程序。下面是经过调试成功的部分代码,作用是对显示屏幕初始化和设置LCD控制寄存器的值。/*s3c2410fb.c */#ifdef CONFIG-S3C2410-SMDKstatic struct s3c2410fb-mach-info xxx-stn-info-initdata= pixclock:174757, bpp:16,#ifdef CONFIG-FB-S3C2410-EMUL /显示屏幕初始化 xres: 96,#else xres: 640,#endif yres: 480, hsync-len: 5, vsync2len: 1, left-margin: 7, upper-margin: 1, right-margin: 3, lower-margin: 3, sync: 0, cmap-static: 1, reg: /设置LCD控制寄存器的值 lcdcon1:LCD1-BPP-16T|LCD1-PNR-TFT|LCD1-CLKVAL(1), lcdcon2:LCD2-VBPD(37)|LCD2-VFPD(4)|LCD2-VSPW(1), lcdcon3:LCD3-HBPD(100)|LCD3-HFPD(47), lcdcon4:LCD4-HSPW(10)|LCD4-MVAL(13), lcdcon5:LCD5-FRM565|LCD5-HWSWP|LCD5-PWREN, ,;#endif6 结果 经过硬件方面的调试修改,在S3C2410开发板的VCLK和VM脚成功得到了CJM10C0101所需的时钟信号和复合控制信号,见图5,6,7和8;在软件方面修改了S3C2410的驱动程序,经编译整个系统后再重新写到
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 微通道集成技术对凸轮轴油封内流场调控及泄漏率降低的流体动力学仿真
- 微纳加工工艺下超薄金属片层间热膨胀系数失配引发的应力集中问题解析
- 循环经济视角下纯棉制帽边角料再生利用的产业闭环设计
- 循环经济视角下工业废渣中2,6-二氨基嘌呤多步回收的能质耦合模型
- 2025年5G网络的网络覆盖范围
- 异构电源兼容性壁垒对焊接质量的影响及破解方案
- 建筑光伏一体化场景下分体式筒灯的隐形式散热结构创新
- 浙江省杭州市2025年八年级上学期月考英语试题卷附答案
- 水电站选址与可行性研究方案
- 建筑工程垂直度控制方案
- 公司内部程序文件(格式模版)
- 泛光施工招标文件
- 旅游策划实务整套课件完整版电子教案课件汇总(最新)
- 小学生汉字听写大赛题库
- DB23∕T 2661-2020 地热能供暖系统技术规程
- 人工挖孔桩施工监测监控措施
- 第一框 关爱他人
- 国家职业技能标准 (2021年版) 6-18-01-07 多工序数控机床操作调整工
- 办公楼加层改造施工组织设计(100页)
- 渗透检测培训教材(1)
- 空调专业常用英文词汇
评论
0/150
提交评论