天天看點

arduino使用oled代碼_Arduino提高篇05—溫濕度傳感器DHT11

關注、 星标公衆号,不錯過精彩内容

arduino使用oled代碼_Arduino提高篇05—溫濕度傳感器DHT11

DHT11數字溫濕度傳感器是一款含有已校準數字信号輸出的溫濕度綜合傳感器,常用于暖通空調、汽車、除濕器、自動控制等領域。本篇介紹DHT11的驅動,通過序列槽列印采集到的環境溫濕度資料。

1. DHT11介紹

DHT11是一款溫濕度一體的數字傳感器,内部包括一個電阻式測濕元件和一個NTC測溫元件,并與一個高性能8位單片機連接配接。外部隻需要簡單的電路連接配接,就能實時采集本地溫濕度。DHT11與單片機等控制器采用簡單的單總線進行通訊,隻需要一個I/O口。傳感器内部溫濕度資料40Bit一次性傳給單片機,資料采用校驗和的方式進行校驗,有效地保證資料傳輸的準确性。

DHT11技術參數如下:

  • 工作電壓:3.3V-5.5V
  • 工作電流:平均0.5mA
  • 輸出:單總線數字信号
  • 測量範圍:濕度20-95%RH,溫度0-50℃
  • 精度:濕度±5%,溫度±2℃
  • 分辨率:濕度1%,溫度1℃

DHT11的管腳排列,窗孔朝上,從左到右依次為VCC、Dout、NC、GND。

arduino使用oled代碼_Arduino提高篇05—溫濕度傳感器DHT11

DHT11管腳

DHT11在電路連接配接中,通常會在資料引腳外加上拉電阻,如下為DHT11子產品:

arduino使用oled代碼_Arduino提高篇05—溫濕度傳感器DHT11

DHT11子產品

2. 安裝驅動庫

在Arduino IDE中點選「項目」—「加載庫」—「管理庫」,輸入"dht11",會看到有很多的庫,可根據情況自己選擇安裝使用。本文選擇第二個「DHT sensor library」進行安裝。

arduino使用oled代碼_Arduino提高篇05—溫濕度傳感器DHT11

安裝庫

要使用「DHT sensor library」,我們還要下載下傳安裝「Adafruit_Sensor」,需要注意的是,此庫并沒有在管理庫中找到,我們在Github上直接點選下載下傳(https://github.com/adafruit/Adafruit_Sensor)。

arduino使用oled代碼_Arduino提高篇05—溫濕度傳感器DHT11

下載下傳庫

下載下傳到壓縮包後,在IDE中點選「項目」—「加載庫」—「添加一個.ZIP庫」,定位到剛才下載下傳的壓縮包進行安裝。

arduino使用oled代碼_Arduino提高篇05—溫濕度傳感器DHT11

添加庫

3. 實驗材料

  • Uno R3開發闆
  • 配套USB資料線
  • 面包闆及配套連接配接線
  • DHT11傳感器子產品

4. 實驗步驟

1. 根據原理圖搭建電路圖。

DHT11的單總線連接配接非常簡單,子產品VCC、GND分别連接配接到開發闆的3.3V、GND,子產品的DATA引腳連接配接開發闆的任意數字引腳,本文連接配接數字引腳2。

實驗原理圖如下圖所示:

arduino使用oled代碼_Arduino提高篇05—溫濕度傳感器DHT11

電路連接配接圖

實物連接配接圖如下圖所示:

arduino使用oled代碼_Arduino提高篇05—溫濕度傳感器DHT11

實物連接配接圖

2. 建立sketch,拷貝如下代碼替換自動生成的代碼并進行儲存。

1
           

3. 連接配接開發闆,設定好對應端口号和開發闆類型,進行程式下載下傳。

arduino使用oled代碼_Arduino提高篇05—溫濕度傳感器DHT11

程式下載下傳

5. 實驗現象

打開序列槽螢幕,波特率設定成與程式中相一緻,可以看到間隔列印采集到的溫濕度資料。

arduino使用oled代碼_Arduino提高篇05—溫濕度傳感器DHT11

實驗現象

推薦閱讀:

Arduino提高篇02—OLED屏漢字顯示

Arduino提高篇03—OLED屏圖檔顯示

Arduino提高篇04—U8g2庫驅動OLED

若覺得文章對你有幫助,随手點『好看』、轉發分享、留言,也是對我的支援。

關注公衆号「TonyCode」,背景回複“提高”,擷取文中代碼。

arduino使用oled代碼_Arduino提高篇05—溫濕度傳感器DHT11

長按識别圖中二維碼關注