使用esp32+micropython+microdot搭建WEB(Http+websocket)服务器(超详细)第一部分 microdot文档速查 什么是Microdot?Microdot是一个可以
视频中我们简单的实现了
百度网盘:https://pan.baidu.com/s/1ZKbaGjdjuBMJgK9l6w9mdg?pwd=1234 提取码:1234
点击Install or update MicroPython选择端口和固件(网盘里面有)
等待进度条走完就好了
如果一直不显示百分比 按住 esp32上的boot键
完成!
右下角已经可选esp32开发板了
esp32首先执行的是boot.py文件。该文件是由MicroPython系统创建的。因此您无需自己创建该文件就可以在刚刚刷好固件的nodeMCU开发板根目录下找到它。我不建议MicroPython的初学者对该文件进行修改,因为boot.py文件出现问题能会导致MicroPython无法正常启动,严重的会导致系统崩溃。要修复可能只有重新刷固件才行。所以除非您很了解MicroPython,否则请不要自行修改该文件。
执行完boot.py以后,启动中的NodeMCU接下来将会执行main.py文件。如果您希望NodeMCU在每次启动后都执行一系列操作的话,可以将您的指令代码写入该文件。由于main.py文件是用户自己建立的而不是MicroPython系统建立的,因此在刚刚刷好固件的开发板根目录下是不存在该文件的。假如MicroPython在启动中找不到main.py文件,它会在系统启动时报错(如下图所示)。
解压网盘中的microdot-main.zip
在MicroPython设备 新建目录结构
lib 存放一些库文件
common
public 存放网页内容
main.py (程序主入口)
# 操作esp32引脚from machine import Pin# 操作时间 延迟几秒等import time# 网络相关的函数import network# esp32 引脚2是一颗自带的 led的灯light = Pin(2,Pin.OUT)def do_connect(): # wifi模式 wlan = network.WLAN(network.STA_IF) # 激活 wlan.active(True) print("开始连接...") print("连接中...") # 连接超时设置 start_time = time.time() if not wlan.isconnected(): # 自家的wifi名和密码 wlan.connect("Xiaomi_A246","zy415415666") while not wlan.isconnected(): # 灯亮 light.value(1) # 延迟一秒 time.sleep(1) # 灯灭 light.value(0) time.sleep(1) # 15秒内没连接上就是超时了 if time.time() - start_time > 15: print("wifi连接超时!!!") break return False else: print("连接成功!!!!") light.value(0) # 打印 网络信息 print("网络配置:",wlan.ifconfig()) return True
# 导入Microdotfrom lib.microdot import Microdot# 连接wififrom common.connect_wifi import do_connect# 导入引脚from Machine import Pin# esp32 引脚2是一颗自带的 led的灯light = Pin(2,Pin.OUT)# 开始连接wifido_connect()# 实例化这个类app = Microdot()# 设置一个get请求 如果@app.get('/on')def index(request): # 如果收到get请求on就开灯 light.value(1) return "开灯了"@app.get('/off')def index(request): # 如果收到get请求off就关灯 light.value(0) return "关灯了"# 端口号为5000app.run(host='0.0.0.0', port=5000, debug=False, ssl=None)
index.html
esp32服务器网页 开灯小网页
将index.html文件放在public文件下面
修改main.py
# 导入Microdotfrom lib.microdot import Microdot,send_file# 连接wififrom common.connect_wifi import do_connect# 导入引脚from machine import Pin# esp32 引脚2是一颗自带的 led的灯light = Pin(2,Pin.OUT)# 开始连接wifido_connect()# 实例化这个类app = Microdot()# 返回一个网页@app.route('/')def index(request): return send_file('public/index.html')# 设置一个get请求 如果@app.get('/on')def index(request): # 如果收到get请求on就开灯 light.value(1) return "开灯了"@app.get('/off')def index(request): # 如果收到get请求off就关灯 light.value(0) return "关灯了"# 端口号为5000app.run(host='0.0.0.0', port=5000, debug=False, ssl=None)
第二部分马上就来!
来源地址:https://blog.csdn.net/qq_47658204/article/details/131317192
--结束END--
本文标题: 使用esp32+micropython+microdot搭建web(http+websocket)服务器(超详细)第一部分
本文链接: https://lsjlt.com/news/426141.html(转载时请注明来源链接)
有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341
2024-10-22
2024-10-22
2024-10-22
2024-10-22
2024-10-22
2024-10-22
2024-10-22
2024-10-22
2024-10-22
2024-10-22
回答
回答
回答
回答
回答
回答
回答
回答
回答
回答
0