这篇文章的目的是解释如何使用Arduino IDE将ESP32连接到WiFi网络。
目录
介绍
这篇文章的目的是解释如何使用Arduino IDE将ESP32连接到WiFi网络。幸运的是,对于我们之前有ESP8266 Arduino IDE库经验的人来说,程序非常相似。
如果您尚未安装ESP32 Arduino IDE支持,请点击查看教程查看如何操作。
代码
因为这个简单的例子我们将只连接到WiFi网络,我们将在设置功能中进行程序的编写。
首先,我们需要包含WiFi.h库,这将允许我们连接到网络。您可以在此处查看此库是怎么实现的。值得注意的是,开发人员选择了更通用的库名,而不是ESP8266,其中库名为 ESP8266WiFi.h。
然而,正如我们将看到的那样,在此类WiFiClass中,该功能也被公开为称为WiFi的外部变量。
#include <WiFi.h>
为了使代码易于编辑,我们将声明两个全局变量,用于保存我们要连接的WiFi网络的名称及其密码。您需要修改成您自己的wifi网络名称和密码:
const char* ssid = "yourNetworkName";
const char* password = "yourNetworkPass";
现在,我们将指定设置功能,我们将实际连接到WiFi网络。但首先,我们将打开一个串行连接,这样我们就可以输出程序的结果。
然后,我们在WiFi对象上调用begin方法,将早期指定的SSID(网络名称)和密码变量作为参数传递。这将启动与网络的连接:
Serial.begin(115200); WiFi.begin(ssid, password);
之后,我们将执行while循环,直到有效建立连接。为此,我们可以在WiFi对象上调用status方法,并等待结果与WL_CONNECTED枚举匹配。在每次循环之间,我们引入一个小延迟,以避免不断查询。
while (WiFi.status() != WL_CONNECTED) {
delay(500);
Serial.println("Connecting to WiFi..");
}
循环后,ESP32应成功连接到WiFi网络。查看下面的完整源代码。
#include <WiFi.h>
const char* ssid = "yourNetworkName";
const char* password = "yourNetworkPass";
void setup() {
Serial.begin(115200);
WiFi.begin(ssid, password);
while (WiFi.status() != WL_CONNECTED) {
delay(500);
Serial.println("Connecting to WiFi..");
}
Serial.println("Connected to the WiFi network");
}
void loop() {
}
测试代码
要测试代码,只需将其上传到电路板并打开串行控制台即可。你应该得到类似于图1的结果。
图1 – ESP32与WiFi网络的连接。
请问如何实现WIFI断开以后自动重新连接?
你好,为什么我的那部分一直连上不,然后我增加延时也还是连不上,之前是可以连上的