feat(canfd): 添加直接发送CANFD帧功能用于SPI桥接场景

- 新增 CanFd::transmitFrame() 方法,支持绕过软件队列直接调用
  硬件发送CANFD扩展帧
- 实现参数验证,包括通道索引、数据指针和DLC长度检查
- 集成GD32E508特定的FD标志和波特率切换设置
- 更新诊断统计信息,记录发送计数、最后ID、通道和负载长度

feat(spi-command): 添加SPI到CAN总线桥接发送命令类型

- 引入 kTypeCanSend (0xC0) 命令类型用于SPI-CAN桥接
- 实现CAN_SEND命令处理逻辑,解析载荷中的通道、ID和数据
- 支持3个CAN通道(0/1/2),验证通道有效性防止越界访问
- 添加详细的错误处理和日志记录机制

refactor(config): 更新SPI命令ACK确认码和构建版本号

- 将CONFIG_SPI_APP_OTA_BOOT_ACK_OK从0xA5U改为0xB5U以避免冲突
- 提升APP_FW_VERSION_BUILD从1到2以反映新功能集成
This commit is contained in:
cbb
2026-06-13 17:07:25 +08:00
parent d0b6d9537e
commit 01382a3fc1
5 changed files with 100 additions and 57 deletions
+2 -2
View File
@@ -57,7 +57,7 @@
/** @brief ESP32 在 APP 运行期通过 SPI 发送的进入 Bootloader OTA 命令。 */
#define CONFIG_SPI_APP_OTA_BOOT_CMD 0xB0U
/** @brief SPI 进入 Bootloader OTA 命令确认状态:成功。 */
#define CONFIG_SPI_APP_OTA_BOOT_ACK_OK 0xA5U
#define CONFIG_SPI_APP_OTA_BOOT_ACK_OK 0xB5U
/** @brief SPI 进入 Bootloader OTA 命令确认状态:失败。 */
#define CONFIG_SPI_APP_OTA_BOOT_ACK_ERROR 0xE2U
/** @brief CAN 接收过滤器目标标准帧 ID。 */
@@ -127,7 +127,7 @@
/** @brief APP 补丁版本号。 */
#define APP_FW_VERSION_PATCH 0U
/** @brief APP 构建编号。 */
#define APP_FW_VERSION_BUILD 1U
#define APP_FW_VERSION_BUILD 2U
/* ============================================================
* BOOT 版本在 OTA 配置页中的 Flash 存储地址