esp8266 联网问题+链接服务器问题-Arduino中文社区 - Powered by Discuz! Archiver

a54896122 发表于 2020-10-4 19:38

esp8266 联网问题+链接服务器问题


#include <ESP8266WiFi.h>         
#include <DNSServer.h>
#include <ESP8266WebServer.h>
#include <WiFiManager.h> //自动联网ap库
#include <Ticker.h>//多任务库
#include <ArduinoOTA.h> //ota库
#define BLINKER_WIFI
#include <Blinker.h>
char auth[] = "edecd8e7d91a"; //秘钥

BlinkerButton Button1("btn-abc");// 新建组件对象
int counter = 0;
Ticker led1;// 创建多任务变量
// 按下按键即会执行该函数
void button1(const String & state)
{
digitalWrite(LED_BUILTIN, !digitalRead(LED_BUILTIN));
}
   
void setup() {
    pinMode(LED_BUILTIN, OUTPUT);//设置led为输出模式
    pinMode(D2, OUTPUT);//设置led为输出模式
    Serial.begin(115200);   //启动串口 通讯   
    pinMode(LED_BUILTIN, OUTPUT);//设置D2为输出模式
    WiFiManager wifiManager;// 建立WiFiManager对象
    wifiManager.autoConnect("esp8266");// 自动连接WiFi。以下语句的参数是连接ESP8266时的WiFi名称
    Serial.println(""); //带换行
    Serial.print("将要链接wifi: ");//不带换行
    Serial.println(WiFi.SSID());            // WiFi名称
    Serial.print("IP地址:\t");
    Serial.println(WiFi.localIP());   // IP
    ArduinoOTA.setHostname("ESP8266");// OTA设置名
    ArduinoOTA.setPassword("12345678"); // OTA设置密码
    ArduinoOTA.begin();               // OTA启动
    Serial.println("OTA 开启");
    led1.attach(5, led01);             //美5秒调用miao1子程序 1次
   
    BLINKER_DEBUG.stream(Serial);
    BLINKER_DEBUG.debugAll();
    Blinker.begin(auth, ssid, pswd);//////////////////////////此处为何连在一起啊导致已经连上wifi 却连不上服务器
   

    Button1.attach(button1);
   
            }

void loop() {
Blinker.run();

}
   
   



void led01(){                        //创建miao1子程序
   int val = digitalRead(D2); //读取主板led 开关状态
   if(val==LOW)                        //如果状态==关
   {digitalWrite(D2, HIGH); } //开
   else                              //否则
   {digitalWrite(D2, LOW);}   //关
            }




如此代码前面已经设置了自动链接wifi后面遇到点灯的代码又要wifi名和密码 不管是 空着 还是填上都连不上服务器 但是可以联网
我就想着 保留我的联网设置 这样换wifi或者地域就不用在传代码了并保留了 ota功能 现在问题是点灯代码 秘钥 跟wifi名+密码分不开导致连接不到服务器 如何解决啊?来个高手 直接写个代码呗并注明每个代码的意思中文的   新手太难了 谢谢大家

a54896122 发表于 2020-10-4 19:41

目的是保留 原有的wifi设置跟ota设置   后面就是连接服务器 出了问题

a54896122 发表于 2020-10-4 19:42

Blinker.begin(auth, ssid, pswd);这句代码 跟前面wifi设置好像是 有冲突 不知道咋解决了

a54896122 发表于 2020-10-4 19:56

a54896122 发表于 2020-10-4 19:42
Blinker.begin(auth, ssid, pswd);这句代码 跟前面wifi设置好像是 有冲突 不知道咋解决了 ...

就是运行到这句代码 wifi名+密码用不着了 又不知道 怎么才能连上服务器

carlbeven 发表于 2020-10-4 22:35

你既然用了人家点灯的平台就直接用他的库连接网络,不能作为客户端同时接入两个AP。
1.点灯有OTA的方案
2.智能配网了解一下

a54896122 发表于 2020-10-4 23:35

carlbeven 发表于 2020-10-4 22:35
你既然用了人家点灯的平台就直接用他的库连接网络,不能作为客户端同时接入两个AP。
1.点灯有OTA的方案
2. ...

前面的代码已经可以联网连不上就会进入 手机设置的路由器模式   我现在就想吧Blinker.begin(auth, ssid, pswd);这句代码给省掉 因为已经连接网络成功 现在就是怎么连接服务器了就是那个秘钥 咋发给服务器让设备在线 难啊 我新手

a54896122 发表于 2020-10-4 23:38

a54896122 发表于 2020-10-4 23:35
前面的代码已经可以联网连不上就会进入 手机设置的路由器模式   我现在就想吧Blinker.begin(auth, ssid ...

就是在模块已经连上wifi了    再执行那个代码就不能用 了   有什么办法保留前面的代码前面的代码真的是 很好《主要是我懂了》

奈何col 发表于 2020-10-5 08:56

这个只有先看看blinker源码,再自己改了,之前有人改过,但没有开源
页: [1]
查看完整版本: esp8266 联网问题+链接服务器问题