打印

【零知ESP8266教程】快速入门15 SmartConfig一键配网

[复制链接]
601|0
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
roc2two|  楼主 | 2019-10-28 17:59 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式

这可是零知ESP8266的硬核知识哦,因为ESP8266其本身是一个WiFi模块,那么使用它的WiFi功能就是最基本的啦,接下来我们一起研究操作,别走神哦!

首先第一步:配置网络。了解SmartConfig与Airkiss一键配网,给ESP8266一键配网上云端。当你拿到一块WiFi模块,如果需要连上网络,则需要将SSID名称、密码设置到模块当中。
一般有几种方式:
①就是通过串口接到输入设备,通过串口输入AT指令(SSID名称和密码);
②就是设备提供一个AP热点,手机连上这个热点,然后通过手机把家里的WiFi的SSID和密码配置到设备上,最后手机再切换回家里的WiFi,这种配网成功率可以说是100%。

通过SmartConfig技术配置,微信的AirKiss、ESP8266的esptouch,这是最智能的配网方式。但是缺点也很明显,那就是配网成功率未达到100%,同时SmartConfig还得另外安装一个app到你的智能手机。SmartConfig最佳的应用场景就是你开发的产品需要搭配App来使用。

接下来我们通过实例来做一个小DEMO
一、硬件
电脑,windows系统
零知ESP8266开发板
micro-usb线

二、
(1)打开零知开发工具,界面如下:


(2)电脑连接零知8266WiFi模块


(3)烧入以下代码:

/**
*          by 零知实验室(www.lingzhilab.com)
*    -- 零知开源,让电子制作变得更简单! --
*    作者:云上上云
*    时间: 2019/06/01 13:39
*    说明: 一键配网
**/
#include <ESP8266WiFi.h>
void smartConfig()
{
  WiFi.mode(WIFI_STA);
  Serial.println("\r\nWait for Smartconfig等待连接");
  delay(2000);
  // 等待配网
  WiFi.beginSmartConfig();

while (1)
  {
    Serial.print(".");
    delay(500);
    if (WiFi.smartConfigDone())
    {
      Serial.println("SmartConfig Success");
      Serial.printf("SSID:%s\r\n", WiFi.SSID().c_str());
      Serial.printf("PSW:%s\r\n", WiFi.psk().c_str());
      WiFi.setAutoConnect(true);  // 设置自动连接
      break;
    }
  }

  Serial.println("");
  Serial.println("WiFi connected");  
  Serial.println("IP address: ");
  Serial.println(WiFi.localIP());
}

void setup()
{
  Serial.begin(115200);
  smartConfig();
}

void loop()
{
  delay(100);
  Serial.println("配置成功");
}

(4)验证代码,连接esp8266,上传程序,打开调试,串口选择1152000,窗口会不断打印一个一个的点,等待连接

三、
然后使用ESP8266提供的App ESPTouch 或者 SmartConfigAPP。(在Github下载,也可至零知实验室官网查看同名原帖下载),进行如下操作:



四、
验证成果,当手机端配置成功,出现如下结果


以上,我们的一键配置就完成了。


使用特权

评论回复

相关帖子

发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

75

主题

85

帖子

1

粉丝