Arduino爱好者

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 292|回复: 7

[未解决] 求大佬解答:blinker设备显示离线,串口监视也是一片空白

[复制链接]
发表于 2023-3-15 10:51 | 显示全部楼层 |阅读模式
我运行论坛里的温湿度计和土壤湿度的示例程序已经上传成功了,线也是按照示例连的,
但是手机APP显示设备离线,串口监视器也是一片空白,请问这个要怎么解决。求各位大佬帮我看一下,谢谢大家!!!
板是wifiduino
f74fe2b68f4a29b32a071b3a948c0a1.png
 楼主| 发表于 2023-3-18 19:00 | 显示全部楼层
WSLJH 发表于 2023-3-17 21:42
重点:没有在setup函数中执行Serial.begin(波特率);
串口未初始化,所以不输出调试信息
Blinker无响应可能是 ...

好的,非常感谢您!
1.是的我的程序没有添加波特率,非常感谢您帮我看了一遍程序!
2.我用程序初始化过,串口监视器有数据。
3.wifi名称或密码输我会仔细检查的。
再次感谢您
发表于 2023-3-16 17:23 | 显示全部楼层
一、代码不全看不到后面的程序,考虑是否有延时,阻塞Blinker.run();收发数据可能。
二、查看热点是否有设备连接,有设备连接八成是代码问题,没有设备连接,有可能是你的热点问题

点评

海!外直播 v.ht/29999 禁闻视频 v.ht/55755 办公大楼落成,门口对联.书记挥毫,上联:说实话办实事一身正气,下联:不贪污不受贿两袖清风.大家齐赞!考虑民主,征横批,大家不作声,一老农经过,顺口而出:查无此人   发表于 2023-3-16 17:59
 楼主| 发表于 2023-3-17 10:16 | 显示全部楼层
#define BLINKER_WIFI
#include <Blinker.h>
#include <DHT.h>

volatile int hum;
volatile int tem;
volatile int soil;
DHT dhtD7(D7, 11);

char auth[] = "XXXX";
char ssid[] = "XXXX";
char pswd[] = "jd000000";
BlinkerNumber Number1("num-abc");
BlinkerNumber Number2("num-abd");
BlinkerNumber Number3("num-abe");
void dataStorage(){
   Blinker.dataStorage("num-abc", hum);
   Blinker.dataStorage("num-abd", tem);
   Blinker.dataStorage("num-abe", soil);
}
BlinkerText Text1("TextKey");

void setup(){
  Blinker.begin(auth,ssid,pswd);
  hum = 0;
  tem = 0;
  soil = 0;
  pinMode(D13, OUTPUT);
   dhtD7.begin();
  Blinker.attachDataStorage(dataStorage);
}

void loop(){
  hum = dhtD7.readHumidity();
  tem = dhtD7.readTemperature();
  soil = analogRead(A0);
  delay(100);
  Number1.print(hum);
  Number2.print(tem);
  Number3.print(soil);
  if (soil < 200) {
    Text1.print("灌溉中");
    digitalWrite(D13,HIGH);

  } else if (soil >= 200) {
    Text1.print("湿度正常");
    digitalWrite(D13,LOW);
  }
  Blinker.run();

}
 楼主| 发表于 2023-3-17 10:23 | 显示全部楼层
int_i 发表于 2023-3-16 17:23
一、代码不全看不到后面的程序,考虑是否有延时,阻塞Blinker.run();收发数据可能。
二、查看热点是否有设 ...

好的,谢谢您!
代码发出来了,如果您有时间的话麻烦帮忙看一下。
前天我重发了一套板,不知道是不是板的问题。板回来我会好好按着您的回复试一下的。
发表于 2023-3-17 15:02 | 显示全部楼层
不客气。我之前也做过类似装置,开始也出现了你说的这个问题。我总结了几点原因,不知道适不适合你这个,但是可以尝试的修改一下。
1、dela()函数修改成Blinker.delay();
2、不要再主循环中大量的使用print函数,有可能会阻塞通信之间的数据收发。可以做一个标记位
3、另外数据组件是跟随心跳包一起返回,你写一个心跳包的回调函数
示例:
BlinkerNumber Number1("num-abc");//创建对象
void heart_callback()
{
Number1.print(hum);
}
Blinker.attachHeartbeat(heart_callback);//注册回调函数
4、另外你这个湿温度会要用到实时数据,你还需要再写一个实时数据部分的代码
发表于 2023-3-17 21:42 | 显示全部楼层
本帖最后由 WSLJH 于 2023-3-17 21:56 编辑
小伍吧 发表于 2023-3-17 10:16
#define BLINKER_WIFI
#include
#include

重点:没有在setup函数中执行Serial.begin(波特率);
串口未初始化,所以不输出调试信息
Blinker无响应可能是因为wifi名称或密码输入错误,请务必仔细检查!
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|Archiver|手机版|好玩手机游戏盒子|196体育|Arduino爱好者

GMT+8, 2023-3-21 17:03 , Processed in 0.073346 second(s), 20 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表