讀取目前的溫溼度,並從「序列埠監控視窗」觀看讀取數值。範例檔:「3.SimpleDHT.ino」。

常見的溫溼度感測器

Untitled

Untitled

接線圖

感測器VCC(供電)→ 5V、GND(接地)→GND、DATA(輸出)→4號接口。

IMG20230607103524.jpg

安裝程式庫

在「工具」→「管理程式庫」,輸入查詢「simpleDHT」並進行安裝。

Untitled

點選「檔案」→「範例」→第三方程式庫的範例「SimpleDHT」→「DHT11Default」。

Untitled

程式碼

int pinDHT11 = 4; //將DATA輸出從預設的2號改為4號

#include <SimpleDHT.h>

// for DHT11, 
//      VCC: 5V or 3V
//      GND: GND
//      DATA: 2
int pinDHT11 = 4;  //將DATA輸出從預設的2號改為4號
SimpleDHT11 dht11(pinDHT11);

void setup() {
  Serial.begin(115200);
}

void loop() {
  // start working...
  Serial.println("=================================");
  Serial.println("Sample DHT11...");
  
  // read without samples.
  byte temperature = 0;
  byte humidity = 0;
  int err = SimpleDHTErrSuccess;
  if ((err = dht11.read(&temperature, &humidity, NULL)) != SimpleDHTErrSuccess) {
    Serial.print("Read DHT11 failed, err="); Serial.print(SimpleDHTErrCode(err));
    Serial.print(","); Serial.println(SimpleDHTErrDuration(err)); delay(1000);
    return;
  }
  
  Serial.print("Sample OK: ");
  Serial.print((int)temperature); Serial.print(" *C, "); 
  Serial.print((int)humidity); Serial.println(" H");
  
  // DHT11 sampling rate is 1HZ.
  delay(1500);
}

範例結果

Untitled

練習:設定當溫度介於15度以下呈現「黃色」,16度到28度呈現「綠色」,28度以上呈現「紅色」。