news 2026/6/10 12:01:38

ESP32 + MicroPython 简易 Web 服务器教程

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
ESP32 + MicroPython 简易 Web 服务器教程

一、前言

在物联网开发中,让设备直接通过浏览器访问是一个非常常见的需求。ESP32 自带 WiFi,非常适合用来实现一个简单的 Web 服务器。本文将基于MicroPython,手把手教你在 ESP32 上搭建一个最基础的 HTTP Web Server,并通过浏览器访问。

适合人群:

  • ESP32 / MicroPython 初学者
  • 想快速实现网页访问 ESP32 的开发者

二、开发环境准备

1. 硬件准备

  • ESP32 开发板(任意型号)
  • USB 数据线

2. 软件准备

  • 已刷好MicroPython 固件的 ESP32
  • Thonny / uPyCraft / VS Code + MicroPython 插件
  • 可用的 WiFi 网络

⚠️ 注意:ESP32 需要刷入 MicroPython 固件,否则无法运行本文代码。


三、实现原理说明

整体流程如下:

  1. ESP32 连接 WiFi
  2. 获取 ESP32 的 IP 地址
  3. 创建 Socket 监听 80 端口
  4. 接收浏览器 HTTP 请求
  5. 返回 HTML 页面

浏览器访问 ESP32 的 IP,即可看到网页内容。


四、完整示例代码

importnetworkimportusocketassocketimporturequests# 设置 WiFi 凭据SSID="wifi名称"PASSWORD="wifi密码"# 创建 WLAN 对象wlan=network.WLAN(network.STA_IF)# 激活 WLAN 接口wlan.active(True)# 连接到 WiFi 网络wlan.connect(SSID,PASSWORD)# 等待连接完成whilenotwlan.isconnected():pass# 打印连接信息print("Connected to WiFi")print("Network config:",wlan.ifconfig())# 定义简单的 HTTP 响应HTML=""" HTTP/1.0 200 OK Content-Type: text/html <!DOCTYPE html> <html> <head><title>MicroPython Web Server</title></head> <body> <h1>Hello from MicroPython!</h1> <p>This is a simple web server running on ESP32 with MicroPython.</p> </body> </html> """# 创建套接字s=socket.socket(socket.AF_INET,socket.SOCK_STREAM)# 绑定 IP 地址和端口s.bind(('0.0.0.0',80))# 监听连接s.listen(5)# 循环接受和处理请求whileTrue:conn,addr=s.accept()print('Got a connection from %s'%str(addr))request=conn.recv(1024)print('Content = %s'%str(request))# 发送 HTTP 响应conn.sendall(HTML)conn.close()

五、代码详解

1️⃣ 连接 WiFi

wlan=network.WLAN(network.STA_IF)wlan.active(True)wlan.connect(SSID,PASSWORD)
  • STA_IF:表示工作在Station 模式(连接路由器)
  • isconnected():判断是否成功联网

2️⃣ 获取 ESP32 IP 地址

print(wlan.ifconfig())

输出格式:

(ip, subnet, gateway, dns)

记住这个 IP,后面浏览器要用。


3️⃣ 创建 Socket 服务器

s=socket.socket(socket.AF_INET,socket.SOCK_STREAM)s.bind(('0.0.0.0',80))s.listen(5)

说明:

  • 0.0.0.0:监听所有网卡
  • 80:HTTP 默认端口
  • listen(5):最多同时处理 5 个连接

4️⃣ 处理 HTTP 请求

conn,addr=s.accept()request=conn.recv(1024)conn.sendall(HTML)conn.close()
  • accept():等待浏览器连接
  • recv():接收 HTTP 请求
  • sendall():返回 HTML 页面

六、浏览器访问测试

  1. 打开串口,查看 ESP32 的 IP 地址
  2. 在同一局域网下,浏览器输入:
http://ESP32_IP

示例:

http://192.168.31.250


如果看到网页内容,说明服务器运行成功 🎉

📌原创不易,欢迎点赞 + 收藏 + 关注!

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/6/10 6:21:34

论文重复率超过30%?学会这五个实用技巧,快速将查重率降到合格线以下

最新研究数据揭示&#xff0c;全球气温上升与极端气候事件的发生频率呈现出明显的正相关性&#xff0c;这一发现进一步验证了气候系统变化对气象异常模式产生的深远影响。 首先&#xff0c;咱们聊聊人工降重的基本功 人工智能领域的快速发展已成为多项调研报告的重点关注对象…

作者头像 李华
网站建设 2026/6/10 5:28:07

颠覆性7款AI论文神器!20分钟万字问卷,真实参考文献一键搞定!

还在为开题报告抓耳挠腮&#xff1f;还在为文献综述熬夜检索&#xff1f;还在为导师的修改意见一筹莫展&#xff1f;如果你的答案是肯定的&#xff0c;那么这篇文章就是你学术生涯的转折点。作为一名深耕学术领域的资深研究者&#xff0c;我耗时数月&#xff0c;深度测评了市面…

作者头像 李华
网站建设 2026/6/10 10:37:03

2025模温机品牌实力榜:防爆非标定制与高精度控温企业盘点

2025模温机品牌实力榜&#xff1a;防爆非标定制与高精度控温企业盘点在工业制造迈向精密化与智能化的今天&#xff0c;模温机已不再是简单的加热设备&#xff0c;而是保障产品质量、提升生产效率的核心温控枢纽。尤其在化工合成、复合材料成型、精密注塑等高端领域&#xff0c;…

作者头像 李华
网站建设 2026/6/10 12:25:32

【毕业设计】基于机器学习+深度学习的二手车价格预测及应用实现

博主介绍&#xff1a;✌️码农一枚 &#xff0c;专注于大学生项目实战开发、讲解和毕业&#x1f6a2;文撰写修改等。全栈领域优质创作者&#xff0c;博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java、小程序技术领域和毕业项目实战 ✌️技术范围&#xff1a;&am…

作者头像 李华
网站建设 2026/6/9 23:10:40

计算机深度学习毕设实战-基于人工智能的二手车价格预测及应用实现

博主介绍&#xff1a;✌️码农一枚 &#xff0c;专注于大学生项目实战开发、讲解和毕业&#x1f6a2;文撰写修改等。全栈领域优质创作者&#xff0c;博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java、小程序技术领域和毕业项目实战 ✌️技术范围&#xff1a;&am…

作者头像 李华
网站建设 2026/6/10 12:38:35

Qt重复添加控件问题探析:现象、原理与解决方案

Qt重复添加控件问题探析&#xff1a;现象、原理与解决方案一、问题现象&#xff1a;叠床架屋之弊二、原理剖析&#xff1a;Qt对象树机制三、解决方案&#xff1a;防患未然之道1. 添加前检查存在性2. 使用布局管理器3. 对象命名与查找四、典型案例分析案例一&#xff1a;动态表单…

作者头像 李华