優(yōu)化MAX44007環(huán)境光傳感器,改善黑色玻璃的設(shè)計(jì)性能
注:隨后讀取寄存器0x0C (上述寫(xiě)操作之后),仍然讀回0101 1001,因?yàn)镮C在數(shù)據(jù)保存到這些高級(jí)寄存器之前進(jìn)行了內(nèi)部自動(dòng)位翻轉(zhuǎn)。
保留IRGainC值,供將來(lái)使用。
5.必要時(shí),為門(mén)限定時(shí)寄存器0x07設(shè)置一個(gè)合適的延遲。
6.設(shè)置INTE = 1 (寄存器0x01),使能中斷。
進(jìn)入正常工作模式
按以下步驟進(jìn)入正常測(cè)量模式。
7.讀取寄存器0x03和0x04,獲得12位的流明讀數(shù)。
將數(shù)值保存為ComboLux。
8.向寄存器0x0C寫(xiě)入0000 0000,進(jìn)入臨時(shí)測(cè)量模式。
9.等待至少1.6s (2x 800ms)。
如果需要,可聯(lián)系Maxim縮短這一時(shí)間。
10.讀取寄存器0x03和0x04,獲得12位的流明讀數(shù)。
將數(shù)值保存為ApproxLux。
11.向寄存器0x0C寫(xiě)入IRGainC,退出臨時(shí)測(cè)量模式。
12.計(jì)算:ActualLux =ApproxLux - IRFactor × (ApproxLux - ComboLux)
AcutalLux為實(shí)際環(huán)境光讀數(shù)。
ApproxLux = ComboLux,近似熒光燈和WLED燈。
ApproxLux > ComboLux,通常為白熾燈和太陽(yáng)光。
若需計(jì)算合適的IRFactor,請(qǐng)聯(lián)系Maxim應(yīng)用支持,并提供玻璃樣本。可直接從實(shí)驗(yàn)室測(cè)試獲得數(shù)據(jù)。
13.根據(jù)上面計(jì)算的ActualLux,設(shè)置相應(yīng)的背光強(qiáng)度。
14.將ComboLux作為參考(器件的正常工作模式),設(shè)置相應(yīng)的流明上限(寄存器0x05)和流明下限(寄存器0x06)。
15.執(zhí)行INTS位(寄存器0x00)空讀操作,清除所有中斷(若之前已置位)。
16.等待硬件中斷。
此時(shí)程序占用時(shí)間最長(zhǎng)。
17.發(fā)生硬件中斷后,讀取寄存器0x00,確認(rèn)INTS = 1。
如果INTS = 1,則轉(zhuǎn)至上面的第7步。
否則,如果INTS = 0,在檢查其它硬件中斷源后,返回至第16步。
評(píng)論