feat(ota): OTA功能测试通过,CANFD解包效率优化

- 添加OTA固件升级功能,包括应用程序验证和跳转机制
- 实现CANFD数据传输协议,支持加密和CRC校验
- 优化CAN通信处理,添加调试输出和错误处理
- 更新RTE组件配置,升级csolution版本到2.12.0
- 增加Flash擦除和写入的安全验证机制
- 添加应用程序区域扫描和验证功能

refactor(can): 重构CAN通信模块和OTA数据处理

- 移除未使用的常量定义和辅助函数
- 改进数据解包和加密解密流程
- 添加条件编译调试输出
- 优化Flash操作的安全性和可靠性

chore(build): 更新项目配置和忽略文件

- 添加tmp/和out/目录到.gitignore
- 扩展ROM0_SIZE从0x0020000到0x08005000
- 添加bin输出格式支持
This commit is contained in:
cbb
2026-01-03 18:00:28 +08:00
parent 9c7145ef99
commit 2f482554f0
39 changed files with 1954 additions and 1764 deletions
@@ -1,5 +1,5 @@
build:
generated-by: csolution version 2.12.0
generated-by: csolution version 2.12.0+p41-gfeadfc5e
solution: ../../../../Robot_V2.csolution.yml
project: ../../../../Robot_V2/Robot_V2.cproject.yml
context: Robot_V2.Debug+GD32C103CB
@@ -74,6 +74,8 @@ build:
outdir: .
rtedir: ../../../../Robot_V2/RTE
output:
- type: bin
file: Robot_V2.bin
- type: elf
file: Robot_V2.axf
- type: hex
@@ -104,18 +106,6 @@ build:
category: source
attr: config
version: 1.0.0
- component: GigaDevice::Device:GD32C10x_StdPeripherals:ADC@1.0.0
condition: GD32C10x STDPERIPHERALS RCU
from-pack: GigaDevice::GD32C10x_DFP@1.0.1
selected-by: Device:GD32C10x_StdPeripherals:ADC
files:
- file: ${CMSIS_PACK_ROOT}/GigaDevice/GD32C10x_DFP/1.0.1/Device/Firmware/Peripherals/inc/gd32c10x_adc.h
category: header
version: 1.0.0
- file: ../../../../Robot_V2/RTE/Device/GD32C103CB/gd32c10x_adc.c
category: source
attr: config
version: 1.0.0
- component: GigaDevice::Device:GD32C10x_StdPeripherals:CAN@1.0.0
condition: GD32C10x STDPERIPHERALS RCU
from-pack: GigaDevice::GD32C10x_DFP@1.0.1
@@ -128,6 +118,18 @@ build:
category: source
attr: config
version: 1.0.0
- component: GigaDevice::Device:GD32C10x_StdPeripherals:CRC@1.0.0
condition: GD32C10x STDPERIPHERALS RCU
from-pack: GigaDevice::GD32C10x_DFP@1.0.1
selected-by: Device:GD32C10x_StdPeripherals:CRC
files:
- file: ${CMSIS_PACK_ROOT}/GigaDevice/GD32C10x_DFP/1.0.1/Device/Firmware/Peripherals/inc/gd32c10x_crc.h
category: header
version: 1.0.0
- file: ../../../../Robot_V2/RTE/Device/GD32C103CB/gd32c10x_crc.c
category: source
attr: config
version: 1.0.0
- component: GigaDevice::Device:GD32C10x_StdPeripherals:DBG@1.0.0
condition: GD32C10x STDPERIPHERALS RCU
from-pack: GigaDevice::GD32C10x_DFP@1.0.1
@@ -236,30 +238,6 @@ build:
category: source
attr: config
version: 1.0.0
- component: GigaDevice::Device:GD32C10x_StdPeripherals:SPI_I2S@1.0.0
condition: GD32C10x STDPERIPHERALS RCU
from-pack: GigaDevice::GD32C10x_DFP@1.0.1
selected-by: Device:GD32C10x_StdPeripherals:SPI_I2S
files:
- file: ${CMSIS_PACK_ROOT}/GigaDevice/GD32C10x_DFP/1.0.1/Device/Firmware/Peripherals/inc/gd32c10x_spi.h
category: header
version: 1.0.0
- file: ../../../../Robot_V2/RTE/Device/GD32C103CB/gd32c10x_spi.c
category: source
attr: config
version: 1.0.0
- component: GigaDevice::Device:GD32C10x_StdPeripherals:TIMER@1.0.0
condition: GD32C10x STDPERIPHERALS RCU
from-pack: GigaDevice::GD32C10x_DFP@1.0.1
selected-by: Device:GD32C10x_StdPeripherals:TIMER
files:
- file: ${CMSIS_PACK_ROOT}/GigaDevice/GD32C10x_DFP/1.0.1/Device/Firmware/Peripherals/inc/gd32c10x_timer.h
category: header
version: 1.0.0
- file: ../../../../Robot_V2/RTE/Device/GD32C103CB/gd32c10x_timer.c
category: source
attr: config
version: 1.0.0
- component: GigaDevice::Device:GD32C10x_StdPeripherals:USART@1.0.0
condition: GD32C10x STDPERIPHERALS RCU
from-pack: GigaDevice::GD32C10x_DFP@1.0.1
@@ -272,18 +250,6 @@ build:
category: source
attr: config
version: 1.0.0
- component: GigaDevice::Device:GD32C10x_StdPeripherals:WWDGT@1.0.0
condition: GD32C10x STDPERIPHERALS RCU
from-pack: GigaDevice::GD32C10x_DFP@1.0.1
selected-by: Device:GD32C10x_StdPeripherals:WWDGT
files:
- file: ${CMSIS_PACK_ROOT}/GigaDevice/GD32C10x_DFP/1.0.1/Device/Firmware/Peripherals/inc/gd32c10x_wwdgt.h
category: header
version: 1.0.0
- file: ../../../../Robot_V2/RTE/Device/GD32C103CB/gd32c10x_wwdgt.c
category: source
attr: config
version: 1.0.0
- component: GigaDevice::Device:GD32C10x_libopt@1.0.0
condition: GD32C10x CMSIS
from-pack: GigaDevice::GD32C10x_DFP@1.0.1
@@ -321,6 +287,10 @@ build:
category: header
- file: ../../../../Robot_V2/main.cpp
category: sourceCpp
- file: ../../../../Robot_V2/sys/aes128.h
category: header
- file: ../../../../Robot_V2/sys/aes128.cpp
category: sourceCpp
- group: sys
files:
- file: ../../../../Robot_V2/sys/systick.cpp
@@ -331,48 +301,22 @@ build:
category: sourceCpp
- file: ../../../../Robot_V2/sys/initial.h
category: header
- file: ../../../../Robot_V2/sys/health.h
- file: ../../../../Robot_V2/sys/flash.h
category: header
- file: ../../../../Robot_V2/sys/health.cpp
- file: ../../../../Robot_V2/sys/flash.cpp
category: sourceCpp
- file: ../../../../Robot_V2/sys/OTA.h
category: header
- file: ../../../../Robot_V2/sys/OTA.cpp
category: sourceCpp
- file: ../../../../Robot_V2/sys/config.h
category: header
- group: device
files:
- file: ../../../../Robot_V2/device/Can.cpp
category: sourceCpp
- file: ../../../../Robot_V2/device/Can.h
category: header
- file: ../../../../Robot_V2/device/ang_sensor.cpp
category: sourceCpp
- file: ../../../../Robot_V2/device/ang_sensor.h
category: header
- file: ../../../../Robot_V2/device/ADC.cpp
category: sourceCpp
- file: ../../../../Robot_V2/device/adc.h
category: header
- file: ../../../../Robot_V2/device/Timer.cpp
category: sourceCpp
- file: ../../../../Robot_V2/device/Timer.h
category: header
- file: ../../../../Robot_V2/device/test.cpp
category: sourceCpp
- file: ../../../../Robot_V2/device/motor.cpp
category: sourceCpp
- file: ../../../../Robot_V2/device/motor.h
category: header
- group: Algorithm
files:
- file: ../../../../Robot_V2/Algorithm/Filter.cpp
category: sourceCpp
- file: ../../../../Robot_V2/Algorithm/Filter.h
category: header
- file: ../../../../Robot_V2/Algorithm/DengFOC.cpp
category: sourceCpp
- file: ../../../../Robot_V2/Algorithm/DengFOC.h
category: header
- file: ../../../../Robot_V2/Algorithm/pid.cpp
category: sourceCpp
- file: ../../../../Robot_V2/pid.h
category: header
constructed-files:
- file: ../../../../Robot_V2/RTE/_Debug_GD32C103CB/RTE_Components.h
category: header
@@ -387,8 +331,8 @@ build:
- pack: GigaDevice::GD32C10x_DFP@1.0.1
components:
- component: GigaDevice::Device:EVAL:GD32C10x@1.0.0
- component: GigaDevice::Device:GD32C10x_StdPeripherals:ADC@1.0.0
- component: GigaDevice::Device:GD32C10x_StdPeripherals:CAN@1.0.0
- component: GigaDevice::Device:GD32C10x_StdPeripherals:CRC@1.0.0
- component: GigaDevice::Device:GD32C10x_StdPeripherals:DBG@1.0.0
- component: GigaDevice::Device:GD32C10x_StdPeripherals:DMA@1.0.0
- component: GigaDevice::Device:GD32C10x_StdPeripherals:EXTI@1.0.0
@@ -398,9 +342,6 @@ build:
- component: GigaDevice::Device:GD32C10x_StdPeripherals:MISC@1.0.0
- component: GigaDevice::Device:GD32C10x_StdPeripherals:PMU@1.0.0
- component: GigaDevice::Device:GD32C10x_StdPeripherals:RCU@1.0.0
- component: GigaDevice::Device:GD32C10x_StdPeripherals:SPI_I2S@1.0.0
- component: GigaDevice::Device:GD32C10x_StdPeripherals:TIMER@1.0.0
- component: GigaDevice::Device:GD32C10x_StdPeripherals:USART@1.0.0
- component: GigaDevice::Device:GD32C10x_StdPeripherals:WWDGT@1.0.0
- component: GigaDevice::Device:GD32C10x_libopt@1.0.0
- component: GigaDevice::Device:Startup@1.0.0