1. Home
  2. Docs
  3. 磁力电子学电路实验套件编程版(实验指南)
  4. 三、电路实验
  5. 3.11 温湿度传感器

3.11 温湿度传感器

实验名称: 温湿度传感器的应用
实验难度: ★★★★★
实验简述: DHT11数字温湿度传感器是一款含有已校准数字信号输出的温湿度复合传感器,它应用专用的数字模块采集技术和温湿度传感技术,具有极高的可靠性和卓越的长期稳定性。本次实验我们将通过程序获取温湿度传感器读数,并把读取到的温度、湿度等数据在串口调试工具中显示。
实验过程: 拼接电路并连接好数据线,启动Buddy++,点击上方菜单栏右侧的“预设置”按钮,选择对应版型“Arduino Nano w / ATmega328”和当前连接的串口序号。

我们可以复制下文提供的程序源码至Buddy++编辑器,或者是直接导入“Example-11.ino”文件至Buddy++。

确认无误后点击菜单栏中的“烧录”按钮,程序完成编译后将自动烧录到开发板当中,操作无误后程序将开始执行。

点击菜单栏中的“串口通讯”按钮,通过Buddy++自带的串口通讯工具我们读取当前DHT11温湿度传感模块输出的信号。

实验电路:  
程序代码:
 

	  
#include<BD.h>  
#include<BD_DHT11.h>  
	  
BD_DHT11 dht11;  
	  
void setup()  
{  
	// 初始化代码  
	Serial.begin(9600);  
			
	// SIG->D4(or A22)  
	dht11.Init(D9);  
		  
	pinMode(5, OUTPUT);  
}  
	  
void loop()  
{  
	// 主程序代码  
	dht11.Read();  
    
    // 显示所有数据  
	//dht11.Display();  
	    
	// 获取湿度  
	Serial.println(dht11.GetHumidity(), 2);  
	    
	// 获取摄氏温度  
	Serial.println(dht11.GetTemperature(), 2);  
	    
	// 获取华氏温度  
	Serial.println(dht11.GetFahrenheit(), 2);  
	  
    // 获取开氏温度  
	Serial.println(dht11.GetKelvin(), 2);  
	    
	// 获取露点(摄氏温度)  
	Serial.println(dht11.GetDewPoint(), 2);  
	     
	// 获取露点快速(摄氏温度)  
	Serial.println(dht11.GetDewFast(), 2);  
    
	delay(5000);
}  

 

图  实验电路实拍