1. 项目概述:手机本地HTML控制ESP32方案解析
这个项目展示了一种通过手机本地HTML页面控制ESP32开发板的实用方案。与传统的嵌入式Web服务器方案不同,这里采用了将控制界面(HTML文件)存储在手机本地,通过网络请求与ESP32通信的创新方式。
核心原理是:
- ESP32工作在AP模式,创建独立WiFi热点
- 手机连接该热点后,打开本地HTML文件
- HTML中的JavaScript代码向ESP32的固定IP发送HTTP请求
- ESP32接收请求并控制GPIO引脚状态
这种架构特别适合需要频繁修改控制界面但又不想反复烧录固件的开发场景。我在多个物联网项目中都采用过类似方案,实测稳定性相当不错。
需要模型API调用? 免费领10W Token,多模型网关一键接入 Claude、DeepSeek 等主流模型。
2. 技术实现细节
2.1 ESP32端程序设计
ESP32的程序主要包含三个核心功能模块:
python复制import socket
import network
import machine
import time
from machine import Pin
# GPIO2连接LED
led = Pin(2, Pin.OUT)
led.value(0) # 默认熄灭
2.1.1 AP模式启动
启动AP模式的代码需要特别注意几个关键参数:
python复制def start_ap():
ap = network.WLAN(network.AP_IF)
ap.active(False)
time.sleep(0.5) # 必要的延时
ap.active(True)
# 关键配置参数
ap.config(
essid='ESP32_APTest',
password='12345678',
authmode=3, # WPA2-PSK加密
max_clients=10 # 最大连接数
)
提示:authmode参数很关键,3表示WPA2-PSK加密,这是目前最安全的WiFi加密方式。如果设备兼容性有问题,可以尝试改为2(WPA-PSK)或1(不加密)。
2.1.2 Web服务接口设计
精简后的Web服务只保留两个API端
