1、說明MCU:零知開源開發板-標準板
模塊:DHT11模塊
開發工具:零知開源開發工具
DHT11模塊是單總線的接口,使用非常簡單,供電3.3-5V,可以直接在零知實驗室平臺上使用。接線如下所示,把模塊的OUT腳與零知標準板的A0引腳相連接即可。
2、測試
相應連線接好后,只需打開零知開源開發工具找到相應的代碼,上傳程序打開調試窗口即可看到調試結果。
調試結果:
從調試窗口得出的數據可以看到溫度和濕度都有在變化。
3、核心代碼
- // DHT11溫濕度傳感器demo演示
-
- #include "dht11.h"
-
- //使用DHT11
- DHT sensor;
-
- void setup()
- {
- Serial.begin(9600);
-
- //使用A0引腳連接到DHT11模塊的輸出腳
- sensor.attach(A0);
-
- delay(1000);
- }
-
- void loop()
- {
- //開始獲取溫濕度數據
- sensor.update();
-
- switch (sensor.getLastError())
- {
- case DHT_ERROR_OK:
- char msg[128];
- // 格式化輸出
- sprintf(msg, "Temperature = %dC, Humidity = %d%%",
- sensor.getTemperatureInt(), sensor.getHumidityInt());
- Serial.println(msg);
- break;
- case DHT_ERROR_START_FAILED_1:
- Serial.println("Error: start failed (stage 1)");
- break;
- case DHT_ERROR_START_FAILED_2:
- Serial.println("Error: start failed (stage 2)");
- break;
- case DHT_ERROR_READ_TIMEOUT:
- Serial.println("Error: read timeout");
- break;
- case DHT_ERROR_CHECKSUM_FAILURE:
- Serial.println("Error: checksum error");
- break;
- }
-
- delay(2000);
- }
復制代碼 完整代碼可到零知實驗室官網免費獲取。
|