2018年1月22日 星期一

Arduino (4) 溫溼度偵測模組DHT11+IIC/I2C1602顯示器。



DHT11溫溼度偵測模組

這種組合顧名思義就是"數位溫濕度計"。

模組有三根PIN,分別為DC5V,DATA輸出。

DATA和DC+需並聯一個4.7K電阻做上拉電阻。

因為我沒有4.7K電阻,所以我串聯兩個2.2K代替(如下圖)。

一開始我以為這個模組已經內建上拉電阻了,仔細看才發現上面的SMD電阻只是給LED分壓

而已。




來看程式 :

#include <dht.h>
#include <Wire.h>
#include <LiquidCrystal_I2C.h>
LiquidCrystal_I2C lcd(0x27,2,1,0,4,5,6,7,3,POSITIVE);
//LCD+轉換器的的定義設定。

const int dht_dpin A1;
dht DHT; 
//宣告腳位和變數

void setup(){ 

lcd.begin(16, 2);

Serial.begin(9600);
//序列阜9600 bps。
}
void loop(){ 
lcd.setCursor(0, 0);
DHT.read11(dht_dpin);
//偵測器的回傳數值。

lcd.print("Humidity:");     
lcd.print((float)DHT.humidity, 1);     
lcd.print("%");     
lcd.setCursor(0, 1);     
lcd.print("Tempure:");     
lcd.print((float)DHT.temperature, 1);     
lcd.print("oC");   
//LCD顯示規則。

Serial.println((float)DHT.humidity);
Serial.println((float)DHT.temperature);
Serial.println();
//序列阜顯示規則。

delay(2000);
//兩秒回傳一次
}







用手去壓偵測模組溫溼度會上升。






可觀看序列阜數值,delay設定2000,為兩秒偵測一次。

但說真的很不準,當時我房間只有15度,卻顯示20度。






沒有留言:

張貼留言

8051 (6) 紅外線避障模組控制LED七段顯示器。

這篇要做的Project就是感測器測到訊號時,LED七段顯示器會開始計算偵測次數, 到第5次時會讓紅色LED燈發光。 程式如下: #include <reg52.h> unsigned char seg[5]={0xf9,...