实现了对运行指示灯,错误指示灯和水泵的控制函数封装

This commit is contained in:
2026-02-11 21:05:37 +08:00
parent 9e66a650d2
commit a30497958a
5 changed files with 80 additions and 1 deletions

23
README.md Normal file
View File

@@ -0,0 +1,23 @@
# SmartPetFeeder_STM32
## WiFi 与 MQTT 通信模块说明
本工程中的 `dx_wf_24.c` 实现了基于 ESP8266/ESP32 AT 指令集的 WiFi 与 MQTT 通信功能,主要特性包括:
- **串口 DMA 接收与发送**:使用 STM32 的 UART + DMA 实现高效数据收发,支持 IDLE 中断检测帧尾。
- **WiFi 连接管理**:通过 AT 指令自动连接指定 SSID 和密码的 WiFi 网络。
- **MQTT 客户端功能**
- 自动生成唯一 ClientID基于系统 Tick 与 STM32 UID
- 支持设置用户名、密码;
- 连接指定 MQTT 服务器(支持自定义 Host 和 Port
- 双主题订阅:`petfeeder/control`(控制指令)和 `petfeeder/config`(配置更新);
- 支持 RAW 数据发布(`AT+MQTTPUBRAW`),适用于 JSON 等结构化数据;
- 自动处理 MQTT 断线重连事件(通过 `+MQTTDISCONNECTED` 监测)。
- **消息解析**:解析 `+MQTTSUBRECV` 格式的订阅消息,提取主题与负载内容。
- **状态上报**
- 设备上线时自动发布 `{"status":"online"}``petfeeder/status` 主题retain=1
- 支持传感器数据上报至 `petfeeder/sensor` 主题。
> 注意:当前实现为单任务模型,在 `wifi_task_mqtt` 中完成初始化、连接、订阅及消息处理循环。
---