网站导航: 首页 > 设计参考 > 正文 文章搜索
ARM S3C2410驱动TFT-LCD的研究[图]
 
文章编号:
081228164044
文章分类: 单片机 ARM
点 击:
...
关 键 词: S3C2410,TFT-LCD
文章来源:
网络,作者:张义磊
摘 要:
介绍了S3C2410的LCD控制器的数据和控制管脚,并给出了LCD的控制流程和TFT-LCD的控制器设置规则。参照TFT-LCD CJM10C0101的逻辑要求和时序要求设计了其驱动电路。开发了CJM10C0101在嵌入式LINUX下的显示驱动程序,并在C

4 硬件驱动电路组成
    因为开发板引出管脚有限
,只引出了16根视频数据线,所以我们只利用这16根数据线扩充为18根作CJM10C0101的数据输入线,即RB信号
的最低两位共用一根数据线。CJM10C0101要求其电源电压Vdd典型值为5V,并且LCD数据和控制信号的高电平输入电压V在[3.5V,Vdd]范围内,低电平输入电压Vil在[0,1.5V]范围内,故用4片74LVC4245进行3~5V的逻辑电平转换,具体电路如图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控制寄存器的值。

 
  1. /*s3c2410fb.c  */  
  2. ………………   
  3. #ifdef CONFIG-S3C2410-SMDK   
  4. static struct s3c2410fb-mach-info xxx-stn-info-initdata={   
  5.     pixclock:174757,   bpp:16,   
  6. #ifdef CONFIG-FB-S3C2410-EMUL      //显示屏幕初始化   
  7.   xres:  96,   
  8. #else   
  9.   xres:  640,   
  10. #endif   
  11.   yres:  480,   
  12.   hsync-len: 5, vsync2len: 1,   
  13.   left-margin: 7, upper-margin: 1,   
  14.   right-margin: 3, lower-margin: 3,   
  15.   sync: 0, cmap-static: 1,   
  16.   reg:{                //设置LCD控制寄存器的值   
  17.      lcdcon1:LCD1-BPP-16T|LCD1-PNR-TFT|LCD1-CLKVAL(1),   
  18.      lcdcon2:LCD2-VBPD(37)|LCD2-VFPD(4)|LCD2-VSPW(1),   
  19.      lcdcon3:LCD3-HBPD(100)|LCD3-HFPD(47),   
  20.      lcdcon4:LCD4-HSPW(10)|LCD4-MVAL(13),   
  21.      lcdcon5:LCD5-FRM565|LCD5-HWSWP|LCD5-PWREN,   
  22.      },   
  23. };   
  24. #endif   
  25. ………………  

6 结果
    经过硬件方面的调试修改,在S3C2410开发板的VCLK和VM脚成功得到了CJM10C0101所需的时钟信号和复合控制信号,见图5,6,7和8;在软件方面修改了S3C2410的驱动程序,经编译整个系统后再重新写到Flash中,重启后能正确显示原系统的静态启动画面,并且画面清晰稳定,达到了预期的效果。这套装置可用在工业控制和车载通信等领域作显示输出设备,再加上适当的触摸屏可组成方便可靠的输入输出设备。
 
图5 VCLK波形(tc=1/25.28MHz=39.56ns)                    图6 VM波形(t1=16.6ms)
 
图7 VM波形(t3=1/31.6kHz=31.65Ls)                         图8 VM波形(t1-t2=1.432ms)

参 考 文 献:
[1]SamsungElectronics.User's Manual S3C2410X 32-Bit RISC Microprocessor[Z].2003.372-413.
[2]吉林彩晶数码高科显示器有限公司.TFT-LCD模块产品说明书CJM10C0101[Z].2000.
[3]贾金萍,张鹏,张志东.液晶显示器电源管理的电路设计[J].液晶与显示,2004,19(3):2132217.
[4]杨宏业,张跃,何荣森.基于SA1110微处理器的掌上电脑液晶显示器的设计与实现[J].电子技术应用,2003,(1):10212.
[5]丁国华,胡容强.S3C44B0X内置的LCD控制器及其应用[J].世界电子元器件,2004,2(105):38241.
[6]魏永明,骆刚,姜君,等译.Linux设备驱动程序(第二版)[M].北京:中国电力出版社,2002.

 
相关文章:
s3c2410 Timer工作原理[图]
虚拟SPI时序在TC77与S3C2410通信中的应用[图]
s3c2410 MMU(存储器管理单元)讲解[图]
s3c2410 CACHES,WRITE BUFFER讲解[图]
S3C2410中的脉宽调制定时器(PWM)
S3C2410 中断程序的实现
s3c2410 watchdog详解
s3c2410 中断异常处理[图]
基于ARM9芯片S3C2410a的GPRS数据终端设计
ARM系统中DMA方式在数据采集中的应用[图]
AD7888与S3C2410的SPI接口及Linux下嵌入式驱动的实现[图]
基于s3c2410的ARMer9开发平台的使用
ARM S3C2410硬件手册重点
基于ARM S3C2410与TMS320C6416的接口设计[图]
S3C2410上Jffs2的移植
MINIGUI在S3C2410开发板的移植
mplayer在S3C2410上的移植
在S3C2410上移植yaffs2文件系统
S3C2410 bootloader(vivi)阅读笔记
s3c2410 LCD图片显示
S3C2410 LCD 驱动程序移植及GUI程序编写[图]
S3C2410X开发总结及心得
U-Boot在S3C2410开发板上的移植
S3C2410初始化
S3C2410通过IIS总线与音频芯片UDA1380进行通信
在S3C2410上移植bluetooth(蓝牙)
S3c2410软件调试总结
S3C2410上触摸屏的应用实例
S3c2410的触摸屏及模数转换
S3C2410的快速启动技术
基于嵌入式linux和s3c2410平台的视频采集
S3c2410 LCD驱动学习心得
s3c2410移植MPlayer到linux2.6

上一页 12
 
最新开源项目
 
 
  查看更多...  
 
本站相关产品   淘宝网店
 




 
  查看更多...  

 

本站程序由百合电子工作室开发和维护
Copyright @ baihe electric studio
渝ICP备09006681号-4