欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  科技

ESP8266 AP模式

程序员文章站 2022-03-07 19:15:25
ESP8266 AP模式ESP8266共有三种工作模式,分别是无线接入点模式(AP)、无线终端模式(STA模式)以及混合模式(以上两种模式的混合)。本节介绍AP模式的基础应用;AP模式:也就是无线接入点,是一个无线网络的创建者,是网络的中心节点。一般家庭或办公室使用的无线路由器就一个AP。由ESP8266自己开启热点,供别的设备接入,组成一个局域网。AP模式常用函数:(arduino ide 烧录软件)WiFi.mode(WIFI_STA):将此WiFi芯片设为站点模式,(WIFI_AP为访问接...

ESP8266 AP模式

ESP8266共有三种工作模式,分别是无线接入点模式(AP)、无线终端模式(STA模式)以及混合模式(以上两种模式的混合)。
本节介绍AP模式的基础应用;
AP模式:也就是无线接入点,是一个无线网络的创建者,是网络的中心节点。一般家庭或办公室使用的无线路由器就一个AP。由ESP8266自己开启热点,供别的设备接入,组成一个局域网。
AP模式常用函数:(arduino ide 烧录软件)

WiFi.mode(WIFI_STA):将此WiFi芯片设为站点模式,(WIFI_AP为访问接入点模式,WIFI_AP_STA为访问接入点和站点的混合模式)

WiFi.softAPIP(): ESP8266开发板建立WiFi接入点后, 我们可以使用本函数获取ESP8266开发板的IP地址。此函数的返回值是ESP8266开发板的IP地址。类型:IPAddress

WiFi.softAPdisconnect() / WiFi.softAPdisconnect(val):softAPdisconnect函数可用于关闭ESP8266开发板的接入点模式,即关闭ESP8266所建立的WiFi网络
参数val类型为bool。如果将该参数设置为true,设备将直接关闭接入点模式。
在不输入参数的情况下调用该函数,设备会将当前配置的网络名和密码设置为空值。

IPAddress ip=WiFi.softAPIP():获取AP的IP地址,并存入变量IP中。IPAddress类提供了对IP地址的转换、处理等功能。其Parse方法可将IP地址字符串转换为IPAddress实例。

wiFi.softAPgetStationNum():softAPgetStationNum函数可用于获取通过WiFi连接到ESP8266开发板接入点的无线终端数量,

WiFi.softAPConfig() / WiFi.softAPConfig (local_ip, gateway, subnet):
softAPConfig函数可用于配置ESP8266开发板所建立的接入点网络信息,如开发板IP地址,网关,子网掩码。
local_ip: 接入点的ip地址。(IPAddress型)
gateway: 网关IP地址。 (IPAddress型)
subnet: 子网掩码。(IPAddress型)
WiFi.softAP(ssid, password):
配置AP信息,并开启AP
ssid:wifi名字
password:wifi密码

示例:

思路:利用esp8266的wifi ap模模式创建一个WiFi,如果有设备连接,esp8266外设led灯亮起,如果没有设备连接,led灯灭;

#include <ESP8266WiFi.h>      
const char *ssid = "wang";             //AP的SSID(WiFi名字)
const char *password = "12345678";            //AP的密码
int led=14;                                   //设置指示灯io,D5
void setup() {
  Serial.begin(115200);
  Serial.println("");
  pinMode(led,OUTPUT);
  digitalWrite(led,0);  
  WiFi.mode(WIFI_AP);                         //设置为AP模式
  WiFi.softAP(ssid, password);                //配置AP信息,并开启AP
  
  IPAddress softLocal(192,168,1,1);           //IP地址,用以设置IP第4字段
  IPAddress softGateway(192,168,1,1);         //IP网关,用以设置IP第3字段
  IPAddress softSubnet(255,255,255,0);
  //配置自定义的IP信息
  WiFi.softAPConfig(softLocal, softGateway, softSubnet);  
  IPAddress IP = WiFi.softAPIP();           //用变量IP接收AP当前的IP地址
  Serial.println(IP);                       //打印输出IP的IP地址
}
void loop() { 
  int gotoAP=WiFi.softAPgetStationNum();    //获取当前连接到AP的设备数量  
  //如果没有设备连接到AP,熄灭LED灯,否则点亮LED灯
  if(gotoAP==0){                            //连接数为0,说明AP没有设备连接 
    digitalWrite(led,0);                    //熄灭LED灯
  }else{
    digitalWrite(led,1);                    //点亮LED灯
  }  
}

手机连接后,现象如图:

ESP8266  AP模式

ESP8266  AP模式

本文地址:https://blog.csdn.net/weixin_44784157/article/details/108186477