Arduino UNO使用DHT11温湿度传感器通过串口向PC发送温湿度信息​
  93byl95AX42O 2023年11月19日 18 0

Arduino UNO使用DHT11温湿度传感器通过串口向PC发送温湿度信息

硬件介绍

笔者使用的开发板为Arduino UNO国产兼容板,淘宝上大约卖20rmb左右。如下图

Arduino UNO使用DHT11温湿度传感器通过串口向PC发送温湿度信息​_引脚


DHT11传感器为四脚封装样式,从正面看引脚从左往右依次为1、2、3、4引脚,其中1引脚为VCC 3~5V,2引脚为通信引脚要与单片机引脚相连,3引脚是个NC,4引脚GND接地。

此外,还有面包板、直插面包版的USB供电模块和若干必要的杜邦线。

适用于Arduino开发环境的DHT传感器的库文件下载

请从GITHUB下载:

https://github.com/markruys/arduino-DHT

下载库文件,如图:

Arduino UNO使用DHT11温湿度传感器通过串口向PC发送温湿度信息​_库文件_02


下载到本地后,将此zip包,复制到项目存储位置下的libraries文件夹(注意不是Aruduino IDE的安装位置),然后加压即可,为了方便管理库目录,请将DHT库放在一个单独的文件夹,比如我就在libraries目录下新建一个DHT目录。

硬件连接

DHT11的1脚和4脚分别连接VCC和GND(我连接的是面板包上的USB供电板供电,也可以使用UNO主板上的3.3v、5V和GND接口,为传感器通电即可),2脚连接开发板CPU针脚通信,本例中我连接的CPU引脚也是2号脚,记住你连接的针脚,在后面的编程中需要用到。如下图:

Arduino UNO使用DHT11温湿度传感器通过串口向PC发送温湿度信息​_串口_03


编写读取DHT11温湿度的程序

我们就用DHT库的例程来读取温湿度,代码如下:


#include "DHT.h" //引入库文件头


DHT dht; // 定义传感器对象


void setup() {

Serial.begin(9600);

Serial.println();

Serial.println("Status\tHumidity (%)\tTemperature (C)\t(F)"); // 输出头


dht.setup(2); // 数据针脚为2号


}


void loop() {

delay(dht.getMinimumSamplingPeriod()); // 获取最小取样时间,用此时间进行延时。DHT11是1秒,其他支持传感器是2秒


float humidity = dht.getHumidity(); // 读取湿度

float temperature = dht.getTemperature(); // 读取温度


Serial.print(dht.getStatusString()); // 获取状态字符串

Serial.print("\t");

Serial.print(humidity, 1); // 串口传输湿度

Serial.print("\t\t");

Serial.print(temperature, 1); // 串口传输温度,摄氏度

Serial.print("\t\t");

Serial.println(dht.toFahrenheit(temperature), 1); // 串口传输温度,华氏度

}

点击上传至UNO开发板后,已经可以正常读取温湿度了,如下图:

Arduino UNO使用DHT11温湿度传感器通过串口向PC发送温湿度信息​_引脚_04




【版权声明】本文内容来自摩杜云社区用户原创、第三方投稿、转载,内容版权归原作者所有。本网站的目的在于传递更多信息,不拥有版权,亦不承担相应法律责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@moduyun.com

  1. 分享:
最后一次编辑于 2023年11月19日 0

暂无评论

推荐阅读
  QtpjMRSUUfXb   2023年12月08日   37   0   0 引脚#include看门狗
  UYSNSBVoGd8R   2023年12月08日   13   0   0 引脚#include#define
93byl95AX42O