微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 测试测量 > Labview > 求助帖:arduino和labview通信问题

求助帖:arduino和labview通信问题

时间:10-02 整理:3721RD 点击:
/* How to use the DHT-22 sensor with Arduino uno
Temperature and humidity sensor
*/

//Libraries
#include ;

#define tem_command 0x11
#define hum_command 0x10
//Constants
#define DHTPIN 2 // what pin we're connected to
#define DHTTYPE DHT22 // DHT 22 (AM2302)
DHT dht(DHTPIN, DHTTYPE); //// Initialize DHT sensor for normal 16mhz Arduino
byte comdata[3] = {0};

void receive_data(void); //接收串口数据
void test_do_data(void); //测试串口数据是否正确,并执行命令


//Variables
int chk;
float hum; //Stores humidity value
float temp; //Stores temperature value

void setup()
{
Serial.begin(9600);
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 = Serial.read();
//延时一会,让串口缓存准备好下一个字节,不延时可能会导致数据丢失
delay(2);
}
}
void test_do_data(void)
{
if(comdata[0] == 0x55) //0x55和0xAA均为命令帧头,用于判断命令是否有效
{
if(comdata[1] = 0xAA)
{
switch (comdata[2])
{
case tem_command: //温度采集并发送
temp= dht.readTemperature();
Serial.print(temp,2);
break;
case hum_command : //湿度采集并发送
hum = dht.readHumidity();
Serial.print(hum,2);
break;
}
}
}
}
《Arduino与LabVIEW开发实践》,沈金鑫,机械工业出版社
做的这个DHT22的例子,没有任何数据输出,这是为什么呢?

真的很急!

自顶!
求助啊!

求助!      

你先用串口监视器看看数据

串口监视器没有数据显示

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top