EDN China > 设计实例 > 消费电子设计 > 便携设备 > 正文
? 2016博客大赛-不限主题,寻找电子导师,大奖升级??

基于S3C2440A终端LCD驱动电路的设计与实现

电子设计应用 蔡理金 王逢东 王会涛?? 2011年09月05日 ?? 收藏0

?  函数中的语句大部分是给与定时器相关的寄存器写值。其中b就是上层函数传递下来的bright值,从程序中可以看到,调节亮度本质上是通过TCMPB0寄存器写入与bright相关的值,控制PWM占空比实现亮度调节功能。

  3、lcdctrl_device_get_ops函数

  用于上层获取具体设备的钩子函数。代码如下:

struct lcdctrl_device *lcdctrl_device_get_ops(void)
{return &smdk2440_dev;}

  此函数被lcdctrl.c初始化时调用,将设备指向smdk2440_dev。

  至此,驱动程序设计完成,为了更好地实现LCD的管理,需要在上层的Qtopia应用程序中提供人机操作的界面。

  Qtopia应用程序

  Qtopia应用程序提供人机操作界面并调用底层驱动程序完成LCD控制功能,这里,仍然以亮度调节为例叙述应用程序工作过程。

  主要完成功能:

  1、应用程序完成人机操作的界面,为使用人员提供友好界面;

  2、读取亮度值,并将其存入变量bright中;

  3、打开设备文件:fd=open("/dev/devname",O_RDONLY);

  4、调用底层的驱动程序,通过底层的驱动程序将LCD背光亮度调整为指定值。

  ioctl(fd, _BACKLIGHT_ IOCTL_BRIGHT, bright)。

  ioctl函数调用驱动程序完成亮度的调节。

  结语

  经测试,设计完成的LCD能很好地完成图形的显示,终端电源管理界面中包含了LCD亮度调节功能。

  LCD驱动电路的设计是手持终端产品的重要组成部分。本文设计并实现了基于S3C2440A的手持终端LCD驱动电路。通过图形管理界面能够方便地管理LCD,达到节约能量、延长手持终端工作时间的目的。

  参考文献

  1. 杨水清, 张剑, 施云飞. ARM嵌入式Linux系统开发技术详解,电子工业出版社,2008/11

  2. 常赞杰, 张位勇. 基于Framebuffer的LCD驱动程序设计. 办公自动化,2008/12


上一页123下一页
?? ?? ??


打开微信“扫一扫”,打开网页后点击屏幕右上角分享按钮

1.扫描左侧二维码
2.点击右上角的分享按钮
3.选择分享给朋友
?? ??

S3C2440A? LCD? 驱动电路? 便携式?

相关文章

我来评论
美国的游客
美国的游客 ??? (您将以游客身份发表,请登录 | 注册)
?
有问题请反馈