亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        SHT11溫濕度傳感器的工作原理探析

        2019-09-10 07:22:44徐錦鋼鄢妍
        河南科技 2019年28期
        關鍵詞:工作原理

        徐錦鋼 鄢妍

        摘 要:本文論述了SHT11溫濕度傳感器的工作原理,使用Proteus仿真軟件設計了SHT11的濕度測量電路圖,并通過1602液晶顯示SHT11測得的濕度值,驗證了濕度測量電路及其程序編寫的正確性。

        關鍵詞:SHT11溫濕度傳感器;工作原理;程序編寫

        中圖分類號:TP274 文獻標識碼:A 文章編號:1003-5168(2019)28-0070-03

        Analysis on the Working Principle of SHT11

        Temperature and Humidity Sensor

        XU Jin’gang1 YAN Yan2

        (1.College of Science and Technology, Jiangxi Normal University,Nanchang Jiangxi 330032;2.Jiangxi Institute of Mechanical and Electrical Technology,Nanchang Jiangxi 330032)

        Abstract: This paper discussed the working principle of SHT11 temperature and humidity sensor, designed the circuit diagram of SHT11 humidity measurement using proteus simulation software, and verified the correctness of the humidity measurement circuit and its programming by 1602 liquid crystal display SHT11 measured humidity value.

        Keywords: SHT11 temperature and humidity sensor;working principle;programming

        1 SHT11溫濕度傳感器簡介

        SHT11是瑞士Sensirion公司生產(chǎn)的一種溫濕度傳感器芯片,具有精度高、體積小、可自校準、體積小等優(yōu)點。該芯片內部還集成有放大器、RAM、冗余校驗寄存器、加熱器、A/D模數(shù)轉換器等部件,通過二線制串行接口和單片機通信[1]。

        2 硬件連接

        SHT11溫濕度傳感器的硬件連接如圖1所示。SHT11溫濕度傳感器主要包括AT89C52單片機、SHT11和1個1602液晶屏。SHT11構成的溫濕度測量系統(tǒng)電路簡單,只需要2個接口即可實現(xiàn)SHT11數(shù)據(jù)的讀和寫操作。圖中SHT11的第2腳(DATA)為數(shù)據(jù)端,接至單片機的P3.1口,傳輸溫濕度數(shù)據(jù)信號;SHT11的第3腳(SCK)為時鐘端,接至單片機的P3.0口,為數(shù)據(jù)傳輸提供時鐘脈沖;SHT11的第1腳(GND)接地;第4腳(VCC)接+5V電源。1602液晶屏數(shù)據(jù)端(D7-D0)接至單片機P0口,控制端(EN、RW、RS)分別接至單片機P2.2、P2.1、P2.0口。

        3 SHT11內部構造

        SHT11溫濕度傳感器將溫度測量、濕度測量、信號轉換、A/D模數(shù)轉換和加熱等功能集成在一個芯片里,其內部結構如圖2所示。

        該芯片包含一個用能隙材料制成的溫度傳感器和一個用電容性聚合體制成的濕度傳感器。這兩個傳感器分別將濕度和溫度轉換成電信號,電信號進入運算放大器做放大處理;之后進入A/D模數(shù)轉換器;最后經(jīng)過二線串行數(shù)字接口將數(shù)字信號輸出。在出廠前,SHT11會在恒濕或恒溫環(huán)境中進行校準,并且將校準系數(shù)存放在校準寄存器中;校準時,校準系數(shù)會自動校準來自SHT11的信號。另外,SHT11內部還集成了一個加熱單元,加熱單元接通后可以將SHT11的溫度提升5℃,但功耗也會相應增加。安裝加熱單元主要是為了比較加熱前后的溫度和濕度值,以此來綜合驗證兩個傳感器元件的性能。在高濕(濕度>95%時)環(huán)境中,加熱功能可防止傳感器結露,同時可縮短傳感器響應時間,從而提高測量精度[2]。

        4 SHT11溫濕度傳感器程序設計

        4.1 SHT11濕度測量時序及其步驟介紹

        SHT11濕度測量時序如圖3所示。通信時,單片機作為主機,SHT11作為從機。通信協(xié)議規(guī)定,DATA線上的數(shù)據(jù)只有在SCK=0時才可以更新。首先單片機發(fā)出起始信號,然后向SHT11發(fā)送地址位和相應的命令字,SHT11接收后向單片機返回ACK響應信號。接著,SHT11開始測量濕度值,然后將測得的高位數(shù)據(jù)先發(fā)出去,等待單片機返回的ACK響應信號,接著將測得的低位數(shù)據(jù)發(fā)出去,等待單片機返回的ACK響應信號。之后進行CRC數(shù)據(jù)校驗,至此完成一次濕度值得測量。

        4.1.1 啟動。SHT11啟動時序如圖4所示。SHT11的啟動方式是當SCK為高電平時,單片機控制DATA線電平由高變?yōu)榈汀=?jīng)過1個SCK周期后,電平再從低變?yōu)楦?。之后,SHT11開始正常工作。否則,SHT11將一直處于休眠狀態(tài),以節(jié)省功耗。

        4.1.2 向SHT11寫入控制字。啟動之后,單片機控制DATA數(shù)據(jù)線對SHT11發(fā)出8位測量命令字。測量命令字中的前3位為地址位,固定為000,后5位表示命令代碼位。

        在發(fā)送8位數(shù)據(jù)之后,SHT11在第9個時鐘脈沖上升沿到來之前將DATA線電平拉低,表示SHT11已經(jīng)接收到了測量命令。在第9個時鐘過去之后,SHT11開始測量,測量時間視具體情況而定。對于8位、12位、14位測量分辨率,所需測量時間分別為20、80ms和320ms。本設計采用默認測量分辨率。

        4.1.3 讀出測量結果。在測量結束后,SHT11會將DATA線電平拉低,接著向單片機發(fā)送2字節(jié)的測量數(shù)據(jù)和1字節(jié)的CRC奇偶校驗碼。每讀到1個字節(jié),單片機需要將DATA線電平下拉,表示成功接收到該字節(jié)。所有數(shù)據(jù)都從MSB開始,右值有效。比如,對于測量濕度默認的12位分辨率方式,前4位為無用數(shù)據(jù),從第5個SCK時鐘開始算作MSB,而對于8位分辨率測量方式,首字節(jié)則無意義。

        如若不需要校驗,可以在第2個字節(jié)之后的應答時鐘前將DATA線電平拉高,以結束本次通信。隨后SHT11進入休眠狀態(tài),以節(jié)省功耗。

        4.1.4 溫濕度數(shù)據(jù)計算及溫度補償。本設計以默認12位分辨率測量時的濕度測量計算方法為例進行說明。當環(huán)境溫度為25℃時,如果單片機讀取的12位數(shù)字結果為RH_Val,則其對應的濕度數(shù)據(jù)可根據(jù)以公式(1)進行擬合:

        RH%=-4.0+0.040 5×RH_Val-RH_Val2×2.8×10-6? (1)

        比如:測量RH_Val=2 353,代入式(1)計算得到濕度值為75.79%。

        當環(huán)境溫度為[T]時,需要對擬合公式做溫度修正,修正公式如下:

        RH%=RH%+([T]-25)×(0.01+0.000 08×RH_Val)? ? ?(2)

        4.2 程序設計

        本文編寫了一個完整的SHT11測量濕度程序,主要包括SHT11啟動函數(shù)、SHT11讀字節(jié)函數(shù)、向SHT11寫命令字函數(shù)、顯示測量結果函數(shù)等。下面給出相應代碼,并作出注釋。

        4.2.1 SHT11啟動函數(shù)。SHT11啟動函數(shù)的相應代碼和注釋如下。

        void start()

        {

        DATA=1;

        SCK=0;//狀態(tài)初始化

        delay(4);//延時4微秒

        SCK=1;//SCK為1時,DATA翻轉為低電平

        delay(4);

        DATA=0;

        _nop_();//短暫延時

        SCK=0;//接著SCK變?yōu)榈碗娖?/p>

        delay(4);

        SCK=1;//在SCK重回高電平期間,DATA翻轉為高電平,則啟動SHT11

        delay(4);

        DATA=1;

        delay(4);

        SCK=0;

        }

        4.2.2 SHT11讀字節(jié)函數(shù)。SHT11讀字節(jié)函數(shù)的相應代碼和注釋如下。

        char read_byte()//從SHT11讀1個字節(jié)數(shù)據(jù)

        {

        uchar i;

        uchar x=0;//存儲讀取的1個字節(jié)測量結果

        DATA=1;//釋放DATA,SHT11控制其數(shù)據(jù)變化

        delay(4);

        for(i=0;i<8;i++)//讀8位數(shù)據(jù)

        {

        x<<=1;

        SCK=1;

        if(DATA==1)

        {

        x|=0x01;//從SHT11中讀1

        }

        SCK=0;

        }

        DATA=0;//每讀1個字節(jié),需拉低DATA

        delay(4);

        SCK=1;//第9個時鐘到來

        delay(4);

        SCK=0;

        delay(4);

        DATA=1;//釋放DATA,為讀下一字節(jié)做準備

        return x;

        }

        4.2.3 向SHT11寫命令字函數(shù)。向SHT11寫命令字函數(shù)的相應代碼和注釋如下。

        void write_com(uchar command)

        {

        uchar i;

        start();

        for(i=0;i<8;i++)//每個命令字包含8個數(shù)據(jù)位

        {

        if((command&0x80)==0x80)//先寫命令字的高位

        DATA=1;//通過數(shù)據(jù)總線向SHT11寫'1'

        else

        DATA=0;//通過數(shù)據(jù)總線向SHT11寫'0'

        command<<=1;//命令字左移1位,

        delay(4);//保持一段延時

        SCK=1;

        delay(4);

        SCK=0;

        delay(4);

        }

        DATA=1;//拉高DATA

        delay(4);

        SCK=1;//第9個時鐘,等待應答ACK

        while(DATA==1);//DATA=0,表示傳感器成功收到寫入命令

        SCK=0;//第9個時鐘下降沿,需將DATA釋放(上拉為高電平)

        DATA=1;

        delay_ms(80);//12位測量需等待80ms以上

        while(DATA==1);//等待DATA被傳感器拉低(測量結束)

        }

        4.2.4 顯示測量結果函數(shù)。顯示測量結果函數(shù)的相應代碼和注釋如下。

        void DisplayResult(float x)

        {

        uchar INT,DEC;

        INT=x;

        DEC=x*100-INT*100;

        write_com(0x80+9);//指定顯示地址

        write_data(0x30+INT/10);//顯示十位數(shù)字

        write_data(0x30+INT%10);//顯示個位數(shù)字

        write_com(0x80+12);

        write_data(0x30+DEC/10);//顯示十分位

        write_data(0x30+DEC%10);//顯示百分位

        }

        5 電路功能測試

        按圖1連接好電路后,按下SHT11上的濕度增減按鍵,模擬外界濕度變化,單片機在讀取濕度值后,將濕度值顯示在1602液晶顯示屏上。比如,圖中測得濕度為80%時,液晶顯示為82.52%,誤差比較小(由計算和數(shù)值轉換導致),說明該電路連接及程序編寫均正確無誤。

        6 結語

        本文采用單片機作為控制器,設計了基于SHT11的濕度測量電路,并論述了SHT11的工作原理,給出了部分程序代碼并注解。通過測試,SHT11能正常測量濕度值,電路工作正常。

        參考文獻:

        [1]百度文庫.SHT11傳感器特性及設定[DB/OL].(2018-07-01)[2019-08-20]. https://wenku.baidu.com/view/02e555086c85ec3a87c2c5df.html.

        [2]楊欣.實例解讀51單片機完全學習與應用[M].北京:電子工業(yè)出版社,2010.

        猜你喜歡
        工作原理
        水稻秸稈聯(lián)合收獲一體機的研究
        FISHER閥在高爐鼓風機防喘振控制及撥風系統(tǒng)應用
        火力發(fā)電廠鍋爐的構成及其原理
        車廂照明裝置及其控制系統(tǒng)的若干問題探討
        低壓電器柜設計元件介紹
        ARP防火墻應用技術的研究與實現(xiàn)
        青年時代(2016年20期)2016-12-08 16:12:19
        淺談PLC在自動化中的應用
        鋅錠自動塑鋼帶打包改造實踐
        神奇的“傳感器”
        科技視界(2016年18期)2016-11-03 22:36:30
        煙草切絲機磨頭導桿油垢自動收集裝置的設計及應用分析
        欧美成人一区二区三区在线观看 | 日韩精品一区二区亚洲观看av| 二区三区视频在线观看| 你懂的视频在线看播放| 人妻在卧室被老板疯狂进入| 最近日本中文字幕免费完整| 国产目拍亚洲精品一区二区| 9l国产自产一区二区三区| 国产一区二区三区青青草 | 91久久精品美女高潮喷白浆| 亚洲日韩在线中文字幕综合| 国产成人精品午夜二三区波多野| 日韩一线无码av毛片免费| 太大太粗太爽免费视频| 五月开心六月开心婷婷网| 欧美人妻aⅴ中文字幕| 八区精品色欲人妻综合网| 日本精品人妻在线观看| 青青河边草免费在线看的视频| 欧美性色黄大片手机版| 久久久精品人妻一区二区三区四 | 视频一区二区在线播放| 二区三区亚洲精品国产| 国产一级黄色片一区二区| 在线视频夫妻内射| 女人大荫蒂毛茸茸视频| 中国女人a毛片免费全部播放| 91九色播放在线观看| 51看片免费视频在观看| 狠狠色丁香久久婷婷综合蜜芽五月| 北岛玲中文字幕人妻系列| 成人免费毛片在线播放| 91成人国产九色在线观看 | 国产免费人成视频网站在线18 | 精品无码专区久久久水蜜桃| 国产伦码精品一区二区| 青青草视频网站在线观看| 国产精品免费看久久久无码| 久久久久久久性潮| 精品理论一区二区三区| 91色综合久久熟女系列|