一、项目概述
以 STM32F407VET6 为主控核心,搭载 FreeRTOS 实时操作系统,兼容标准库与 HAL 库双版本开发。深度融合环境感知、网络数据交互、语音智能交互、实时报警与 LVGL 可视化人机交互,实现从数据采集、网络通信到智能响应、本地显示的全流程闭环。
二、硬件与技术栈
核心硬件
- 主控芯片:STM32F407VET6(高性能 ARM Cortex-M4 内核)
- 通信模块:ESP32C3 模块(WiFi 联网、网络数据获取)
- 传感模块:AHT20 I2C 接口温湿度传感器
- 显示模块:ST7789 LCD 显示屏(SPI 接口 + DMA 传输)
- 交互模块:SU03T语音识别 / LU6288播报模块、物理按键
核心技术
- 操作系统:FreeRTOS(任务调度、进程间通信)
- 驱动框架:LVGL 嵌入式图形库
- 通信协议:UART 串口、I2C、SPI、DMA
- 软件兼容:STM32 标准库 / HAL 库双版本支持
三、系统架构与核心机制
FreeRTOS 多任务架构,通过队列与信号量实现数据同步与资源互斥访问。UART 串口与 ESP32 通信,串口中断接收 + 指令校验确保天气数据精准获取;I2C 协议采集温湿度数据;LVGL 驱动 LCD,SPI + DMA 提升屏幕刷新效率;支持按键配网、语音识别、阈值报警等智能化交互。
四、核心功能
- 智能环境监测:实时采集温湿度,支持自定义阈值声光报警;
- WiFi 网络交互:按键快速配网,获取公网天气与网络标准时间;
- 语音智能交互:语音指令识别,播报温湿度、天气、网络时间;
- LVGL 人机交互:可视化界面展示环境数据、网络状态与报警信息;
- 高可靠通信:串口指令校验与数据容错,保障模块间通信稳定;
- 双库兼容:同时支持标准库与 HAL 库,适配不同开发与移植需求;
- 高效显示:SPI + DMA + LVGL 组合,实现高帧率低功耗界面渲染。
五、关键难点与解决方案
LCD 多任务数据显示竞态 — FreeRTOS 队列统一管理显示数据,避免多任务资源竞争,保证显示流畅与数据准确。
串口数据接收可靠性 — 串口中断接收搭配指令校验机制,确保网络数据解析精准。
多外设资源冲突 — 信号量实现资源互斥访问,FreeRTOS 优先级调度保障核心任务优先执行。
六、应用场景
智能家居环境监测、室内智能终端、嵌入式教学实训、工业环境监控节点。