高精度溫濕度傳感器SHT2x的應(yīng)用
引言
新一代Sensirion溫濕度傳感器SHT2x,采用適于回流焊的雙列扁平無引腳DFN無鉛封裝,底面3 mm×3mm,高度1.1 mm,具有超小型的體積,特別適合移動測量設(shè)備。傳感器輸出經(jīng)過標(biāo)定的數(shù)字信號,是標(biāo)準(zhǔn)的I2C總線格式。SHT2x配有一個(gè)全新設(shè)計(jì)的4C代CMOSens芯片、一個(gè)經(jīng)過改進(jìn)的電容式濕度傳感元件和一個(gè)標(biāo)準(zhǔn)的能隙溫度傳感元件,內(nèi)置放大器、A/D轉(zhuǎn)換器、OTP內(nèi)存和數(shù)字處理單元,能同時(shí)檢測溫度和濕度。SHT2x的性能和可靠性,特別是在高濕環(huán)境下的穩(wěn)定性,相對于前一代傳感器SHT1x和SHT7x有很大提升,而數(shù)據(jù)傳輸操作更為簡單。每一個(gè)傳感器都經(jīng)過校準(zhǔn)和測試,在芯片內(nèi)存儲了電子識別碼,可以通過輸入命令讀出這些識別碼。此外,SHT2x的分辨率可以通過輸入命令進(jìn)行改變,傳感器可以檢測到電池低電量狀態(tài),有極低功耗的節(jié)能模式,具有優(yōu)異的長期穩(wěn)定性。SHT2x系列中最高精度的SHT25的相對濕度測量精度達(dá)到1.8%,溫度測量精度為0.2。
1接口和通信協(xié)議
1.1芯片引腳、信號和時(shí)序說明
SHT2x使用了6引腳封裝中的4個(gè)引腳,分別是電源VDD、地VSS、雙向串行時(shí)鐘SCL和雙向串行數(shù)據(jù)SDA。SHT2x供電范圍為2.1~3.6 V,推薦電壓為3.0 V。SCK用于微處理器與SHT1x之間的通信同步。
SDA引腳用于傳感器的數(shù)據(jù)輸入和輸出。當(dāng)向傳感器發(fā)送命令時(shí),SDA在串行時(shí)鐘SCL的上升沿有效,且當(dāng)SCL為高電平時(shí),SDA必須保持穩(wěn)定。在SCL下降沿之后,SDA值可被改變。為確保通信安全,SDA的有效時(shí)間在SCL上升沿之前和下降沿之后應(yīng)該分別延長至tSU和tHD,數(shù)字輸入/輸出端時(shí)序如圖1所示。當(dāng)從傳感器讀取數(shù)據(jù)時(shí),SDA在SCL變低以后有效tVD時(shí)長,且維持到下一個(gè)SCL的下降沿。圖1中的縮略語在表1中解釋。圖1中DATA OUT SDA由傳感器控制,DATA IN SDA由MCU控制。SDA有效讀取時(shí)間由前一個(gè)轉(zhuǎn)換的下降沿觸發(fā)。
1.2通信協(xié)議
SHT2x采用標(biāo)準(zhǔn)的I2C總線協(xié)議進(jìn)行通信,所有傳感器都被設(shè)置為相同的7位I2C總線地址1000 000. 1.2.1傳感器的啟動與停止時(shí)序上電后,傳感器需要15 ms時(shí)間以達(dá)到空閑狀態(tài),即準(zhǔn)備接收由主機(jī)(MCU)發(fā)送的命令,此時(shí)SCL為高電平。每個(gè)傳輸序列都以啟動傳輸狀態(tài)(S)作為開始,并以停止傳輸狀態(tài)(P)作為結(jié)束。圖2是啟動傳輸狀態(tài)的時(shí)序圖。
當(dāng)SCL為高電平時(shí),SDA由高電平轉(zhuǎn)換為低電平。開始狀態(tài)是由主機(jī)控制的一種特殊的總線狀態(tài),指示從機(jī)傳輸開始,啟動之后,總線處于占線狀態(tài)。圖3是停止傳輸狀態(tài)的時(shí)序圖。
當(dāng)SCL高電平時(shí),SDA由低電平轉(zhuǎn)換為高電平。停止?fàn)顟B(tài)是由主機(jī)控制的一種特殊的總線狀態(tài),指示從機(jī)傳輸結(jié)束,停止之后,總線處于閑置狀態(tài)。
1.2.2發(fā)送命令和接收數(shù)據(jù)
在啟動傳輸后,隨后傳輸?shù)氖鬃止?jié)包括7位的I2C總線設(shè)備地址和一個(gè)SDA方向位,讀為“1”,寫為“0”。在第8個(gè)SCL時(shí)鐘下降沿之后,通過拉低SDA引腳(ACK位),指示傳感器數(shù)據(jù)接收正常。在發(fā)出測量命令之后主機(jī)必須等待測量完成?;镜拿钤诒?中進(jìn)行說明,有兩種不同的方式可選——主機(jī)模式或非主機(jī)模式。
MCU與傳感器之間的通信有兩種不同的工作模式:主機(jī)模式和非主機(jī)模式。在主機(jī)模式下,在測量的過程中,SCL線被封鎖(由傳感器進(jìn)行控制);在非主機(jī)模式下,當(dāng)傳感器在執(zhí)行測量任務(wù)時(shí),SCL線仍然保持開放狀態(tài),可進(jìn)行其他通信。非主機(jī)模式允許傳感器進(jìn)行測量時(shí)在總線上處理其他I2C總線通信任務(wù)。本文只涉及主機(jī)模式,其時(shí)序如圖4所示。
在主機(jī)模式下測量時(shí),SHT2x將SCL拉低,強(qiáng)制主機(jī)進(jìn)入等待狀態(tài)。通過釋放SCL線,表示傳感器內(nèi)部處理工作結(jié)束,進(jìn)而可以繼續(xù)數(shù)據(jù)傳送。
圖4中灰色部分由SHT2x控制。如果要省略校驗(yàn)和(CRC)傳輸,可將第45位改為NACK,之后接一個(gè)傳輸停止時(shí)序。
由于測量的最大分辨率為14位,第2個(gè)字節(jié)SDA上的后兩位LSB,即第43和44位用來傳輸相關(guān)的狀態(tài)信息,第43位表示測量的類型,“0”表示測量溫度,“1”表示測量濕度,第0位當(dāng)前沒有使用。
在圖4中,傳感器輸出為0110 0011 0101 0010.在進(jìn)行物理換算時(shí),后兩位狀態(tài)位應(yīng)置0.所需最長測量時(shí)間取決于測量類型和分辨率,最高分辨率14位的測量時(shí)間最大值為85ms,測量時(shí)間的最大值由MCU控制。
2信號轉(zhuǎn)換傳感器
內(nèi)部設(shè)置的默認(rèn)分辨率是最高分辨率,即相對濕度12位、溫度14位。SDA的輸出數(shù)據(jù)被轉(zhuǎn)換成兩個(gè)字節(jié)的數(shù)據(jù)包,高字節(jié)MSB在前,低字節(jié)LSB在后,左對齊。每個(gè)字節(jié)后面都跟隨兩個(gè)狀態(tài)位和一個(gè)應(yīng)答位。兩個(gè)狀態(tài)位,即LSB的后兩位在進(jìn)行物理計(jì)算前須置0.這樣在圖4的示例中,所傳輸?shù)?6位相對濕度數(shù)據(jù)為SRH=0110 0011 0101 0000=25 424. 2.1相對濕度轉(zhuǎn)換公式相對濕度RH可以根據(jù)SDA輸出的相對濕度信號SRH通過下面的公式計(jì)算,單位以%RH表示。
RH=-6+125.(SRH/216)
對于圖4的例子,相對濕度的計(jì)算結(jié)果為42.5%RH.RH物理值對應(yīng)于世界氣象組織(WMO)所規(guī)定的基于液態(tài)水的相對濕度。
2.2溫度轉(zhuǎn)換公式
溫度T可以通過SDA溫度輸出信號ST代入到下面的公式計(jì)算得到,單位以℃表示。
T=-46.85+175.72.(ST/216)
傳感器相關(guān)文章:傳感器工作原理
風(fēng)速傳感器相關(guān)文章:風(fēng)速傳感器原理 電容傳感器相關(guān)文章:電容傳感器原理 回流焊相關(guān)文章:回流焊原理 土壤濕度傳感器相關(guān)文章:土壤濕度傳感器原理
評論