ESP8266连接wifi

ESP8266连接wifi

ESP8266共有三种工作模式,分别是无线接入点模式(AP)、无线终端模式以及混合模式(以上两种模式的混合)。
STA模式:客户端模式,ESP8266模块通过路由器连接互联网手机或电脑通过互联网实现对设备的远程控制。

AP模式:默认模式ATK_ESP8266模块作为热点,实现手机或电脑直接与模块通信,实现局域网无线控制,就相当于它做路由器,散发WIFI信号。

STA+AP模式:两种模式的共存模式,即可以通过互联网控制可实现无缝切换,方便操作。
ESP8266WIFI库文件:
在这里插入图片描述
WiFi.begin():

在不使用任何参数的情况下调用此函数,ESP8266模块将启用无线终端模式,并根据以前保存在闪存中的wifi配置连接到最近一次使用的接入点。
我们也可以再调用begin函数的时候,为函数提供参数,
WiFi.begin(ssid, password, channel, bssid, connect)
ssid – 要连接的wifi接入点的名字,最多可以包含32个字符。(类型:char*)
password – 要连接的 wifi接入点密码,长度至少应为8个字符且不超过64个字符。(类型:char*)
channel – 要连接的wifi接入点信道。(类型:int32_t)
bssid – 要连接的wifi接入点的mac地址。(类型:const uint8_t*)
connect – 连接状态参数。如果connect参数为true,ESP8266开发板会使用闪存中储存的信息尝试连接WiFi。如果connect参数为false,ESP8266开发板不会尝试连接WiFi,而只会将WiFi连接信息保存在闪存中。
如果ESP8266开发板成功启动无线终端模式,则返回true,否则返回false。

wifi.status():

status函数可以在无线终端模式下,获取当前的ESP8266模块网络连接状态。
0:​ WL_IDLE_STATUS – 返回值为0说明正在尝试连接

1​: WL_NO_SSID_AVAIL – 返回值为1说明没有找到设定的SSID的网络

2​: WL_SCAN_COMPLETED – 返回值为2说明网络扫描完毕

3:​ WL_CONNECTED – 返回值为3说明连接成功成功

4: WL_CONNECT_FAILED – 返回值为4说明连接失败

5: WL_CONNECTION_LOST – 返回值为5说明连接丢失

6: WL_DISCONNECTED – 返回值为6说明未连接

wifi.localIP():
localIP函数可在无线终端模式下获取当前ESP8266模块的IP地址。
返回值为当前无线终端分配的IP地址,数据类型为IPAdress型;

client.print(val);:
print函数用于发送数据到已连接的服务器。
val:所要发送的数据,可以是字符串、字符或者数值。
对象在处理或发送网络数据时,可以通过调用Stream类中的函数来实现。
println函数会在发送的数据结尾增加一个换行符(’\n’),而print函数则不会。

整体思路为:设置WiFi的名称和密码,创建未连接状态,监测连接状态,串口输出wifi状态和连接状态

#include <ESP8266WiFi.h>
const char* name  = "CMCC-btVz"; //这里改成你的设备当前环境下要连接的接入点名字
const char* password  ="xxxxxxxx";         //这里改成你的设备当前环境下要连接的接入点密码

void setup(void)
{ 
    Serial.begin(115200);  // 启动串口通讯,波特率设置为115200
    
  Serial.println("未连接");

  
  Serial.println("开始连接");
 
  WiFi.begin(name , password);
  Serial.print("正在连接到");
  Serial.print(name );
  
  while (WiFi.status() != WL_CONNECTED) //判定网络状态
  {
  delay(500);
  
  Serial.print("网络连接成功"); 

  Serial.print("连接到的接入点名字:");
  
  Serial.println(name );            // 告知用户建立的接入点WiFi名
  
  Serial.print("连接到的接入点密码:");
  
  Serial.println(password);        // 显示用户建立的接入点WiFi密码
  
  Serial.print("无线模式成功开启,网络连接成功");
  }
  if (WiFi.status() == WL_CONNECTED)
  {
    Serial.print("无线IP地址为: ");
    Serial.println(WiFi.localIP());
  }  
}
void loop() {}

  • 9
    点赞
  • 73
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
WLAN是英文WirelessLAN的缩写,就是无线局域网的意思。无线以太网技术是一种基于无线传输的局域网技术,与有线网络技术相比,具有灵活、建网迅速、个人化等特点。将这一技术应用于电信网的接入网领域,能够方便、灵活地为用户提供网络接入,适合于用户流动性较大、有数据业务需求的公共场所、高端的企业及家庭用户、需要临时建网的场合以及难以采用有线接入方式的环境等 作为全球公认的局域网权威,IEEE802工作组建立的标准在过去二十年内在局域网领域独领风骚。这些协议包括了802.3Ethernet协议、802.5TokenRing协议、802.3z100BASE-T快速以太网协议。在1997年,经过了7年的工作以后,IEEE发布了802.11协议,这也是在无线局域网领域内的第一个国际上被认可的协议。  在1999年9月,他们又提出了802.11b"HighRate"协议,用来对802.11协议进行补充,802.11b在802.11的1Mbps和2Mbps速率下又增加了5.5Mbps和11Mbps两个新的网络吞吐速率。利用802.11b,移动用户能够获得同Ethernet一样的性能、网络吞吐率、可用性。这个基于标准的技术使得管理员可以根据环境选择合适的局域网技术来构造自己的网络,满足他们的商业用户和其他用户的需求。802.11协议主要工作在ISO协议的最低两层上,并在物理层上进行了一些改动,加入了高速数字传输的特性和连接的稳定性。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值