位置导航: ESP8266库 / ESP8266WiFiGeneric库 / 本页
说明
无线终端模式下连接上WIFI并且获得IP地址后,设备会自动调用事件处理回调函数。该事件处理回调函数由onStationModeGotIP的参数所定义。
语法
WiFi.onStationModeGotIP(GotIPHandler)
参数
GotIPHandler:回调函数
返回值
WiFiEventHandler对象
示例程序
关于本函数的具体使用方法,请参考以下代码,尤其是代码中高亮的语句部分。
通过本程序,当设备连接到WiFi并且获取到IP地址后,将会通过串口监视器输出设备的IP地址信息。串口输出设备IP地址信息是通过GotIPHandler函数所实现的。
onStationModeGotIP函数使用时有两个重点步骤:
1. 通过语句
WiFiEventHandler STAGotIP;
建立WiFiEventHandler 实例对象,对象名称为STAGotIP。
2. 通过语句
STAGotIP = WiFi.onStationModeGotIP(GotIPHandler);
对回调函数进行相应的设置。此处onStationModeGotIP函数的参数“GotIPHandler”就是设置了回调函数的名称。
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 |
/********************************************************************** 项目名称/Project : 零基础入门学用物联网 程序名称/Program name : ESP8266WiFiGeneric_STA_4 团队/Team : 太极创客团队 / Taichi-Maker (www.taichi-maker.com) 作者/Author : 小凯 日期/Date(YYYYMMDD) : 20200319 程序目的/Purpose : 用于演示ESP8266WiFiGeneric库中onStationModeGotIP函数 ----------------------------------------------------------------------- 本示例程序为太极创客团队制作的《零基础入门学用物联网》中示例程序。 该教程为对物联网开发感兴趣的朋友所设计和制作。如需了解更多该教程的信息,请参考以下网页: 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 STAGotIP; //实例化WIFI事件对象 void setup() { Serial.begin(115200); //打开串口 // onStationModeGotIP函数的参数GotIPHandler为事件处理回调函数。 // 也就是说,当无线终端连接到WiFi后,设备都会自动调用GotIPHandler函数 STAGotIP = WiFi.onStationModeGotIP(GotIPHandler); WiFi.begin(ssid, password); // 此语句是重点。WiFi.begin用于启动NodeMCU的无线终端模式。 // 括号中有两个参数,ssid是WiFi名。password是WiFi密码。 // 这两个参数具体内容在setup函数之前的位置进行定义。 Serial.println(""); // 通过串口监视器输出信息 Serial.print("Access Point:"); Serial.println(ssid); // 告知用户连接的WiFi名 Serial.print("Password:"); Serial.println(password); // 告知用户连接的WiFi密码 } void loop(){ } void GotIPHandler(const WiFiEventStationModeGotIP &event)//当无线终端连接到WiFi后,设备都会自动调用 { Serial.println("模块获得IP:"); Serial.print(WiFi.localIP());//输出NodeMCU的IP地址。这一功能是通过调用 //WiFi.localIP()函数来实现的。该函数的返回值即NodeMCU的IP地址。 } |
相关内容
– onStationModeConnected
– onStationModeDisconnected
位置导航: ESP8266库 / ESP8266WiFiGeneric库 / 本页