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

Arduino中文社区

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 2182|回复: 7

[已解答] esp8266 联网问题+链接服务器问题

[复制链接]
发表于 2020-10-4 19:38 | 显示全部楼层 |阅读模式

[pre]#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);}   //关
            }[/pre]




如此代码  前面已经设置了自动链接wifi  后面遇到点灯的代码又要wifi名和密码 不管是 空着 还是填上都连不上服务器 但是可以联网  
我就想着 保留我的联网设置 这样换wifi或者地域就不用在传代码了  并保留了 ota功能 现在问题是  点灯代码 秘钥 跟wifi名+密码分不开  导致连接不到服务器 如何解决啊?来个高手 直接写个代码呗  并注明每个代码的意思中文的   新手太难了 谢谢大家
 楼主| 发表于 2020-10-4 19:41 | 显示全部楼层
目的是保留 原有的wifi设置跟ota设置   后面就是连接服务器 出了问题
 楼主| 发表于 2020-10-4 19:42 | 显示全部楼层
Blinker.begin(auth, ssid, pswd);  这句代码 跟前面wifi设置好像是 有冲突 不知道咋解决了
 楼主| 发表于 2020-10-4 19:56 | 显示全部楼层
a54896122 发表于 2020-10-4 19:42
Blinker.begin(auth, ssid, pswd);  这句代码 跟前面wifi设置好像是 有冲突 不知道咋解决了 ...

就是运行到这句代码 wifi名+密码用不着了 又不知道 怎么才能连上服务器
发表于 2020-10-4 22:35 | 显示全部楼层
你既然用了人家点灯的平台就直接用他的库连接网络,不能作为客户端同时接入两个AP。
1.点灯有OTA的方案
2.智能配网了解一下
 楼主| 发表于 2020-10-4 23:35 | 显示全部楼层
carlbeven 发表于 2020-10-4 22:35
你既然用了人家点灯的平台就直接用他的库连接网络,不能作为客户端同时接入两个AP。
1.点灯有OTA的方案
2. ...

前面的代码已经可以联网  连不上就会进入 手机设置的路由器模式   我现在就想吧Blinker.begin(auth, ssid, pswd);  这句代码  给省掉 因为已经连接网络成功 现在就是怎么连接服务器了  就是那个秘钥 咋发给服务器让设备在线 难啊 我新手
 楼主| 发表于 2020-10-4 23:38 | 显示全部楼层
a54896122 发表于 2020-10-4 23:35
前面的代码已经可以联网  连不上就会进入 手机设置的路由器模式   我现在就想吧Blinker.begin(auth, ssid ...

就是在模块已经连上wifi了    再执行那个代码就不能用 了   有什么办法保留前面的代码  前面的代码真的是 很好《主要是我懂了》
发表于 2020-10-5 08:56 | 显示全部楼层
这个只有先看看blinker源码,再自己改了,之前有人改过,但没有开源
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2024-11-28 14:44 , Processed in 0.240718 second(s), 15 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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