位置导航: ESP8266库 / ESP8266WiFiGeneric库 / 本页
说明
设备在接入点模式下有无线终端从设备所建立的WiFi网络断开时,设备会自动调用事件处理回调函数。该事件处理回调函数由onSoftAPModeStationDisconnected的参数所定义。
语法
WiFi.onSoftAPModeStationDisconnected(onStationDisconnected)
参数
onStationDisconnected:回调函数
返回值
WiFiEventHandler对象
示例程序
关于本函数的具体使用方法,请参考以下代码,尤其是代码中高亮的语句部分。
onSoftAPModeStationDisconnected函数使用时有两个重点步骤:
1. 通过语句
WiFiEventHandler stationDisconnectedHandler;
建立WiFiEventHandler 实例对象,对象名称为stationDisconnectedHandler。
2. 通过语句
stationDisconnectedHandler = WiFi.onSoftAPModeStationDisconnected(onStationDisconnected);
对回调函数进行相应的设置。此处onSoftAPModeStationDisconnected函数的参数“onStationDisconnected”就是设置了回调函数的名称。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 |
/********************************************************************** 项目名称/Project : 零基础入门学用物联网 程序名称/Program name : ESP8266WiFiGeneric_AP_2 团队/Team : 太极创客团队 / Taichi-Maker (www.taichi-maker.com) 作者/Author : 小凯 日期/Date(YYYYMMDD) : 20200319 程序目的/Purpose : 用于演示ESP8266WiFiGeneric库中onSoftAPModeStationDisconnected函数 ----------------------------------------------------------------------- 本示例程序为太极创客团队制作的《零基础入门学用物联网》中示例程序。 该教程为对物联网开发感兴趣的朋友所设计和制作。如需了解更多该教程的信息,请参考以下网页: http://www.taichi-maker.com/homepage/esp8266-nodemcu-iot/iot-c/esp8266-nodemcu-web-client/http-request/ ***********************************************************************/ #include <ESP8266WiFi.h> #define ssid "TaichiMaker_WIFI" // 这里定义将要建立的WiFi名称。此处以"TaichiMaker_WIFI"为示例 // 您可以将自己想要建立的WiFi名称填写入此处的双引号中 #define password "12345678" // 这里定义将要建立的WiFi密码。此处以12345678为示例 // 您可以将自己想要使用的WiFi密码放入引号内 // 如果建立的WiFi不要密码,则在双引号内不要填入任何信息 WiFiEventHandler stationDisconnectedHandler; //实例化WIFI事件对象 void setup() { Serial.begin(115200); WiFi.softAP(ssid, password); // 此语句是重点。WiFi.softAP用于启动NodeMCU的AP接入点模式。 // 括号中有两个参数,ssid是WiFi名。password是WiFi密码。 // 这两个参数具体内容在setup函数之前的位置进行定义。 Serial.println(""); Serial.print("Access Point: "); // 通过串口监视器输出信息 Serial.println(ssid); // 告知用户NodeMCU所建立的WiFi名 Serial.print("Password: "); Serial.println(password); // 告知用户NodeMCU所建立的WiFi密码 Serial.print("IP address: "); // 以及NodeMCU的IP地址 Serial.println(WiFi.softAPIP()); // 通过调用WiFi.softAPIP()可以得到NodeMCU的IP地址 // onSoftAPModeStationDisconnected函数的参数onStationDisconnected为事件处理回调函数。 // 也就是说,每当有无线终端从ESP8266设备建立的WiFi连接断开后,设备都会自动调用onStationDisconnected函数 stationDisconnectedHandler = WiFi.onSoftAPModeStationDisconnected(onStationDisconnected); } void loop(){ } void onStationDisconnected(const WiFiEventSoftAPModeStationDisconnected& evt) { //接入点模式下有无线终端设备断开连接时的回调函数 Serial.print("断开连接的无线终端是: "); Serial.println(macToString(evt.mac));//调用macToString函数将mac转换成字符串 } String macToString(const unsigned char* mac) {//字符串转换函数 char buf[20]; snprintf(buf, sizeof(buf), "%02x:%02x:%02x:%02x:%02x:%02x",mac[0], mac[1], mac[2], mac[3], mac[4], mac[5]); return String(buf); } |
相关内容
– onSoftAPModeStationConnected
– onSoftAPModeProbeRequestReceived
位置导航: ESP8266库 / ESP8266WiFiGeneric库 / 本页