注:对于ESP32开源技术感兴趣的可以加群,我们一起探索交流学习,群号:782473783。群名:ESP32开源技术交流群。
这篇文章的目的是解释如何使用ESP32和Arduino IDE设置一个软AP。
介绍
这篇文章的目的是解释如何使用ESP32和Arduino IDE设置一个软AP。这样,其他设备就可以连接到ESP32并与其交换数据,而无需连接到传统路由器。
例如,在实际连接到无线网络之前,在商业产品中配置ESP32可能是有用的。有了这个功能,我们可以提供一个简单的HTML页面,用户可以从他的家庭网络输入证书,以便ESP32稍后连接到它。
在这个入门教程中,我们将简单介绍设置软AP的基础知识,因为可以在其上构建许多其他功能。
代码
首先,我们将包含WiFi.h库,它提供了一个名为WiFi的外部变量,我们将使用它来设置我们的软AP。这是我们在其他教程中使用的连接到WiFi网络的变量。
#include
由于我们要设置一个软AP,我们需要指定网络名称(SSID),它将显示给可以连接的站点。我们还需要指定一个密码,以避免不良站点连接到我们的AP。我们将在全局常量中指定这两个变量。
const
char
*ssid ="MyESP32AP";
const
char
*password = "testpassword";
之后,我们将在Arduino 设置功能中完成剩余的代码。我们从开始串口连接开始,所以我们可以输出我们程序的一些结果。这样,我们可以在Arduino IDE串口监视器中查看结果。
Serial.begin(115200);
之后,为了设置我们的软AP,我们只需要调用 WiFi extern变量的softAP方法,同时输入之前定义的SSID和密码。
请注意,这个函数有一些更多的可选参数,分配了默认值。这些是通道,一个整数,指定SSID是否应该隐藏,以及最大连接数。除此之外,密码也是一个可选参数,默认为null,这将允许无需密码连接到AP。尽管如此,对于我们的例子,我们指定了它。
WiFi.softAP(ssid, password);
最后,我们将通过调用WiFi extern变量的softAPIP方法来获取并打印软AP的IP 。此方法不带任何参数,将返回IP地址。
Serial.println(WiFi.softAPIP());
下面可以看到这个ESP32教程的最终源代码。它包括所有先前分析的代码和一些额外的打印件,以使输出更易于阅读。
#include
const char *ssid ="MyESP32AP";
const char *password ="testpassword";
void setup()
{
Serial.begin(115200);
WiFi.softAP(ssid, password);
Serial.println();
Serial.print("IPaddress: ");
Serial.println(WiFi.softAPIP());
}
void loop() {
}
测试代码
要测试代码,只需编译它并使用Arduino IDE将其上传到ESP32板即可。程序结束后,打开Arduino IDE的串口监视器。您应该得到类似于图1的输出,其中显示了软AP的IP。
图1 - 程序的输出。
然后,如果您检查计算机上的可用网络,应该列出一个新的网络,并在代码中定义我们定义的名称,如图2所示。
图2 -ESP32 Soft AP显示为可用网络(Windows8,葡萄牙语界面)。