从今天开始记录自己学习ESP8266的过程

主要是借助Arduino平台,使用VScode环境

主要的学习思路还是围绕ESP8266的特点功能进行

文章目录

  • 01-ESP8266的STA模式学习:
    • Station(简称STA)模式
      • 1.建立连接
      • 2.管理连接
      • 3.网络信息
      • 4.保护和智能配网
    • 一般的配置流程:
    • 例程:

01-ESP8266的STA模式学习:

Station(简称STA)模式

​ ESP8266处于STA模式简介状态图如下所示,主要的作用是作为一个(STA)站点去连接一个(AP)热点

相关头文件:#include <ESP8266WiFiSTA.h> 里面对于STA库的描述可以拆分为四个部分:

1.建立连接

         wl_status_t begin(const char* ssid, const char *passphrase = NULL, int32_t channel = 0, const uint8_t* bssid = NULL, bool connect = true);wl_status_t begin(char* ssid, char *passphrase = NULL, int32_t channel = 0, const uint8_t* bssid = NULL, bool connect = true);wl_status_t begin(const String& ssid, const String& passphrase = emptyString, int32_t channel = 0, const uint8_t* bssid = NULL, bool connect = true);wl_status_t begin();//The argument order for ESP is not the same as for Arduino. However, there is compatibility code under the hood//to detect Arduino arg order, and handle it correctly. Be aware that the Arduino default value handling doesn't//work here (see Arduino docs for gway/subnet defaults). In other words: at least 3 args must always be given.bool config(IPAddress local_ip, IPAddress gateway, IPAddress subnet, IPAddress dns1 = (uint32_t)0x00000000, IPAddress dns2 = (uint32_t)0x00000000);

2.管理连接

     bool reconnect();bool disconnect(bool wifioff = false);bool isConnected();bool setAutoConnect(bool autoConnect);bool getAutoConnect();bool setAutoReconnect(bool autoReconnect);bool getAutoReconnect();int8_t waitForConnectResult(unsigned long timeoutLength = 60000);

3.网络信息

        // STA network infoIPAddress localIP();uint8_t * macAddress(uint8_t* mac);String macAddress();IPAddress subnetMask();IPAddress gatewayIP();IPAddress dnsIP(uint8_t dns_no = 0);IPAddress broadcastIP();// STA WiFi infowl_status_t status();String SSID() const;String psk() const;uint8_t * BSSID();String BSSIDstr();int8_t RSSI();

4.保护和智能配网

        bool beginWPSConfig(void);//WPS:Wi-Fi Protected Setupbool beginSmartConfig();bool stopSmartConfig();bool smartConfigDone();

一般的配置流程:

  • 设置为STA模式
  • 配置WiFI信息(IP地址,密码)
  • 获取连接WIFi信息

例程:

/*
内容:这个例程是学习ESP8266的STA模式
时间:2022.4.42
作者:bobo'
*///头文件
#include <ESP8266WiFi.h>     IPAddress StaticIP(192,168,209,220);
IPAddress Gateway(192,168,209,10);
IPAddress SubnetMask(255,255,255,0);
//参数定义
//SSID of your network
char ssid[] = "redmi";
//password of your WPA Network
char pass[] = "88888888";//启动函数
void setup()
{//设置串口调试Serial.begin(9600);delay(200);Serial.println("Start STA_Mode");//设置为STA模式WiFi.mode(WIFI_STA);//STA配置状态打印if( WiFi.begin(ssid,pass) == WL_CONNECT_FAILED ){Serial.println("STA_Mode config failed");}else{Serial.println("STA_Mode is config successful");}//Wifi连接状态打印Serial.println(String(ssid)+" is Connecting");//配置IP地址,网关。子掩码WiFi.config(StaticIP,Gateway,SubnetMask);while(WiFi.status() != WL_CONNECTED){if(WiFi.status() == WL_DISCONNECTED ){Serial.print(".");delay(200);}}Serial.println("/");//换行Serial.println("WiFi is connect");//WiFi信息打印Serial.println(WiFi.localIP());Serial.println(WiFi.macAddress());Serial.println(WiFi.subnetMask());Serial.println(WiFi.gatewayIP());Serial.println(WiFi.SSID());Serial.println(WiFi.psk());
}//死循环函数
void loop()
{}

串口调试效果:

Start STA_Mode
STA_Mode is config successful
redmi is Connecting
…/
WiFi is connect
192.168.209.220
A4:E5:7C:BC:9A:87
255.255.255.0
192.168.209.10
redmi
88888888

