- 利用Max44009實施EOC (轉(zhuǎn)換結(jié)束)檢測,改善傳感器對測量值的響應(yīng)時間
引言
Maxim的MAX44007和MAX44009高性能環(huán)境光傳感器,在單一芯片集成了光電二極管、模擬前端(AFE)、兩路高分辨率模/數(shù)轉(zhuǎn)換器(ADC)、數(shù)字比較和數(shù)據(jù)格式化處理電路及I²C接口功能。這些光傳感器具有業(yè)內(nèi)領(lǐng)先的低工作電流(0.65µA)、ICC低工作電壓(1.8V)、超低光敏感度,采用2mm x 2mm x 0.6mm小尺寸封裝。
當(dāng)光積分時間為100ms的倍數(shù)(如:100/200/400/800ms)時,這些環(huán)境光傳感器能夠很好地抑制50Hz/60Hz噪聲干擾。然而,多數(shù)情況下,很多應(yīng)用需要一個轉(zhuǎn)換完成信號,在可靠讀取環(huán)境光傳感器信息時避免不必要的延遲。本應(yīng)用筆記主要介紹如何使用器件的中斷引腳提供轉(zhuǎn)換完成指示,詳細說明I²C寄存器的設(shè)置方法。
寄存器
光傳感器的I²C寄存器如表1所示。
實現(xiàn)轉(zhuǎn)換完成檢測
實施依據(jù)是,只有當(dāng)ADC產(chǎn)生有效數(shù)據(jù)(例如,ADC轉(zhuǎn)換結(jié)束)時,IC內(nèi)部才會觸發(fā)中斷邏輯。在ADC轉(zhuǎn)換期間/積分時間內(nèi),中斷檢測邏輯將忽略I²C 寄存器設(shè)置的變化。如果寄存器設(shè)置為不考慮轉(zhuǎn)換結(jié)果而觸發(fā)中斷,例如,所設(shè)置的下限高于上限時,可通過監(jiān)測中斷引腳獲得轉(zhuǎn)換完成信號。
下面,按步驟詳細說明一個算法示例。
第一步 配置寄存器,快速訪問。
向配置寄存器0x02寫入1100 0111,將寄存器配置為以下非默認參數(shù):
CONT = 1:立即轉(zhuǎn)換和連續(xù)轉(zhuǎn)換
MANUAL = 1:允許手動調(diào)整積分時間
TIM = 111:將積分時間設(shè)置為最小值 = 6.25ms
第二步 配置寄存器,轉(zhuǎn)換結(jié)束時立即、強制觸發(fā)中斷。
寫入下限高字節(jié) = 1111 1111
寫入上限高字節(jié) = 0000 0000
寫入門限定時器 = 0000 0000
第三步 保持在“等待”狀態(tài),直到用戶啟動有效轉(zhuǎn)換。
在此期間,忽略任何來自寄存器的中斷觸發(fā)信號。
第四步 收到用戶命令后,啟動有效轉(zhuǎn)換過程。
向配置寄存器寫入1000 0000,實現(xiàn)寄存器的自動量程設(shè)置和連續(xù)轉(zhuǎn)換配置。
讀取中斷狀態(tài)寄存器0x00,清除任何中斷條件。/INT引腳應(yīng)置為高電平。
檢測/INT引腳,等待中斷觸發(fā)信號(注意:由于第一步中的TIM設(shè)置,最長等待時間為6.25ms)
隨后,即可開啟光傳感器測量。
讀取中斷狀態(tài)寄存器0x00,清除任何中斷條件。/INT引腳應(yīng)為高電平。
當(dāng)前轉(zhuǎn)換過程完成后,寫入1100 0111,將寄存器的積分時間重新設(shè)置為6.25ms。
檢測/INT引腳,等待中斷觸發(fā)信號,引腳將發(fā)出轉(zhuǎn)換結(jié)束信號,可讀取有效的光強測量數(shù)據(jù)。
第五步 重復(fù)第三步。