Arduino Nano 和 DHT11 實現(xiàn) LabVIEW 溫濕度采集
Arduino IDE 安裝如下庫文件
DHT sensor library by Adafruit
DHT11 溫濕度傳感器 Data 引腳與 Arduino Nano 開發(fā)板的 D2 引腳連接
代碼
#include < DHT.h >
#define Temperature_COMMAND 0x10 //采集命令字
#define Humidity_COMMAND 0x11 //采集命令字
?
#define DHTPIN 2 // DHT sensor data GPIO
#define DHTTYPE DHT11 // select one kind of sensors from DHT11, DHT22 and DHT21
DHT dht(DHTPIN, DHTTYPE);
byte comdata[3]={0}; //定義數(shù)組數(shù)據(jù),存放串口接收數(shù)據(jù)
void receive_data(void); //接受串口數(shù)據(jù)
void test_do_data(void); //測試串口數(shù)據(jù)是否正確,并更新數(shù)據(jù)
void setup()
{
Serial.begin(115200);
dht.begin();
}
void loop()
{
while (Serial.available() > 0) //不斷檢測串口是否有數(shù)據(jù)
{
receive_data(); //接受串口數(shù)據(jù)
test_do_data(); //測試數(shù)據(jù)是否正確并更新標志位
}
}
void receive_data(void)
{
int i ;
for(i=0;i< 3;i++)
{
comdata[i] =Serial.read();
//延時一會,讓串口緩存準備好下一個字節(jié),不延時可能會導(dǎo)致數(shù)據(jù)丟失,
delay(2);
}
}
void test_do_data(void)
{
if(comdata[0] == 0x55) //0x55和0xAA均為判斷是否為有效命令
{
if(comdata[1] == 0xAA)
{
switch (comdata[2])
{
case Temperature_COMMAND:
Serial.println((float)dht.readTemperature());
break;
case Humidity_COMMAND:
Serial.println((float)dht.readHumidity());
break;
}
}
}
}
**將代碼下載進開發(fā)板,通過串口助手軟件分別發(fā)送 HEX 格式數(shù)據(jù) **55AA10
和 55AA11
獲取反饋的溫濕度數(shù)據(jù),測試通過后關(guān)閉串口并運行 LabVIEW 程序,即可獲得溫濕度變化曲線。
LabVIEW 界面
標簽 1 記錄了溫濕度的變化曲線
標簽 2 記錄溫濕度隨時間的演化過程
程序框圖
Part 1
Part 2
效果展示
工程文件見附件。
審核編輯 黃宇
-
LabVIEW
+關(guān)注
關(guān)注
1977文章
3657瀏覽量
325617 -
Arduino
+關(guān)注
關(guān)注
188文章
6477瀏覽量
187814 -
溫濕度采集
+關(guān)注
關(guān)注
0文章
8瀏覽量
7556 -
DHT11
+關(guān)注
關(guān)注
19文章
277瀏覽量
57699
發(fā)布評論請先 登錄
相關(guān)推薦
基于arduino的dht11溫濕度傳感器的使用
![基于<b class='flag-5'>arduino</b>的<b class='flag-5'>dht11</b><b class='flag-5'>溫濕度</b>傳感器的使用](https://file.elecfans.com/web1/M00/45/35/pIYBAFplmmOAF8UWAACG_JV8Jns110.jpg)
Arduino開發(fā)板使用DHT11溫濕度傳感器的方法 精選資料分享
Arduino開發(fā)板使用DHT11溫濕度傳感器的方法 精選資料分享
DHT11溫濕度傳感器介紹
基于STM32開發(fā)板實現(xiàn)傳感數(shù)據(jù)采集-DHT11溫濕度采集
如何用STM32和DHT11實現(xiàn)溫濕度測量和報警
DHT11數(shù)字溫濕度傳感器產(chǎn)品介紹
溫濕度DHT11資料
使用Arduino實現(xiàn)DHT11溫濕度模塊的程序
![使用<b class='flag-5'>Arduino</b><b class='flag-5'>實現(xiàn)</b><b class='flag-5'>DHT11</b><b class='flag-5'>溫濕度</b>模塊的程序](https://file.elecfans.com/web1/M00/AA/BF/pIYBAF2pfG6AcC1pAARMbh9dUUc522.png)
STM32實例——基于STM32開發(fā)板實現(xiàn)傳感數(shù)據(jù)采集-DHT11溫濕度采集
![STM32實例——基于STM32開發(fā)板<b class='flag-5'>實現(xiàn)</b>傳感數(shù)據(jù)<b class='flag-5'>采集</b>-<b class='flag-5'>DHT11</b><b class='flag-5'>溫濕度</b><b class='flag-5'>采集</b>](https://file.elecfans.com/web1/M00/D9/4E/pIYBAF_1ac2Ac0EEAABDkS1IP1s689.png)
用STM32和DHT11實現(xiàn)溫濕度測量和報警
![用STM32和<b class='flag-5'>DHT11</b><b class='flag-5'>實現(xiàn)</b><b class='flag-5'>溫濕度</b>測量和報警](https://file.elecfans.com/web1/M00/D9/4E/pIYBAF_1ac2Ac0EEAABDkS1IP1s689.png)
使用STM32F103ZET6采集DHT11溫濕度串口顯示
![使用STM32F103ZET6<b class='flag-5'>采集</b><b class='flag-5'>DHT11</b><b class='flag-5'>溫濕度</b>串口顯示](https://file.elecfans.com/web1/M00/D9/4E/pIYBAF_1ac2Ac0EEAABDkS1IP1s689.png)
Arduino Nano 和 NodeMCU ESP8266 讀取 DHT11 環(huán)境溫濕度數(shù)據(jù)及 OLED顯示
![<b class='flag-5'>Arduino</b> <b class='flag-5'>Nano</b> 和 NodeMCU ESP8266 讀取 <b class='flag-5'>DHT11</b> 環(huán)境<b class='flag-5'>溫濕度</b>數(shù)據(jù)及 OLED顯示](https://file1.elecfans.com/web2/M00/02/62/wKgZoma7LraAIX68AAHwAf2dvXI565.png)
評論