環(huán)境溫、濕度及光照三合一傳感器設(shè)計
寫數(shù)據(jù)格式:圖4所示為向傳感器IC寫入1個字節(jié)數(shù)據(jù)時的正確幀格式。本文引用地址:http://www.ex-cimer.com/article/161820.htm
讀數(shù)據(jù)格式:圖5所示為讀1 Byte數(shù)據(jù)時的正確幀格式。
寄存器定義:0x00和0x01中斷狀態(tài)與中斷使能;0x02功能配置;0x03和0x04存放流明讀數(shù);0x05和0x06中設(shè)置流明上限和流明下限;0x07中設(shè)置適當(dāng)?shù)拈T限定時器數(shù)據(jù)。
自動量程調(diào)整模式:自動模式配置下,自動量程調(diào)整電路采用兩種方法改變其靈敏度。光照超過700 lx時,分流器通過除以系數(shù)8來降低光電二極管的電流。默認(rèn)設(shè)置下,分流比為1,電流直接送入A/D轉(zhuǎn)換器。當(dāng)光強降低時,自動量程調(diào)整電路將積分時間從100 ms提高到200 ms、400 ms或800 ms。分流器和不同積分時間相組合,可使A/D轉(zhuǎn)換范圍比其16位標(biāo)稱范圍提高8倍,或降低8倍。從而獲得22位或略高于4 000 000:1的動態(tài)范圍。
流明讀數(shù)的數(shù)據(jù)格式:傳感器IC提供用戶易于接收的數(shù)字輸出格式。它由4位指數(shù)和隨后的8位尾數(shù)組成。在最高靈敏度模式下,1個計數(shù)值表示0.045 lx。尾數(shù)最大值為255,指數(shù)最大值為14。所以,最大量程為255×214=4 177 920。在此模式下,最大讀數(shù)為188 000 lx,大于該值的任何讀數(shù)均被認(rèn)為是過載。
門限寄存器數(shù)據(jù)格式:傳感器IC中斷電路要求按照特定格式給出上限和下限,以便正確解析數(shù)據(jù)。寄存器0x05和0x06中的上限和下限數(shù)值必須與高字節(jié)流明格式相匹配,由4位指數(shù)和尾數(shù)的4個最高有效位組成。
4 三合一傳感器的應(yīng)用設(shè)計
微處理器采用二線串行數(shù)字接口和傳感器進(jìn)行通信,硬件接口非常簡單;然而,通信協(xié)議是芯片廠家定義的,所以在軟件設(shè)計中,需要用微處理器通用I/O口模擬通信協(xié)議。
4.1 硬件設(shè)計
硬件連接如圖6所示。
4.2 軟件設(shè)計
由于SHT11和MAX9635的二線串行通信協(xié)議和I2C協(xié)議不兼容。必須使用GTIO口模擬出如圖4和圖5所示的數(shù)據(jù)格式。
基于以上宏定義,可以方便地使SCK和SDA總線輸出持續(xù)一定時間的高電平或低電平,從而實現(xiàn)傳感器的讀寫。
評論