背光自动控制模块
摘要:本文主要讲述采用集成环境光传感器控制显示屏背光亮度的应用。系统根据环境光强度实行动态的背光控制,降低功耗。让显示屏亮度根据环境光条件自行调整到最佳状态,改善用户体验。同时也能手动调节背光亮度。
本文引用地址:https://www.eepw.com.cn/article/281898.htm前言
一个完整的液晶背光控制系统包括二部分:(1)背光自动控制模块;(2)LED驱动器。其中背光自动控制模块有光传感器和数据处理装置(通常是微控制器)组成。系统框图如图1所示。
现在绝大部分CCFL背光的液晶屏都已经停产,各液晶屏生产商都已经采用WLED背光,并且有的已经将LED驱动器集成到液晶屏。本文介绍背光自动控制模块。
1 模块组成设计
背光自动控制模块(以下简称为控制模块)的基本组成结构设计如图2所示,主要包括控制模块硬件和上位机控制软件。硬件模块由单片机、光强传感器、电源转换芯片组成;上位机软件是由VB编写的一个USB通信控制软件。
为了更有效地实现系统,在系统组成的基础上,对系统的功能进行规划分析。
1.1 光强传感器
光强传感器是关键的组成部分,它负责向微处理器提供环境光强信息。
1.2 微处理器
微处理器是核心部分,负责数据处理,它有以下几个功能:
负责读取光传感器的环境光强数据,并将这些信息处理转换成脉冲信号控制液晶屏的背光驱动器,进而完成背光亮度的控制;
解析USB上位机发送过来的指令完成相关操作。
1.3 电源芯片
通过USB取电,将+5V转换成模块的工作电压。
1.4 上位机软件
基于USB-HID对硬件模块控制指令,并接收硬件模块的反馈信息。
2 硬件设计
硬件电路原理图如图3所示,主要由光强传感器、微处理器、电源电路等组成。考虑到显示器的空间限制,在保证功能的前提下优先考虑小封装的元器件。
2.1 光强传感器
选用Maxim公司的MAX4009集成环境光强传感器,将所有信号调节和AD转换器集成在一个封装内,有效节省电路板面积;低功耗(ICC=0.65μA);传感器的光谱灵敏度需要与人眼接近;采用I²C通信协议;可设置上、下限阀值中断使其与微控制器的连接方式更简单,数据传输速度更快。
2.2 微控制器
选用ST公司的STM32F103T8U6单片机,QFN36封装;内部集成IIC以及USB控制器;通过USB口与外部通信;IIC配合外部中断与光强传感器通信;TIM3输出PWM控制信号;TIM2为通用定时器。
2.3 电源芯片
电源芯片选用ASM1117-3.3,Uin=4.75V~12V;Uout=3.3V;Iout[max]=1A;满足要求。
3 软件设计
对系统设计的功能要求进行深入分析,将软件设计分为三部分:通信协议、单片机程序和上位机软件。
3.1 通信协议
通信协议是指双方实体完成通信或服务所必须遵循的规则和约定,是确保数据顺利地、正确地传送的基础。本设计中只是小数据量的有线通信,所以只是建立了一个简单的通信协议。具体如下:
命令格式:FF WW XX YY CC(5个字节的16进制数)。
第1位为协议头,固定为FF。
第2位WW为指令类型:50是自动模式指令;05是手动模式指令。
第3、4位XX和YY在自动和手动模式下代表不同的意义:
自动模式下:XX、YY分别为光传感器的高字节流明寄存器和低字节流明寄存器的数据。
手动模式下:XX是背光亮度的百分比值,范围1~100。
第5位为结束标识符,固定为CC。
3.2 单片机程序
单片机程序流程如图4左部分所示。系统上电之后,先会对单片机进行初始化,然后判断上位机是否通过USB发送控制指令过来,接着判断是自动控制指令还是手动控制指令,如果是自动控制指令,则读取当前环境光强度,并设置上、下限门限,接着把光强度变换成背光亮度的百分比,最后调用PWM滑动调节控制背光;如果是手动控制命令,则读取上位机发送过来的背光亮度的百分比,调用PWM滑动调节控制背光。
3.2.1 MAX44009通信控制
STM32F103通过I2C与MAX44009进行通信。通过设置上、下限阀值,在光线强度偏离设定范围一定时间后,产生中断通知微处理器读取光强度,进行背光亮度调节,并设置新的上、下限门限。本设计中上、下限阀值范围为当前光强度的±10%。
(1)读取流明
流明寄存器包含高、低字节流明寄存器。高字节流明寄存器0x03包括4位指数位E3:E0和尾数字节的4个最高有效位M7:M4,表示环境光强的流明数。尾数字节的其余4位M3:M0位于低字节流明寄存器0x04。如表1所示。用户可以选择只读高字节流明寄存器或者连续读高、低字节流明2个寄存器来得到流明数。
只读高字节流明寄存器换算公式:
Lux=2(8×E3+4×E2+2×E1+E0)×(8×M7+4×M6+2×M5+M4)×0.72
读高、低字节流明寄存器换算公式:
Lux=2(8×E3+4×E2+2×E1+E0)×(128×M7+64×M6+32×M5+16M4+8×M3+4×M2+2×M1+M0)×0.045
本设计中为了增强IC的流明读数分辨率,所以选择连续读取高、低字节流明寄存器。值得注意的是,为了确保内部ADC和I2C寄存器之间正确传输数据,在I2C读操作期间,芯片内部禁止高字节流明寄存器和低字节流明寄存器的更新,只有主机发送STOP[1]命令时,才恢复I2C寄存器更新。所以在连续读取2个字节流明寄存器时,读完高字节寄存器后不能发送STOP信号,必须在读完的字节低字节寄存器后才能发送STOP。
(2)环境光强如何映射到背光亮度
本设计中采用的一种映射方式是Microsoft®针对运行Windows® 7[2]操作系统计算机提出的。如图5所示曲线,它可以将环境光强度映射到显示屏亮度(以全部亮度的百分比表示)。
这个特性曲线可以用以下函数表示:
(1)
评论