【ESP32】WIFI模块开发HTTP控制面板


前言

ESP32开发板自带WIFI模块的,本次案例通过串口配置ESP32的WIFI,然后开启HTTTP服务,基于服务发送API接口控制ESP32的GPIO功能。


提示:以下代码都保存于ESP32设备里面,最后通过调用main.py文件循环监听串口和HTTP服务。

一、实战内容介绍

本次实战是用Thonny工具,在ESP32设备新建py文件,项目具备保存WIFI SSID和密码功能,也可以同串口连接查看和更新密码。

二、项目简介

1. 更新Wifi配置

代码如下(示例):代码为加载和保存wifi 。

import ujson

def save_dict_to_file(data_dict):
    with open("config.json", 'w') as f:
        ujson.dump(data_dict, f)

def load_dict_from_file(filename):
    try:
        with open(filename, 'r') as f:
            return ujson.load(f)
    except:
        return {
   
   }  # 文件不存在时返回空字典

2. 串口更新Wifi

通过串口Uart1 发送如下命令更新ESP存储的WIFI。

R_WIFI: 读取当前WIFI配置
W_WIFI_SSID your_ssid: 更新wifi名
W_WIFI_PWD your_password: 更新wifi密码

示例代码如下:

# ESP32 代码:uart_echo.py
from machine import UART
import time
from load_config import load_dict_from_file, save_dict_to_file


def reload_wifi(received_data):
    if "R_WIFI" in received_data:
        wifi_setting = load_dict_from_file('config.json')
        ret = f"SSID: {wifi_setting['SSID']}, PWD: {wifi_setting['PWD']}"
    elif "W_WIFI_SSID" in received_data:
        ssid = received_data.split(' ')[1].strip()
        wifi_setting = load_dict_from_file('config.json')
        wifi_setting[
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值