01-ESP8266的STA模式学习相关推荐

  1. Finger.01 - ESP8266模块STA模式调试

    前言: 前段时间从网上看到了一个很有意思的视频,作者做了一个方方正正的模块,这个模块能够连接网络,并能够通过手机app控制这个模块,这个小模块可以拓展出机械杠杆或者旋转的齿轮,通过这拓展出来的机械结构 ...

  2. 小明分享|ESP8266设置STA模式ping包测试

    硬件准备 PC机.USB数据线.ESP8266开发板,路由器 软件准备 串口调试助手(如:XCOM) 固件(可以使用的是开发板自带的固件) Flash Download 烧录工具: https://w ...

  3. ESP8266的STA模式AP模式配置

    STA模式: 要求服务器和客户端连接到同一个WiFi ESP8266做服务器 设置ESP8266的工作模式 AT+CWMODE=1 复位重启启用STA模式 AT+RST 查询附近可连接WiFi AT+ ...

  4. ESP8266(基于arduino平台)每篇一个知识点—1.wifi STA模式连接指定wifi

    ESP8266(基于arduino平台)每篇一个知识点--1.wifi STA模式连接指定wifi 一.ESP8266(基于arduino平台)每篇一个知识点--1.wifi STA模式连接指定wif ...

  5. ESP8266的AP模式与STA模式简单测试

    系列文章: ESP8266的AP模式与STA模式简单测试 简单的Java服务器和客户端的通信 STM32 ESP8266和Java服务器透传模式下的双向通信 jsp向servlet传输数据 Servl ...

  6. esp8266设置sta失败_ESP8266的AP模式与STA模式简单测试

    一.三种工作模式STA模式(Station):工作在STA模式下的8266就像是一个接收机一样,它可以接收来自无线路由器发出的信号,实现了8266通过接收路由器的信号而能够连接互联网,如果把8266安 ...

  7. busybox文件系统与简单驱动学习(4)-RT3070无线网卡STA模式配置

    需要的源码与版本: DPO_RT3070_LinuxSTA_V2.3.0.2_20100412 libnl-1.1.4 openssl-1.0.1d wpa_supplicant-0.7.3 进入DP ...

  8. esp8266设置sta失败_ESP8266使用教程之初识

    一.ESP8266介绍 ​ 这里将会使用正点原子的 ATK-ESP8266 为例,来说明 ESP8266 的使用. ​ 该模块上面板载了安可信的公司的 ESP8266 模块,ATK-ESP8266 采 ...

  9. [ESP8266]--开启服务器模式和客户端模式

    [ESP8266]--开启服务器模式和客户端模式 版权声明:本文为博主原创文章,欢迎转载,转载请注明出处. https://blog.csdn.net/wangyijieonline/article/ ...

最新文章

  1. 四大指标超现有模型!少样本的无监督图像翻译效果逆天| 技术头条
  2. 设计模式学习笔记(八:迭代器模式)
  3. pandas 绘图 机器学习看特征相关性
  4. 手机h5可以用ifreme_安卓手机可以流畅用几年?至少三年不卡
  5. ESP32 flash容量配置
  6. compress后的bytearray再decode变大_笔记本电脑风扇噪音变大的原因及其解决办法
  7. simulink怎么生成vxworks的执行程序_从EPB模型谈谈Simulink代码生成
  8. 使用2to3.py 转换 python2.x 代码 到python3
  9. 艾伟_转载:使用LINQ to SQL更新数据库(中):几种解决方案
  10. codevs1521 华丽的吊灯
  11. relu函数为分段线性函数,为什么会增加非线性元素
  12. amend用法 git 信息_Git 高级用法,你用过哪些了
  13. ARMv8体系结构基础03:加载和存储指令
  14. CMD发现一个得到字符串长度的方法
  15. MFC动态菜单全攻略
  16. 登陆Binance DEX!TOP携手币安,7天交易瓜分双重奖励!
  17. SQL Server 、SQLiteSpy、Access对应数据库后缀名分别是什么?
  18. 基于matlab的微分例题,基于MATLAB的rlc电路模型仿真例题.doc
  19. 电动汽车如何为电网供电
  20. Linux运行jar包报错:Error:Invalid or corrupt jarfile xxx.jar

热门文章

  1. Exchange邮件筛选技术
  2. Java SE 8 新特性之旅 : Java开发世界的大变动
  3. 怎样配置外汇ea服务器运行,外汇EA如何在MT4上运行?以及如何挂到服务器?
  4. C语言——自定义类型(结构体,枚举,联合体,位段)
  5. 缺陷管理:说一说bug的状态和解决方案
  6. matlab矩阵指定行最大值,求Matlab程序:在2行矩阵中,如何求第1行最大值和第2行相应的最大,请问,如何在MATLAB中编写程序实现求两矩阵A*B,A.*...
  7. 系列之2-神经网络中反向传播与梯度下降的基本概念
  8. Python3 模拟手机登录熊猫直播(panda.tv)
  9. 领域驱动设计--业务架构映射为应用架构(五)
  10. 什么是zkSNARKs:谜一般的“月亮数学”加密,Part-2