Arduino Nano 和 DHT11 实现 LabVIEW 温湿度采集
1.Arduino UNO 测试 SD 卡2.通过视频帧提取及批量取模转换实现基于STC32的点阵LED动画播放3.通过视频帧提取及批量取模转换实现基于STC32的点阵LED动画播放4.A fatal esptool.py error occurred: Cannot configure port, something went wrong.5.基于LabVIEW上位机与Arduino单片机串口通信的DS18B20环境温度采集6.基于STC8H8K64U和DS18B20的温度采集和LabVIEW上位机显示7.基于ESP8266网络天气时钟的OLED显示8.Arduino串口读取人体存在传感器雷达感应模块并通过OLED显示9.灵动Mini-SPIN0230开发板测评10.Arduino Nano 和 NodeMCU ESP8266 读取 DHT11 环境温湿度数据及 OLED显示11.ESP8266 太空人动画的 OLED 显示12.ESP8266 开发板网络时钟和天气 OLED 显示
13.Arduino Nano 和 DHT11 实现 LabVIEW 温湿度采集
14.OLED 显示雷达数据Arduino Nano 和 DHT11 实现 LabVIEW 温湿度采集
Arduino IDE 安装如下库文件
DHT sensor library by Adafruit
DHT11 温湿度传感器 Data 引脚与 Arduino Nano 开发板的 D2 引脚连接
代码
#include <DHT.h>
#define Temperature_COMMAND 0x10 //采集命令字
#define Humidity_COMMAND 0x11 //采集命令字
#define DHTPIN 2 // DHT sensor data GPIO
#define DHTTYPE DHT11 // select one kind of sensors from DHT11, DHT22 and DHT21
DHT dht(DHTPIN, DHTTYPE);
byte comdata[3]={0}; //定义数组数据,存放串口接收数据
void receive_data(void); //接受串口数据
void test_do_data(void); //测试串口数据是否正确,并更新数据
void setup()
{
Serial.begin(115200);
dht.begin();
}
void loop()
{
while (Serial.available() > 0) //不断检测串口是否有数据
{
receive_data(); //接受串口数据
test_do_data(); //测试数据是否正确并更新标志位
}
}
void receive_data(void)
{
int i ;
for(i=0;i<3;i++)
{
comdata[i] =Serial.read();
//延时一会,让串口缓存准备好下一个字节,不延时可能会导致数据丢失,
delay(2);
}
}
void test_do_data(void)
{
if(comdata[0] == 0x55) //0x55和0xAA均为判断是否为有效命令
{
if(comdata[1] == 0xAA)
{
switch (comdata[2])
{
case Temperature_COMMAND:
Serial.println((float)dht.readTemperature());
break;
case Humidity_COMMAND:
Serial.println((float)dht.readHumidity());
break;
}
}
}
}
将代码下载进开发板,通过串口助手软件分别发送 HEX 格式数据 55AA10
和 55AA11
获取反馈的温湿度数据,测试通过后关闭串口并运行 LabVIEW 程序,即可获得温湿度变化曲线。
LabVIEW 界面
标签 1 记录了温湿度的变化曲线
标签 2 记录温湿度随时间的演化过程
效果展示
工程文件见附件。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?