esp32为热点实现MCU与PC无线WiFi通信的例程
时间: 2024-04-16 11:29:40 浏览: 110
以下是一个使用ESP32作为热点实现MCU与PC无线WiFi通信的例程:
```cpp
#include <WiFi.h>
const char* ssid = "ESP32_Hotspot"; // 热点的名称
const char* password = "12345678"; // 热点的密码
WiFiServer server(80); // 创建WiFi服务器对象,监听端口80
void setup() {
Serial.begin(115200); // 初始化串口波特率为115200
WiFi.softAP(ssid, password); // 设置ESP32为热点模式
IPAddress IP = WiFi.softAPIP(); // 获取ESP32的IP地址
Serial.print("Hotspot IP address: ");
Serial.println(IP);
server.begin(); // 启动WiFi服务器
Serial.println("Server started");
}
void loop() {
WiFiClient client = server.available(); // 等待客户端连接
if (client) {
Serial.println("New client connected");
while (client.connected()) {
if (client.available()) { // 检查客户端是否发送了数据
String data = client.readStringUntil('\n'); // 读取客户端发送的数据
// 在这里进行处理收到的数据,例如打印到串口终端或执行相应操作
Serial.println("Received data: " + data); // 将接收到的数据打印到串口终端
// 发送响应给客户端
client.println("HTTP/1.1 200 OK");
client.println("Content-type:text/html");
client.println();
client.println("<html><body><h1>Hello, ESP32!</h1></body></html>");
delay(10);
client.stop(); // 断开与客户端的连接
Serial.println("Client disconnected");
}
}
}
}
```
在这个例程中,我们将ESP32设置为热点模式,热点的名称为"ESP32_Hotspot",密码为"12345678"。在`setup()`函数中,我们通过`WiFi.softAP()`函数设置ESP32为热点模式,并获取ESP32的IP地址。然后,我们创建了一个WiFi服务器对象,并通过`server.begin()`函数启动WiFi服务器。
在`loop()`函数中,我们使用`server.available()`函数等待客户端连接。一旦有客户端连接成功,我们进入一个循环,检查客户端是否发送了数据。如果客户端发送了数据,我们使用`client.readStringUntil('\n')`函数读取数据,并进行相应处理。在这个例程中,我们将接收到的数据打印到串口终端,并向客户端发送一个简单的HTTP响应。
请注意,在这种模式下,ESP32将作为热点运行,PC需要连接到ESP32创建的热点网络,并通过浏览器访问ESP32的IP地址来与其进行通信。
这只是一个简单的例程,你可以根据自己的需求进行扩展和修改。希望对你有帮助!
阅读全文