项目简介
本项目是基于STM32F103微控制器的USB/WIFI供电系统。借助ESP8266模块提供网络接口,通过STM32F103的USB接口和UART接口实现与主机的通信和控制。同时集成MCP41010数字电位器控制输出电压,利用光耦继电器控制电源开关。用户可通过Web界面、TCP、CDC - USB和UART接口远程控制电源的输出电压和开关状态。
项目的主要特性和功能
- 多接口控制:支持Web界面、TCP、CDC - USB和UART接口控制电源输出电压和开关状态。
- 网络接口:利用ESP8266模块提供WIFI接口,实现远程控制与数据传输。
- 电压控制:通过MCP41010数字电位器精确控制输出电压,支持微调和预设电压值。
- 电源开关控制:使用光耦继电器控制电源开关状态。
- 校准功能:支持通过Web界面或命令行进行电压校准,保证输出电压准确性。
- LED状态指示:通过LED不同闪烁模式指示系统运行状态,如连接WIFI、硬故障等。
安装使用步骤
硬件准备
- 确保STM32F103、ESP8266、MCP41010数字电位器和光耦继电器等硬件正确连接。
- 替换LM2596模块上的10K电位器为MCP41010数字电位器。
软件准备
- 安装CMake工具链,配置
TOOLCHAIN_arm_none_eabi_cortex_m3.cmake
文件中的TOOLCHAIN_DIR
路径。 - 在Windows上运行
build.cmd
,在Linux上运行./build.sh
,生成.bin
和.hex
文件。
烧录程序
- Windows:使用ST - Link工具烧录生成的
.hex
文件:sh "C:\Program Files (x86)\STMicroelectronics\STM32 ST - LINK Utility\ST - LINK Utility\ST - LINK_CLI.exe" -c SWD -p build - stm32\src\stm32f103_wifi_usb_psu.hex -Rst
- Linux:使用
st - flash
工具烧录生成的.bin
文件:sh st - flash --reset write build - stm32/src/stm32f103_wifi_usb_psu.bin 0x8000000
配置网络
- 在
inc/http_server.h
文件中设置ESP8266的IP地址。 - 确保路由器为ESP8266分配固定的IP地址,或手动修改
http_server.h
中的IP配置。
使用Web界面
- 通过浏览器访问ESP8266的IP地址,利用Web界面控制电源的输出电压和开关状态。
- 可修改
http_server.c
中的按钮定义和电压值来定制界面。
命令行控制
通过TCP、CDC - USB或UART接口发送ASCII命令控制电源,支持设置电压、保存配置、重新连接WIFI等命令。
校准
使用万用表测量输出电压,通过Web界面或命令行进行电压校准,确保输出电压的准确性。
下载地址
点击下载 【提取码: 4003】【解压密码: www.makuang.net】