描述
现在我已经为这个项目苦苦挣扎了几个小时。但最后我发现我没有正确的知识。所以人们知道你在做什么是非常重要的。在这种情况下,我建议您浏览页面,而不仅仅是复制和粘贴代码。
现在,这个项目使用一个带三针的 DHT11 温度和湿度传感器,但您也可以使用任何其他传感器,代码中的更改应根据模型进行。我在这个项目中使用了 Arduino UNO。
首先,将 DHT 传感器与 Arduino 板连接起来。
VCC-5.5V
DATA - PIN 4(您也可以使用引脚 3、4、5、12、13 或 14
15脚可以工作,但程序上传时必须断开DHT)
接地 - 接地
用上述电路连接LCD 1602 I2C显示器。
LCD 与 Arduino 板的连接
VCC-5.5V
接地 - 接地
SDA - A4(模拟引脚 4)
SCL - A5(模拟引脚 5)
如果你在想我在想什么,那么电路看起来像这样:
红色线表示 VCC 线,黑色线表示 GND 线。
注意 -如果您发现您的传感器迅速变热(仅适用于 4 针传感器),则连接一个 10K 上拉电阻连接传感器的 VCC 和信号端。
最后,真正理解开始的代码部分。所以,基本上我使用了两个库,一个用于传感器,另一个用于 LCD 1602 I2C 显示器。那么让我们开始吧:
我们首先插入 DHT 库,下载该库的链接如下。所以它会像这样。
#include"DHT.h"
然后定义传感器引脚。因为我已经将数据引脚设为 4。我的代码将遵循如下
#defineDHTPIN4
之后我们需要确定正在使用的传感器。现在,我使用了 DHT 11 传感器,但如果您有不同的传感器,那么代码将根据传感器型号而改变
#defineDHTTYPEDHT11
然后使用上面的数据
DHTdht(DHTPIN,DHTTYPE);
在与 DHT 传感器连接后,我们现在将转向 LCD 显示屏
#include
LiquidCrystal_I2Clcd(0x27,16,2);
所以,现在我们准备好开始 void 设置和循环部分。
我一起写了整个代码希望你不会觉得太难。
void setup() { dht.begin();// initialize the sensor lcd.backlight();// turn on lcd backlight lcd.init();// initialize lcd } void loop() { lcd.clear(); lcd.setCursor(0,0);// set the cursor on the first row and column lcd.print("Humidity="); lcd.print((float)dht.readHumidity());//print the humidity lcd.print("%"); lcd.setCursor(0,1);//set the cursor on the second row and first column lcd.print("Temp="); lcd.print((float)dht.readTemperature());//print the temperature lcd.print("Celsius"); delay(2000); lcd.clear(); }
请注意,温度自动以摄氏度为单位,因此您无需更改任何值,除非您想要华氏度的答案。
我强烈推荐 Arduino 网络编辑器,因为您不需要下载任何额外的库,因为它是预先包含的,但如果您不使用网络编辑器而是使用该软件,您可能需要做一些小的改动,但主要部分仍然是相同的。
注意 -如果您正在使用该软件,则无需下载 LiquidCrystal_I2C 库,因为它已预先包含在软件中。
看起来我们已经到了项目的末尾。
再见,玩得开心。
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
全部0条评论
快来发表一下你的评论吧 !