编译上传成功,已经连接wifi,但是blinker出错-Arduino中文社区 - Powered by Discuz!

Arduino中文社区

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 4846|回复: 11

[已解答] 编译上传成功,已经连接wifi,但是blinker出错

[复制链接]
发表于 2021-4-27 07:24 | 显示全部楼层 |阅读模式
IOS端。使用了最新的库及APP进行测试,但是问题仍然存在。设备端的LOG信息。  IDE设置

  • Module: [Wemos D1 mini r2]
  • Flash Mode: [qio|dio|other](没找到)
  • Flash Size: [4MB]
  • lwip Variant: [v2 Lower Memory]
  • Reset Method: [ck|nodemcu](没找到)
  • Flash Frequency: [40Mhz]
  • CPU Frequency: [80Mhz]
  • Upload Using: [OTA|SERIAL](没找到)
  • Upload Speed: [115200] (serial upload only)


发表于 2021-4-30 09:31 | 显示全部楼层
delk 发表于 2021-4-29 22:55
void loop() {
    Blinker.run();
//    int val = analogRead(A0);     //读取A0口的电压值并赋值digi ...

analogread两次读取间隔不能太短,试试将最后 delay改成blinker.delay
 楼主| 发表于 2021-4-27 07:24 | 显示全部楼层
>>>stack>>>

ctx: cont
sp: 3ffffe00 end: 3fffffc0 offset: 0190
3fffff90:  3fffdad0 00000000 3fff0ae0 40210dc6  
3fffffa0:  3fffdad0 00000000 3fff0ae0 402216a8  
3fffffb0:  feefeffe feefeffe 3ffe85c0 40100ea5  
<<<stack<<<

--------------- CUT HERE FOR EXCEPTION DECODER ---------------
[⸮⸮:⸮$⸮[67]
[67]
__       __                __
/\ \     /\ \    __        /\ \              v0.3.7.210421
\ \ \___ \ \ \  /\_\    ___\ \ \/'\      __   _ __   
\ \ '__`\\ \ \ \/\ \ /' _ `\ \ , <    /'__`\/\`'__\
  \ \ \L\ \\ \ \_\ \ \/\ \/\ \ \ \\`\ /\  __/\ \ \./
   \ \_,__/ \ \__\\ \_\ \_\ \_\ \_\ \_\ \____\\ \_\  
    \/___/   \/__/ \/_/\/_/\/_/\/_/\/_/\/____/ \/_/  
    To better use blinker with your IoT project!
    Download latest blinker library here!
    => https://github.com/blinker-iot/blinker-library

[476] _aliType: &aliType=sensor
[511] _duerType:
[530] _miType:
[548] _authKey: bb2646fb426f
[579] Connecting to 1248L
[611] ESP8266_MQTT initialized...
[644]
===========================================================
================== Blinker Timer loaded! ==================
     EEPROM address 1536-2431 is used for Blinker Timer!
========= PLEASE AVOID USING THESE EEPROM ADDRESS! ========
===========================================================

[964] countdown state: false
[994] _cdRunState: 0
[1017] _totalTime: 0
[1040] _runTime: 0
[1061] _action:
[1079] loop state: false
[1107] _lpRunState: 0
[1130] _times: 0
[1149] _tri_times: 0
[1172] _time1: 0
[1191] _action1:
[1211] _time2: 0
[1229] _action2:
[1249] _lpData: 0
[1269] checkNum count: 1

--------------- CUT HERE FOR EXCEPTION DECODER ---------------

Exception (0):
epc1=0x4000dce5 epc2=0x00000000 epc3=0x00000000 excvaddr=0x00000000 depc=0x00000000

>>>stack>>>

ctx: cont
sp: 3ffffe00 end: 3fffffc0 offset: 0190
3fffff90:  3fffdad0 00000000 3fff0ae0 40210dc6  
3fffffa0:  3fffdad0 00000000 3fff0ae0 402216a8  
3fffffb0:  feefeffe feefeffe 3ffe85c0 40100ea5  
<<<stack<<<

--------------- CUT HERE FOR EXCEPTION DECODER ---------------
 楼主| 发表于 2021-4-27 07:26 | 显示全部楼层
上面是串口错误信息。第一次发现是在连接了很长时间之后,在串口消息最末尾发现的
 楼主| 发表于 2021-4-27 07:30 | 显示全部楼层
#define BLINKER_WIFI
#define BLINKER_ALIGENIE_SENSOR
//数据存储
#include <Blinker.h>
#define FIRE_Pin      A0                  // 火焰传感器管脚
char auth[] = "bb2646fb426f";
char ssid[] = "1248L";
char pswd[] = "84491998";
float  tempresult = 2000;BlinkerNumber TEMP("temp");
// 新建组件对象
BlinkerButton Button1("btn-111");
// 按下按键即会执行该函数
void button1_callback(const String & state) {
    BLINKER_LOG("触发远程关门 ", state);
    digitalWrite(D5, !digitalRead(D5));
    //查看D5引脚的电平,
    并且根据现有电平提高或降低电平,
    从而达到控制磁锁的目的
    Blinker.vibrate();
  
}
void heartbeat()
{
   
    TEMP.print(tempresult);    //心跳包,用于定时发送数据
   
}
void dataStorage()
{
    Blinker.dataStorage("temp", tempresult);//存储功能的标识
  
}
void aligenieQuery(int32_t queryCode)  //数据查询
{
    switch (queryCode)
    {
        case BLINKER_CMD_QUERY_ALL_NUMBER :
            BLINKER_LOG("AliGenie Query All");
            BlinkerAliGenie.temp(tempresult);
            BlinkerAliGenie.print();
            break;
            
        case BLINKER_CMD_QUERY_TEMP_NUMBER :
            BlinkerAliGenie.temp(tempresult);
            BlinkerAliGenie.print();
            break;
      
        default :
            BlinkerAliGenie.temp(20);   
            BlinkerAliGenie.print();
            break;
    }
}




void setup() {
    // 初始化串口
    Serial.begin(9600);   
    BLINKER_DEBUG.stream(Serial);
    BLINKER_DEBUG.debugAll();
    pinMode(LED_BUILTIN, OUTPUT);
    digitalWrite(LED_BUILTIN, HIGH);
    // 初始化wifi
    Blinker.begin(auth, ssid, pswd);
    Button1.attach(button1_callback);
     Blinker.attachHeartbeat(heartbeat);  //心跳包,用于定时发送数据
    BlinkerAliGenie.attachQuery(aligenieQuery);  //查询
    Blinker.attachDataStorage(dataStorage);   //数据存储
     pinMode(FIRE_Pin, INPUT);
      pinMode(D5, OUTPUT);
       digitalWrite(D5,HIGH);
      
}

void loop() {
    Blinker.run();
     int val = analogRead(FIRE_Pin); //读取A0口的电压值并赋值digitalRead
     tempresult = 2000/val;
if(val > 700)
  {   
  Serial.print("D0: ");
  Serial.println(val);  
  Serial.println(" ");  
   Serial.println(tempresult);
   delay(1500);
  }
 楼主| 发表于 2021-4-27 07:32 | 显示全部楼层
在引入数据记录、查询功能之前就已经出现这种问题了
 楼主| 发表于 2021-4-27 07:46 | 显示全部楼层
在这之前已经完成一次点灯练习,并且添加了一个串口打印
发表于 2021-4-28 23:08 | 显示全部楼层
1.测试例程
2.不能使用delay,改为blinker.delay
 楼主| 发表于 2021-4-29 20:09 | 显示全部楼层
奈何col 发表于 2021-4-28 23:08
1.测试例程
2.不能使用delay,改为blinker.delay

digitalWrite(LED_BUILTIN, !digitalRead(LED_BUILTIN));
测试里的这句中的LED_BUILTIN能不能换成别的串口,还是这个只能用来控制板载灯

点评

LED_BUILTIN可以换成其他IO  详情 回复 发表于 2021-4-29 22:23
发表于 2021-4-29 22:23 | 显示全部楼层
delk 发表于 2021-4-29 20:09
digitalWrite(LED_BUILTIN, !digitalRead(LED_BUILTIN));
测试里的这句中的LED_BUILTIN能不能换成别的串 ...

LED_BUILTIN可以换成其他IO
 楼主| 发表于 2021-4-29 22:55 | 显示全部楼层
奈何col 发表于 2021-4-28 23:08
1.测试例程
2.不能使用delay,改为blinker.delay

void loop() {
    Blinker.run();
//    int val = analogRead(A0);     //读取A0口的电压值并赋值digitalRead

  经过测试,就是上面这句直接影响是否能连接blinker,加了就连不上了
}

点评

analogread两次读取间隔不能太短,试试将最后 delay改成blinker.delay  详情 回复 发表于 2021-4-30 09:31
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|Archiver|手机版|Arduino中文社区

GMT+8, 2024-11-28 13:38 , Processed in 0.077455 second(s), 17 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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