关键词: LED , 测光
LED在便携设备中一般用于显示电源状态、电池状态,或蓝牙连接的活动。LED可以是决定电池寿命的主要因素,因为它们的亮度与功耗成正比。采用一种简单的电路,Altera公司的MAX IIZ CPLD可以测量其所处环境的模拟光照水平,然后以一个成比例的模拟强度水平驱动一只LED发光。一只LED和偏置电阻可以同时完成测光与发光。图1中的电路只需要45只逻辑元件,而CPLD的编程能力使之能够快速调节电路参数,以适应任何LED的特性。
图1,这款简单的MAX IIZ电路用一只LED作发光器和传感器。
通过增加闪光周期、减少闪烁脉冲宽度,或降低光强,还可以节省一个闪烁LED的功耗。根据环境光来控制LED的亮度,将LED的能耗降低47% 以上,而不影响其外观。图1的电路采用Altera EMP240ZM100C7N CPLD、LED、电阻和时钟源,使LED按与环境光成正比的强度作闪烁。电路包含一个驱动LED的PWM(脉宽调制器)、一个光强测量块、以及一个控制状态机和定时器。
状态机包括一个热态,由一个初始为二进制00000001的8 bit移位寄存器构成。12位计数器Count 12的进位生成一个8Hz的使能信号,给状态机Shift8。因此,状态机八个状态中,每一个都持续有效125 ms。在复位态State 0时,PWM Count4与光测量块Count 8被复位。State 1是光强测量态,它使能一个频率计数器Count 8。Count 8被使能125 ms,计算离开光传感器的循环。电路探测光是通过偏置LED和限流电阻,使LED的负极端为逻辑1。正极连接到一个张弛振荡器,使正极开始时为逻辑0。 LED根据照射到LED上的光线量,成比例地拉高正极。反偏的LED作为一个太阳电池芯,输出电流与光强成正比。一旦慢速上升的正极信号达到输入缓冲的阈值,则Pin 1信号变为零,D触发器DFF翻转为零,将正极信号驱动至零,使Pin 1脚为逻辑1,并在下个时钟周期上使输入缓冲为三态,使正极信号再次上升。
振荡器1的频率与光强成正比,亮光下的典型频率约2000 Hz。振荡器1的信号驱动Count 8的时钟。Count 8在State 0复位,然后在State 1 使能125 ms。在亮光下,Count 8可以在测量结束时计数到250,而在弱光下,它可能只计数到16。计数器的COUT信号反馈给使能端,计数为255时饱和,防止过强的光使计数器反转回零,从而导致虚假测量。
State 2是LED的闪烁态。这个状态以PWM控制亮度,使LED闪烁125 ms。在State 2时,负极和正极脚均偏置为发光模式。发光模式将正极信号强拉至VCC。负极连接至PWM的输出。负极上的逻辑0使LED发光,而逻辑1则使之熄灭。负极信号是PWM输出的反相形式。
在本例中,PWM为4位分辨率,但也可以使用更多的位或更少的位。PWM包括二进制计数器Count 4和一个二进制4位加法器。Count 4计数器在State 2使能,而循环输出连接到4位加法器的A输入。加法器的B输入端连接到光传感器频率计数器的四个MSB(最高有效位)上。加法器的进位输出是PWM输出。加法器的进位输入是一个恒定的逻辑1。
下面举例说明PWM的工作方法:
当Count 4为0~14时,来自亮度测量的逻辑0都在进位端得到一个逻辑0,而当Count 4为15时则是逻辑1。这种6.25%的占空比是一个极低亮度水平。
当Count 4为0~7时,亮度测量值7可在进位端得到一个逻辑0,而当Count 4为8~15时则是逻辑1。这种50%的占空比是一个中等亮度水平。
对任何Count 4值,亮度测量15在进位端都得不到逻辑0,而当Count 4为0~15时,均为逻辑1。这种100%的占空比是一个满亮度水平。
State 3~7的唯一功能是等待下一个LED闪烁周期。你可以增加或删除状态,修改闪烁的速率。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)