优化MAX44007环境光传感器,改善黑色玻璃的设计性能
出处:edox143 发布于:2011-04-20 10:08:36
摘要:黑色玻璃会改变照在环境光传感器上的光线频谱,这是环境光传感器所面临的设计挑战。尤其是黑色玻璃增强了光谱中的红外分量,而人眼看不到这部分光谱。本应用笔记介绍了几种校准/补偿方法,从而对光传感器在不同光源条件下的流明读数进行修正。本文探讨了如何利用MAX44007光传感器的模式调节其对可见光、IR通道的响应。利用MAX44007的寄存器可以优化传感器在黑色玻璃下的性能。
引言
MAX44007环境光传感器提供工作模式,用于优化传感器在黑色玻璃下的性能。
目前,大多数智能手机、平板电脑、笔记本电脑和TV都有采用黑色玻璃作为LCD屏的框架,这种框架使得终端产品看起来精致、美观。传统设计中,在环境光传感器的位置提供一个清晰的圆形窗口或缝隙。而新型产品中,光传感器的窗口或缝隙被几乎不透明的黑色油墨覆盖,与其周边的颜色浑然一体。制造商的原因很简单:颜色越深,越不容易分散用户注意力,看起来会更加,外观更精致!
不幸的是,深色油墨覆盖环境光传感器后,会在两个方面造成设计复杂。首先,深色油墨将衰减环境光,从而降低传感器接收到的光量。第二,油墨还改变了光线的光谱。从油墨的光谱特性看,几乎全部通过红外入射光,而可见光却衰减到其原来光强的3%至5%。所以,环境光的红外含量被大幅放大。由于深色油墨的实际化学特性会随供应商的不同而有所不同,从而使光信号传输(红外光或环境光)特性进一步复杂化。
针对黑色玻璃进行校准和补偿
准确匹配人眼的CIE曲线非常困难。正因如此,大多数高性能环境光传感器(例如MAX9635)具有校准/补偿机制,用于修正不同光源下的流明数。这种修正通过组合两种片上光敏二极管实现,组合后可有效提供准确的光强读数,以消除不同光源条件的影响。由于照射在黑玻璃下方传感器上的光谱发生明显变化,需要进一步调整校准参数。
需要特别注意光源对黑色玻璃下方传感器的影响,对其进行校准修正。如果光源中红外成分较高,例如太阳光和白炽灯,尤其需要进行校正。白光LED (WLED)和荧光灯照射下,所需调整较小。
MAX44007具有模式,可用于调节对可见光和IR信号的响应。
用于优化玻璃下方传感器性能的寄存器
以下为MAX44007的寄存器,器件数据资料也提供了该寄存器表。
性预设置,上电设置
按照以下步骤进行性预设置,通常在上电时设置。
1.读取4个寄存器中每个寄存器的内容:0x09–0x0C。
存储变量:分别为Adv1、Adv2、VisibleGain和IRGain。
2.将这些变量1的补码保存为新的变量:分别为Adv1C、Adv2C、VisibleGainC和IRGainC。例如,IRGainC = !IRGain;
如果IRGain = 1010 0110,则IRGainC = 0101 1001。
3.向寄存器0x0D写入1000 0001,进入模式(将ADV置1)。
4.将Adv1C、Adv2C、VisibleGainC和IRGainC分别写入寄存器0x09–0x0C。
例如,向寄存器0x0C写入0101 1001,其原始值为1010 0110。
注:随后读取寄存器0x0C (上述写操作之后),仍然读回0101 1001,因为IC在数据保存到这些寄存器之前进行了内部自动位翻转。
保留IRGainC值,供将来使用。
5.必要时,为门限定时寄存器0x07设置一个合适的延迟。
6.设置INTE = 1 (寄存器0x01),使能中断。
进入正常工作模式
按以下步骤进入正常测量模式。
7.读取寄存器0x03和0x04,获得12位的流明读数。
将数值保存为ComboLux。
8.向寄存器0x0C写入0000 0000,进入临时测量模式。
9.等待至少1.6s (2x 800ms)。
如果需要,可联系Maxim缩短这一时间。
10.读取寄存器0x03和0x04,获得12位的流明读数。
将数值保存为ApproxLux。
11.向寄存器0x0C写入IRGainC,退出临时测量模式。
12.计算:ActualLux =ApproxLux - IRFactor × (ApproxLux - ComboLux)
AcutalLux为实际环境光读数。
ApproxLux = ComboLux,近似荧光灯和WLED灯。
ApproxLux > ComboLux,通常为白炽灯和太阳光。
若需计算合适的IRFactor,请联系Maxim应用支持,并提供玻璃样本。可直接从实验室测试获得数据。
13.根据上面计算的ActualLux,设置相应的背光强度。
14.将ComboLux作为参考(器件的正常工作模式),设置相应的流明上限(寄存器0x05)和流明下限(寄存器0x06)。
15.执行INTS位(寄存器0x00)空读操作,清除所有中断(若之前已置位)。
16.等待硬件中断。
此时程序占用时间长。
17.发生硬件中断后,读取寄存器0x00,确认INTS = 1。
如果INTS = 1,则转至上面的第7步。
否则,如果INTS = 0,在检查其它硬件中断源后,返回至第16步。
版权与免责声明
凡本网注明“出处:维库电子市场网”的所有作品,版权均属于维库电子市场网,转载请必须注明维库电子市场网,https://www.dzsc.com,违反者本网将追究相关法律责任。
本网转载并注明自其它出处的作品,目的在于传递更多信息,并不代表本网赞同其观点或证实其内容的真实性,不承担此类作品侵权行为的直接责任及连带责任。其他媒体、网站或个人从本网转载时,必须保留本网注明的作品出处,并自负版权等法律责任。
如涉及作品内容、版权等问题,请在作品发表之日起一周内与本网联系,否则视为放弃相关权利。
- DHT11传感器简介及数据传输过程2024/3/20 17:23:57
- 什么是DS18B20温度传感器,DS18B20温度传感器的优缺点2024/2/26 17:15:41
- 使用细铜线作为集成传感器和加热器进行温度控制2024/2/18 16:11:54
- 使用电感器改进现有设计2024/1/22 16:42:19
- 什么是SLAM?SLAM算法涉及的4要素2024/1/17 16:35:15