1.3 NodeMCU开发板的接入点模式
物联网开发教程
- 接入点模式(Access Point, 也称 AP)
在这种模式下,NodeMCU会建立WIFI给其他设备进行连接
- 相关函数和库
#include <ESP8266WiFi.h>
这是ESP8266WIFI库,后面有一些函数是来自这个库
WiFi.softAP(id, password);
这是启动接入点模式的函数,来自ESP8266WiFi库
第一个参数是建立的WiFi的名称,第二个参数是建立的WiFi的密码
WiFi.softAPIP()
调用这个函数可以返回ESP8266的IP地址
- 例程
#include <ESP8266WiFi.h> // 本程序使用ESP8266WiFi库
const char *id = "ESP8266"; // 这里定义将要建立的WiFi名称。此处以"ESP8266"为示例
// 您可以将自己想要建立的WiFi名称填写入此处的双引号中
const char *password = "12345678"; // 这里定义将要建立的WiFi密码。此处以12345678为示例
// 您可以将自己想要使用的WiFi密码放入引号内
// 如果建立的WiFi不要密码,则在双引号内不要填入任何信息
void setup() {
Serial.begin(9600); // 启动串口通讯
WiFi.softAP(id, password); // 此语句是重点。WiFi.softAP用于启动NodeMCU的AP模式。
// 括号中有两个参数,ssid是WiFi名。password是WiFi密码。
// 这两个参数具体内容在setup函数之前的位置进行定义。
Serial.print("Access Point: "); // 通过串口监视器输出信息
Serial.println(id); // 告知用户NodeMCU所建立的WiFi名
Serial.print("IP address: "); // 以及NodeMCU的IP地址
Serial.println(WiFi.softAPIP()); // 通过调用WiFi.softAPIP()可以得到NodeMCU的IP地址
}
void loop() {
}
这里的loop中并没有其他内容
- 第一次烧录失败
报错是esp8266could not open port ‘COM10’
然后就拔掉了USB接口然后重新接上,中间等了一段时间,然后又能烧录成功
难道是插得太久没有烧录导致ESP8266进入睡眠模式,然后串口就打不开了?
eg:之前插着有很长一段时间
- 第二次烧录成功
进入串口监视器
但是这个时候串口没有显示任何内容,这是因为开发ESP8266时每次打开窗口监视器程序不会自动复位
这个时候可以按下ESP8266板子上的RST复位按键进行手动复位,可以发现串口更新了内容
前面的乱码是正常现象,可以不用管
后面的输出IP得益于这个语句中的函数
WiFi.softAPIP()
现在可以使用电脑连接ESP8266建立的WiFi
然后输入之前在程序之中设置的密码输入进行连接
连接成功以后可以打开cmd窗口,输入Ping空格IP地址
输入的IP地址应当和在串口监视器中显示的一样
显示Ping成功,注意一定是要连接到这个WiFi才能Ping成功,否则会显示请求超时
[外链图片转存中…(img-YMyxGGn6-1640695829625)]
显示Ping成功,注意一定是要连接到这个WiFi才能Ping成功,否则会显示请求超时