实验三: WiFi单模块实验
一、实验目的
1.通过ESP32的WiFi模块,使用WiFi的STA模式将ESP32连接到WiFi
2.通过ESP32的WiFi模块,使用WiFi的AP模式将ESP32作为一个接入点
二、实验内容
1.尝试连接指定SSID和PassWord的WiFi
2.查看WiFi是否已经连接
3.设置AP的SSID和PASSWORD
4.使ESP32作为一个接入点供其他设备连接
三、实验设备
ESP32-WROOM-32D 开发板
四、实验步骤
1) 环境配置
1.选择左上角 工具–开发板,选择对应的开发板(ESP32 Dev Module)
2.下载库文件, 选择 工具–管理库,在搜索栏输入WiFi,选择WiFi Built-In by Arduino 版本1.2.7 进行安装
3.选择 工具–端口 , 选择对应的端口
####2) sta模式 测试代码
#include<WiFi.h>
char* SSID = "YOURSSID"; //wifi名称
char* PassWord = "YOURPASSWORD"; //wifi密码
void ConnectWifi(char* ssid, char* password){
Serial.println("----------------------");
Serial.println("Begin connect");
WiFi.begin(ssid,password);
while(WiFi.status() != WL_CONNECTED){
delay(1000);
Serial.println("Connectingto WiFi...");
}
Serial.println("Connectedto the WiFi network");
}
void setup() {
Serial.begin(115200);
ConnectWifi(SSID,PassWord);
}
void loop() {
}
####3) WiFi连接测试
1.在代码中设置WiFi的账号和密码
2.打开串口监视器,点击左上角上传代码
3.上传成功后,如果WiFi连接成功,则在串口监视器会输出 Connectedto the WiFi network,否则会一直输出Connectingto WiFi…
4) AP模式 测试代码
#include<WiFi.h>
const char *ssid ="hahaha"; //热点名称
const char *password ="11111111"; //热点密码
void setup(){
Serial.begin(115200);
WiFi.softAP(ssid,password);
Serial.println();
Serial.print("IPaddress:");
Serial.println(WiFi.softAPIP());
}
void loop(){
}
5) 搜索连接配置的WIFI
上传成功后通过手机搜索WiFi寻找我们配置的热点并连接
五、其他问题
1.如果在串口监视器输出乱码,则检查串口监视器设置的波特率与代码中的是否保持一致
2.如果在上传过程中出现如下错误:
A fatal error occurred: Failed to connect to ESP32: Timed out waiting for packet header
那么,在上传时当控制台出现Connecting…_____… 的时候,按住开发板的Boot键直至上传成功