<dl id="5vmrh"><ins id="5vmrh"></ins></dl>
<div id="5vmrh"></div>
  • <progress id="5vmrh"><span id="5vmrh"></span></progress>
  • <div id="5vmrh"><tr id="5vmrh"></tr></div>
    <li id="5vmrh"></li>
    <div id="5vmrh"></div>
    <dl id="5vmrh"><ins id="5vmrh"><small id="5vmrh"></small></ins></dl>
  •   
    測·控領域專業互動媒體平臺
    推動測試測量,檢測診斷,傳感物聯,遙測自控智能化發展
    當前位置:CK365測控網 > 論文 > 應用技術 >

    Sensirion傳感器在單片機系統中的應用詳解

    電子設計 2017-11-17 13:16:56

    [導讀] 詳細介紹Sensirion傳感器公司推出的新型集成數字式溫濕度傳感器。該傳感器采用CMOSens專利技術將溫度濕度傳感器、A/D轉換器及數字接口無縫結合,使傳感器具有體積小、響應速度快、接口簡單、性價比高等特點。本文結合實例講解該傳感器的命令、時序,以及其在單片機系統中的應用。 關鍵詞:SHT10;溫濕度傳感器;數字傳感器;ATmeg8L 引言 隨著社會的不斷發展前進,人們進入了數字化信息時代,對生活質量的要求越來越高。汽車、空調、除濕器、烘干

    詳細介紹Sensirion傳感器公司推出的新型集成數字式溫濕度傳感器。該傳感器采用CMOSens專利技術將溫度濕度傳感器、A/D轉換器及數字接口無縫結合,使傳感器具有體積小、響應速度快、接口簡單、性價比高等特點。本文結合實例講解該傳感器的命令、時序,以及其單片機系統中的應用

     

    關鍵詞:SHT10;溫濕度傳感器;數字傳感器;ATmeg8L

    引言

    隨著社會的不斷發展前進,人們進入了數字化信息時代,對生活質量的要求越來越高。汽車、空調、除濕器、烘干機等都已家喻戶曉,它們都離不開對溫度、濕度等環境因素的要求。

    瑞士Sensirion公司推出了SHTxx單片數字溫濕度集成傳感器。采用CMOS過程微加工專利技術(CMOSenstechnology),確保產品具有極高的可靠性和出色的長期穩定性。該傳感器由1個電容式聚合體測濕元件和1個能隙式測溫元件組成,并與1個14位A/D轉換器以及1個2-wire數字接口單芯片中無縫結合,使得該產品具有功耗低、反應快、抗干擾能力強等優點。

    1SHT10的特點

    SHT10的主要特點如下:

    ◆相對濕度和溫度的測量兼有露點輸出;

    ◆全部校準,數字輸出;

    ◆接口簡單(2-wire),響應速度快;

    ◆超低功耗,自動休眠;

    ◆出色的長期穩定性;

    ◆超小體積(表面貼裝);

    ◆測濕精度±45%RH,測溫精度±0.5℃(25℃)。

    2引腳說明及接口電路

    (1)典型應用電路

    SHT10典型應用電路如圖1所示。


    (2)電源引腳(VDD、GND)

    SHT10的供電電壓為2.4V~5.5V。傳感器上電后,要等待11ms,從“休眠”狀態恢復。此期間不發送任何指令。電源引腳(VDD和GND)之間可增加1個100nF的電容器,用于去耦濾波。

    (3)串行接口

    SHT10的兩線串行接口(bidirectional2-wire)傳感器信號讀取和電源功耗方面都做了優化處理,其總線類似I2C總線但并不兼容I2C總線。

    ①串行時鐘輸入(SCK)。SCK引腳是MCU與SHTIO之問通信的同步時鐘,由于接口包含了全靜態邏輯,因此沒有最小時鐘頻率。

    ②串行數據(DATA)。DATA引腳是1個三態門,用于MCU與SHT10之間的數據傳輸。DATA的狀態串行時鐘SCK的下降沿之后發生改變,SCK的上升沿有效。數據傳輸期間,當SCK為高電平時,DATA數據線上必須保持穩定狀態。

    為避免數據發生沖突,MCU應該驅動DATA使其處于低電平狀態,而外部接1個上拉電阻將信號拉至高電平。

    3命令與時序

    (1)SHT10命令

    SHT10命令如表1所列。


    (2)命令時序

    發送一組“傳輸啟動”序列進行數據傳輸初始化,如圖2所示。其時序為:當SCK為高電平時DT翻轉保持低電平,緊接著SCK產生1個發脈沖,隨后SCK為高電平時DATA翻轉保持高電平。


    緊接著的命令包括3個地址位(僅支持“000”)和5個命令位。SHT10指示正確接收命令的時序為:第8個SCK時鐘的下降沿之后將DATA拉為低電平(ACK位),第9個SCK時鐘的下降沿之后釋放DATA(此時為高電平)。

    (3)測量時序(RH和T)

    “00000101”為相對濕度(RH)量,“00000101”為溫度(θ)測量。發送一組測量命令后控制器要等待測量結束,這個過程大約需要20/80/320ms對應其8/12/14位的測量。測量時間隨內部晶振的速度而變化,最多能夠縮短30%。SHT10下拉DATA至低電平而使其進入空閑模式。重新啟動SCK時鐘讀出數據之前,控制器必須等待這個“數據準備好”信號。

    接下來傳輸2個字節的測量數據和1個字節的CRC校驗。MCU必須通過拉低DATA來確認每個字節。所有的數據都從MSB開始,至LSB有效。例如對于12位數據,第5個SCK時鐘時的數值作為MSB位;而對于8位數據,第1個字節(高8位)數據無意義。

    確認CRC數據位之后,通信結束。如果不使用CRC-8校驗,控制器可以測量數據LSB位之后,通過保持ACK位為高電平來結束本次通信。
    測量和通信結束后,SHT10自動進入休眠狀態模式。

    (4)復位時序

    如果與SHT10的通信發生中斷,可以通過隨后的信號序列來復位串口,如圖3所示。保持DATA為高電平,觸發SCK時鐘9次或更多,接著執行下次命令之前必須發送一組“傳輸啟動”序列。這些序列僅僅復位串口,狀態寄存器的內容仍然保留。


    (5)狀態寄存器讀寫時序

    SHT10通過狀態寄存器實現初始狀態設定。

    讀狀態寄存器時序如圖4所示。


    寫狀態寄存器時序如圖5所示。


    4幾點說明

    ①CRC-8校驗。整個數據的傳輸過程都由8位校驗保證,確保任何錯誤的數據都能夠被檢測到并刪除[1]。

    ②為保持自身發熱溫升小于0.1℃,SHTxx的激活時間不超過10%。如12位精度測量,每秒最多測量2次。

    ③轉換為物理量輸出相對濕度輸出轉換公式為:


    其中,RHlinear為25℃時相對濕度的線性值,SORH為傳感
    器輸出的相對濕度的數值,c1,c2,c3為系數,如表3所列。

    當測量溫度與25℃相差較大時,則需要考慮傳感器的溫度系數:


    其中,RHtrue為溫度不等于25℃時相對濕度的實際值,θc為當前溫度,t1、t2是系數,如表4所列。


    溫度輸出轉換公式為:


    其中,θ為實際溫度,SOθ為傳感器輸出的溫度數值,θ1,θ2為系數,如表5、表6所列。

    由于濕度與溫度經由同一塊芯片測量而得,因此SHT10可以同時實現高質量的露點測量。具體算法可參閱參考文獻[2],這里不再詳述。

    5SHT10與ATmegal的應用實例

    這里以SHT10與Atmel公司低功耗8位RISC指令集的ATmega8L(內部8MHz振蕩頻率)MCU的接口電路為例,給出實際應用電路及控制程序實例。

    本例采用ATmega8L微控制器控制SHT10,讀取溫濕度數據,并將結果顯示LCD1602(采用4位模式)上,如圖6所示。


    程序采用C語言模塊化設計,大大方便被移植到其他MCU上使用,提高了工作效率。

     

    [整理編輯:CK365測控網]
    標簽:  Sensirion[2]    傳感器[14]    [13]    單片機[1]    系統[1]    中的[1]    應用[5]
     
    [ 論文搜索 ]  [ ]  [ 好友分享 ]  [ 打印本文 ]  [ 關閉窗口 ]  [ 返回頂部 ]

    版權與免責聲明:

    ①凡本網注明"來源:CK365測控網"的所有作品,版權均屬于CK365測控網,轉載請必須注明CK365測控網 www.40093096.com。違反者本網將追究相關法律責任。
    ②本網轉載并注明自其它來源的作品,目的在于傳遞更多信息,并不代表本網贊同其觀點或證實其內容的真實性,不承擔此類作品侵權行為的直接責任及連帶責任。如其他媒體、網站或個人從本網下載使用,必須保留本網注明的"稿件來源",并自負版權等法律責任。
    ③如涉及作品內容、版權等問題,請在作品發表之日起一周內與本網聯系,否則視為放棄相關權利。

    注冊成為CK365測控網會員

    可以無需任何費用瀏覽專業技術文章

     
     
    注冊CK365測控網會員以便瀏覽全文
     
     
    一心为民六合心水论坛
    <dl id="5vmrh"><ins id="5vmrh"></ins></dl>
    <div id="5vmrh"></div>
  • <progress id="5vmrh"><span id="5vmrh"></span></progress>
  • <div id="5vmrh"><tr id="5vmrh"></tr></div>
    <li id="5vmrh"></li>
    <div id="5vmrh"></div>
    <dl id="5vmrh"><ins id="5vmrh"><small id="5vmrh"></small></ins></dl>
  • <dl id="5vmrh"><ins id="5vmrh"></ins></dl>
    <div id="5vmrh"></div>
  • <progress id="5vmrh"><span id="5vmrh"></span></progress>
  • <div id="5vmrh"><tr id="5vmrh"></tr></div>
    <li id="5vmrh"></li>
    <div id="5vmrh"></div>
    <dl id="5vmrh"><ins id="5vmrh"><small id="5vmrh"></small></ins></dl>