网站大量收购独家精品文档,联系QQ:2885784924

IMX233下的LCD背光设备的驱动框架.doc

  1. 1、本文档共11页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
IMX233下的LCD背光设备的驱动框架

IMX233下的LCD背光设备原理 ?????? 第一次做驱动开发,开发前期阅读了不少驱动开发相关的书籍和文章,整体的驱动开发思路分成三个部分:设备驱动原理、设备驱动框架和设备驱动硬件相关。下文主要讲述背光设备的原理,后面两部分将在后续的文章中做详细的介绍。 ?????? 本次背光驱动开发对应的是IMX233下LCD背光灯设备,主要由三个部分组成:PWM、RT9284B15PJ6芯片和LCD背光灯。PWM(Pulse-Width Modulator,脉冲宽度调制)是利用微处理器的数字输出来对模拟电路进行控制的一种非常有效的技术。RT9284B15PJ6芯片是一个高效高度集成的LED驱动器,相当于一个LED开关。LCD背光灯电路原理图如图一,LCD背光灯连接到RT9284B15PJ6芯片的两个引脚,而芯片的其中一个引脚连接到PWM。我们主要通过PWM的相关寄存器来产生不同效果的波形从而间接控制背光灯的亮度,所以下面我们会主要介绍下PWM。 图一 LCD背光灯电路图 ???????? 脉冲宽度调制(PWM)是利用微处理器的数字输出来对模拟电路进行控制,简而言之,PWM是一种对模拟信号电平进行数字编码的方法,这种通过以数字方式控制模拟电路的方法,可以大幅度降低系统的成本和功耗,所以广泛应用在从测量、通信到功率控制与变换的许多领域中。 ???????? 在一个连接有电池(电压5V)、白炽灯泡和开关的简单电路当中,如果开关闭合50ms,灯泡将得到5V的电压,接着将开关断开50ms,接着灯泡将得到0V的电压。如果在1分钟内,将上述的过程重复10次,灯泡将会被点亮,看到的效果和连接到一个4.5V的电池的效果一模一样,这种实验情况下,占空比为50%,调制频率为10Hz。图二是两种不同的PWM信号以及其对应的不同的模拟信号值,电压为5V,占空比分别为10%和50%,两种不同的PWM信号分别对应0.5V和2.5V的模拟信号值。 图二 两种不同的PWM信号和对应模拟信号 图三 电路图 ????? 图三为RT9284B15PJ6芯片的电路图,我们关心的是EN引脚。它的输入是PWM信号,从而芯片能控制LED输出与PWM信号相对应的亮度。在做背光驱动开发的时候涉及到硬件相关的部分主要是与LCD背光灯相对应的PWM寄存器,后面将做详细介绍。 IMX233下的LCD背光设备的驱动框架 ???????? 本文分成两个部分,先对LCD背光设备的驱动开发进行整体的了解,把握其中重点的部分,为后面的驱动开发奠定理论的基础,然后就是对背光驱动的框架进行下分析。 背光设备驱动开发概述 ???????? 要想了解驱动的开发,必须先了解Linux的sysfs文件系统。Linux 2.6内核的一个重要特色是提供了统一的内核设备模型,随着技术的不断进步,系统的拓扑结构越来越复杂,对智能电源管理、热插拔等支持要求也越来越高,2.4内核已经难以满足这些需求。为适应这种形势的需要,2.6内核开发了全新的设备模型。 图一 LInux设备模型 ???????? Linux 2.6 内核引入了Sysfs文件系统,Sysfs文件系统是一个类似于proc文件系统的特殊文件系统,用于将系统中的设备组织成层次结构,并向用户模式程序提供详细的内核数据结构信息。其顶层目录主要有:block、devices、bus、drivers、class、power和firmware等。其中:block目录包含所有的块设备;devices目录包含系统所有的设备,并根据设备挂接的总线类型组织成层次结构;bus目录包含系统中所有的总线类型;drivers目录包括内核中所有已注册的设备驱动程序;class目录包含系统中的设备类型(如网卡设备,声卡设备等)。在/sys/bus的pci目录下又会再分出drivers和devices目录,而devices目录中的文件是对/sys/devices目录中文件的符号链接。同样的,/sys/class目录下包含许多对/sys/devices下文件的链接,如图一,是描述的2.6内核总线、类、设备和驱动的层级关系,也符合LINUX 2.6内核的设备模型。 ???????? 当前多开发的背光设备文件对应于/sys/class/backlight/目录下的文件。前面已将说过,在/sys/class/目录下的文件对应的都是系统中对应的不同设备类型,/sys/class/backlight就是注册的背光设备类型,而在/sys/class/backlight/目录下的文件就是所注册的背光设备。对于背光设备类型的注册一般系统都完成了,代码如下: static struct class *backlight_class; static int __init backlight_class_init(

文档评论(0)

2017meng + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档