proteus仿真arduino中调用DHT11/22温湿度传感器
利用proteus仿真arduino连接温湿度传感器,获取温湿度传感器的数字,并通过串口发送到上位机。
·
一、驱动库的获取和测试
1、获取驱动库
首先,我们利用arduino的IDE获取温湿度传感器的驱动库,库管理器中搜索dht11即可。
如果发现有其他依赖的库需要安装,也一起安装吧!
2、测试驱动库
安装好了之后,我们就可以在IDE的实例库中找到测试实例
打开实例,编译一次,发现没有问题,那么说明我们的驱动库下载好了。接下来我们就可以打开proteus绘制电路图,来仿真了。
二、proteus仿真
1、绘制电路图
2、代码
代码为测试dht11的代码,即驱动实例库中自带:
#include "DHT.h"
#define DHTPIN 8 // Digital pin connected to the DHT sensor
#define DHTTYPE DHT11 // DHT 22 (AM2302), AM2321
DHT dht(DHTPIN, DHTTYPE);
void setup() {
Serial.begin(9600);
Serial.println(F("DHTxx test!"));
dht.begin();
}
void loop() {
// Wait a few seconds between measurements.
delay(2000);
float h = dht.readHumidity();
float t = dht.readTemperature();
float f = dht.readTemperature(true);
// Check if any reads failed and exit early (to try again).
if (isnan(h) || isnan(t) || isnan(f)) {
Serial.println(F("Failed to read from DHT sensor!"));
return;
}
// Compute heat index in Fahrenheit (the default)
float hif = dht.computeHeatIndex(f, h);
// Compute heat index in Celsius (isFahreheit = false)
float hic = dht.computeHeatIndex(t, h, false);
Serial.print(F("Humidity: "));
Serial.print(h);
Serial.print(F("% Temperature: "));
Serial.print(t);
Serial.print(F("°C "));
Serial.print(f);
Serial.print(F("°F Heat index: "));
Serial.print(hic);
Serial.print(F("°C "));
Serial.print(hif);
Serial.println(F("°F"));
}
3、仿真
更多推荐
所有评论(0)