refactor(main): 移除ota_mutex.h全局变量并重构ESP32 OTA互斥锁管理

- 将全局变量g_esp32OtaMutex和g_esp32OtaOccupied内聚到Esp32OtaCore类中
- 通过Esp32OtaCore::initMutex()方法初始化互斥锁替代原main.cpp中的全局初始化
- 重构HealthMonitor中WiFi连接状态管理,推送连接状态到本地成员而非直接查询
- 优化OtaCoordinator中const方法的线程安全实现,移除不必要的const_cast转换
- 封装OtaRelay的队列访问器,提供getDispatchQueue()和getResultQueue()方法
- 解决BLE与WiFi之间的横向耦合问题,通过OtaCoordinator进行射频共存管理
- 移除transport/spi_master.cpp中的CANFD接口实现到独立的canfd_bridge模块
- 优化BLE OTA中ESP32会话的幂等性和新会话处理逻辑

BREAKING CHANGE: 移除了ota_mutex.h全局头文件,相关功能迁移至Esp32OtaCore类中管理
This commit is contained in:
小龙虾
2026-06-22 01:53:16 +08:00
parent 00ce8dbbb5
commit 1491e9a3de
23 changed files with 598 additions and 290 deletions
+23
View File
@@ -0,0 +1,23 @@
# transport 组件 - SPI 总线驱动、CANFD 桥接、协议层
# 提供底层硬件通信能力,被 main 组件依赖。
#
# PRIV_INCLUDE_DIRS 仅对本组件编译可见,
# 不会将 main/ 的子目录路径泄漏给依赖本组件的其他组件,
# 从而在编译层面强制模块边界。
idf_component_register(
SRCS
"../../main/transport/spi_master.cpp"
"../../main/transport/canfd_bridge.cpp"
"../../main/transport/protocol.cpp"
INCLUDE_DIRS
"../../main/transport" # spi_master.h, canfd_bridge.h, protocol.h
PRIV_INCLUDE_DIRS
"../../main" # monitor/debug_log.h(仅本组件编译时使用)
"../../main/include" # app_config.h
REQUIRES
esp_driver_spi # SPI 主设备驱动
freertos # FreeRTOS 内核
mbedtls # AES 加密
esp_timer # 高精度定时器
)