搭建ESP32实验多用户连接服务器
搭建ESP32实验多用户连接服务器
一、背景
ESP32结合Phyphox实验是通过蓝牙BLE连接的,默认的情况下,只能一对一连接,当多个手机Phyphox连接到ESP32蓝牙时,后连接并接入的Phyphox会提示一个错误,然后终止它的实验,而早已连接的Phyphox不受影响。
ESP32的BLE库有一个例程,可以实现一对七的连接。但即便如此,第八个心痒痒的怎么办?抓起手机摔了?
解决办法,目前只是想到这个层面上——自己重做一个Phyphox,至少可以每一个或每一组实验使用一个手机安卓端——这样也解决了Phyphox不肯屈尊迁就蓝牙4的问题。所以,第一步要解决的,是搭建一个ESP32的服务器。
二、拿来主义
用ESP32以及ESP8266来搭建简单的Web服务器,是这些开发板的强项。我们照搬一个手机端控制LED的WebServer代码,CSDN上的,找不到原始地址了,不再列出。这种代码可以找到很多。
#include <WiFi.h>
#include <WiFiClient.h>
#include <WiFiAP.h>
const char *ssid = "ESP32";
const char *password = "";
WiFiServer server(80);
void setup() {
WiFi.softAP(ssid, password);
IPAddress myIP = WiFi.softAPIP();
Serial.print("AP IP address: ");
Serial.println(myIP);
server.begin();
}
void loop() {
……
client.println("HTTP/1.1 200 OK");
client.println("Content-type:text/html");
client.println();
client.print("Click <a href=\"/H\">here</a> to turn ON the LED.<br>");
client.print("Click <a href=\"/L\">here</a> to turn OFF the LED.<br>");
……
}
运行,然后连接print出来的IP,显示网页内容。
三、NEXT
下一步即是编写一个APP,从网页文本中分离出我们需要的传感器数据,之后送给折线图就能够让几十数百的手机连接过来了,因为它是HTTP的。
------心存DREAM喜欢琢磨实验并自娱自乐的MIRACLE------
实验教学值得学习的去处:
2.学生自主创新实验