feat(ota): 修复备份APP区域恢复功能和OTA流程优化、启用BRS、减小延时

- 添加sendBackup方法用于在备份APP激活时发送确认消息
- 优化OTA跳转逻辑,在jumpToApplication中清除复位标志
- 修复move_app_data函数中数据源地址错误,从备份区域正确读取数据
- 在OTA流程中正确设置APP状态标志,确保应用验证状态管理

refactor(can): 清理调试代码和函数签名优化

- 移除调试用的printf语句和未使用的cstdio头文件
- 统一函数参数类型为u8和u32,提高代码一致性
- 优化CAN通信检查逻辑,移除冗余的调试输出

perf(ota): 优化OTA处理中的延时函数

- 将delay_1ms(1)改为delay_1us(100),提高延时精度
- 添加微秒级延时函数delay_1us实现
- 增加OTA超时时间从10秒到100秒

fix(ota): 修复OTA状态管理和错误处理

- 在各种错误情况下正确设置ota_state为OTA_STATE_IDLE
- 在eraseApplicationArea中正确初始化APP状态标志
- 添加CRC校验失败时的调试输出选项
- 修复数据包大小验证逻辑
This commit is contained in:
cbb
2026-01-07 23:14:15 +08:00
parent c7c4451d57
commit aefb7d4ee4
18 changed files with 1384 additions and 1328 deletions
+5 -13
View File
@@ -6,7 +6,6 @@
#include "gd32c10x_dma.h"
#include "gd32c10x_gpio.h"
#include "main.h"
#include <cstdio>
#include <cstdlib>
#include <cstring>
#include <stdint.h>
@@ -191,30 +190,19 @@ u8 CAN_transmiter::init() {
void CAN_transmiter::communication_check() {
// CAN0 发送数据标志
if (SET == can0_send_flag) {
// printf("\r\n can0 %X receive data:", receive_message.rx_efid);
// CAN0_transmiter.CAN_all_Send();
// CANFD_all_Send();
can0_send_flag = RESET;
}
// CAN0 接收数据标志
if (SET == can0_receive_flag) {
// printf("can0 %X receive data,length%d:", receive_message.rx_efid,
// receive_message.rx_dlen);
// for (int i = 0; i < receive_message.rx_dlen; i++) {
// printf(" 0x%02x", receive_message.rx_data[i]);
// }
// printf("\n");
if (receive_message.rx_efid == CANFD_OTA_DATA_ID or
receive_message.rx_efid == CANFD_OTA_REQ_ID) {
ota.handleOTAMessage(receive_message.rx_efid,
receive_message.rx_data,
receive_message.rx_dlen);
} else {
#if CAN_DEBUG
printf("Unknown CAN ID: %X\n", receive_message.rx_efid);
#endif
}
can0_receive_flag = RESET;
@@ -233,6 +221,11 @@ u8 CAN_transmiter::sendDATA_ACK(u32 packet_num, u8 *data) { // 握手的时候
return CANFD_AsyncSend(CANFD_OTA_ACK_ID, 6, transmit_data);
}
u8 CAN_transmiter::sendBackup() { // 握手的时候
return CANFD_AsyncSend(CANFD_OTA_ACK_ID, 0, transmit_data);
}
u8 CAN_transmiter::sendDATA_ACK(u32 packet_num,
bool if_success) { // 发送数据的时候
memset(transmit_data, 0, 4);
@@ -361,7 +354,6 @@ u8 CAN_transmiter::CANFD_AsyncSend(u32 id, u8 length, u8 *data) {
} else {
#if CAN_DEBUG
printf("CANFD data length error\r\n");
#endif
return 0;
}
+2 -1
View File
@@ -38,7 +38,8 @@ class CAN_transmiter {
void communication_check(); // 通信检查
u8 CANFD_AsyncSend(u32 ID, u8 length, u8 *data); // CANFD异步发送(使用DMA)
u8 sendDATA_ACK(u32 packet_num, bool if_success);
u8 sendDATA_ACK(u32 packet_num, u8* data); // 恢复原函数签名
u8 sendDATA_ACK(u32 packet_num, u8 *data); // 恢复原函数签名
u8 sendBackup();
};
#ifdef __cplusplus
+3 -3
View File
@@ -16,8 +16,6 @@ void BootloaderSystem::initHardware() {
systick_config(); // 系统时钟初始化
USART0_init(); // 调试串口初始化
// rcu_periph_clock_enable(RCU_CRC); // 使能CRC外设时钟
// crc_deinit(); // 初始化CRC模块
CAN0_transmiter.init();
}
@@ -46,10 +44,12 @@ void BootloaderSystem::run() {
u32 back_check = *flash_ptr;
if (back_check == OTA_AVAL and
back_aval == OTA_AVAL) { // backup已确认且激活,复制到主APP区域
printf("OTA Mode3\r\n");
CAN0_transmiter.sendBackup();
move_app_data(); // 恢复BACKUP
ota.jumpToApplication(); // 跳转到APP
} else { // backup无效,进入OTA模式
printf("OTA Mode2\r\n");
printf("OTA Mode4\r\n");
// OTA模式
while (1) {
CAN0_transmiter.communication_check();
+25 -15
View File
@@ -108,7 +108,7 @@ void OTAHandler::process() {
delay_1ms(10);
return;
} else {
delay_1ms(1);
delay_1us(100);
ota_time++;
}
@@ -126,8 +126,8 @@ void OTAHandler::process() {
if (if_checked == OTA_AVAL and if_aval == OTA_AVAL) {
OTA_SET(n_APP_LATEST_AVAL_ADDR,
OTA_AVAL); // 实际可用,设置APP为启用
jumpToApplication();
}
jumpToApplication();
}
}
bool validateApplication() {
@@ -218,7 +218,11 @@ void OTAHandler::jumpToApplication() {
printf("jumping5, MSP:0x%08X, Reset Handler:0x%08X\r\n", msp_value,
reset_handler);
#endif
__set_MSP(msp_value);
// 在跳转前清除复位标志
rcu_all_reset_flag_clear();
// 7. 跳转
app_entry();
@@ -234,6 +238,9 @@ void OTAHandler::jumpToApplication() {
* @retval 无
*/
void OTAHandler::eraseApplicationArea() {
OTA_SET(n_APP_LATEST_CHECK_ADDR, OTA_NOT_AVAL); // 设置APP为未确认
OTA_SET(n_APP_LATEST_EN_ADDR, OTA_NOT_AVAL); // 设置APP为未激活
OTA_SET(n_APP_LATEST_AVAL_ADDR, OTA_NOT_AVAL); // 设置APP为不可用
// 擦除APP区域
fmc_unlock();
@@ -338,6 +345,10 @@ void OTAHandler::handleOTAMessage(u32 id, u8 *data, u8 len) {
0) {
ota_error = OTA_ERROR_INVALID_CRC;
send_error_frame(OTA_ERROR_INVALID_CRC);
#if DEBUG_OTA
std::printf("CRC32 :%x,%x!\r\n", receive_dataCRC32[0],
calculated_dataCRC32[0]);
#endif
receive_packet_num -= 1;
} else {
// 写入Flash前验证数据
@@ -347,6 +358,7 @@ void OTAHandler::handleOTAMessage(u32 id, u8 *data, u8 len) {
OTA_PACKET_SIZE);
} else {
ota_error = OTA_ERROR_INVALID_SIZE;
ota_state = OTA_STATE_IDLE;
send_error_frame(OTA_ERROR_INVALID_SIZE);
}
}
@@ -374,11 +386,13 @@ void OTAHandler::handleOTAMessage(u32 id, u8 *data, u8 len) {
received_size = 0;
} else {
ota_error = OTA_ERROR_INVALID_SIZE;
ota_state = OTA_STATE_IDLE;
send_error_frame(OTA_ERROR_INVALID_SIZE);
return;
}
u8 send_data[6] = {0xBA, 0xC0, 0x00,
0x00, 0x00, 0x00}; // 确认开始传输
eraseApplicationArea();
// 发送接收包0请求
CAN0_transmiter.CANFD_AsyncSend(CANFD_OTA_ACK_ID, 6, send_data);
@@ -393,6 +407,7 @@ void OTAHandler::handleOTAMessage(u32 id, u8 *data, u8 len) {
} else {
ota_error = OTA_ERROR_INVALID_PACKET;
ota_state = OTA_STATE_IDLE;
send_error_frame(OTA_ERROR_INVALID_PACKET);
}
} else if (id == CANFD_OTA_REQ_ID) {
@@ -471,7 +486,7 @@ void OTAHandler::handleOTAMessage(u32 id, u8 *data, u8 len) {
// 验证失败 - 可能密钥错误或攻击
ota_error = OTA_ERROR_INVALID_KEY;
send_error_frame(OTA_ERROR_INVALID_KEY); // 验证失败
// reset_ota_state();
ota_state = OTA_STATE_IDLE;
return;
}
@@ -484,6 +499,7 @@ void OTAHandler::handleOTAMessage(u32 id, u8 *data, u8 len) {
} else {
// 其他握手异常
ota_error = OTA_ERROR_INVALID_HANDSHAKE;
ota_state = OTA_STATE_IDLE;
send_error_frame(OTA_ERROR_INVALID_HANDSHAKE);
return;
}
@@ -569,17 +585,16 @@ fmc_state_enum move_app_data() {
// 复制数据 - 按字(32位)进行复制以提高效率
uint32_t offset = 0;
uint32_t write_count = 0; // 记录实际写入的字数
const uint32_t *src_ptr = (const uint32_t *)APPLATEST_START_ADDR;
uint32_t *dst_ptr = (uint32_t *)APPLATEST_START_ADDR;
const uint32_t *src_ptr = (const uint32_t *)APPBACK_START_ADDR; // 从备份区域读取
// 预计算源数据的CRC,避免重复访问内存
crc_deinit();
crc_data_register_reset();
uint32_t src_crc = crc_block_data_calculate(
(uint32_t *)APPBACK_START_ADDR, APP_MAX_SIZE / 4);
uint32_t src_crc = crc_block_data_calculate((uint32_t *)APPBACK_START_ADDR,
APP_MAX_SIZE / 4);
while (offset < APP_MAX_SIZE) {
uint32_t src_data = src_ptr[offset / 4];
uint32_t src_data = src_ptr[offset / 4]; // 从备份区域读取数据
// 检查源地址是否为有效的Flash数据(非0xFFFFFFFF表示有数据)
if (src_data != 0xFFFFFFFF) {
@@ -588,7 +603,7 @@ fmc_state_enum move_app_data() {
FMC_FLAG_PGERR);
fmc_status =
fmc_word_program(APPLATEST_START_ADDR + offset, src_data);
fmc_word_program(APPLATEST_START_ADDR + offset, src_data); // 写入到最新APP区域
// 检查写入操作是否成功
if (fmc_status != FMC_READY) {
@@ -604,11 +619,6 @@ fmc_state_enum move_app_data() {
write_count++;
}
offset += 4;
// 每写入一定数量的数据后,喂狗一次
if ((offset % 4096) == 0) { // 每4KB喂狗一次
fwdgt_counter_reload();
}
}
fmc_lock();
@@ -710,4 +720,4 @@ void calculate_crc32_with_key(const uint8_t *key, const uint8_t *data,
output[1] = (uint8_t)(crc >> 8);
output[2] = (uint8_t)(crc >> 16);
output[3] = (uint8_t)(crc >> 24);
}
}
+11 -11
View File
@@ -10,20 +10,20 @@
class OTAHandler {
public:
u32 ota_stateota_time;
uint32_t received_size;
uint32_t expected_size;
u32 received_size;
u32 expected_size;
void init();
void process();
bool isActive() const { return ota_state; }
void handleOTAMessage(uint32_t id, uint8_t *data, uint8_t len);
void handleOTAMessage(u32 id, u8 *data, u8 len);
void jumpToApplication();
private:
u16 ota_time;
u32 ota_time;
void eraseApplicationArea();
void writeApplicationData(uint32_t offset, uint8_t *data, uint32_t size);
void writeApplicationData(u32 offset, u8 *data, u32 size);
bool verifyApplicationData(u32 offset, u8 *data, u32 size);
typedef enum {
OTA_STATE_IDLE = 0,
@@ -44,18 +44,18 @@ class OTAHandler {
OTA_ERROR_INVALID_SIZE
} ota_error_t;
uint8_t device_uid[12]; // 从GD32 UID寄存器读取
uint8_t current_K_session[16];
uint8_t nonce_server[16];
u8 device_uid[12]; // 从GD32 UID寄存器读取
u8 current_K_session[16];
u8 nonce_server[16];
aes128_context aes_ctx; // AES上下文
ota_state_t ota_state = OTA_STATE_IDLE;
ota_error_t ota_error = OTA_ERROR_NONE;
};
void getDeviceSerialNumber(uint8_t *buffer);
void calculate_crc32_with_key(const uint8_t *key, const uint8_t *data,
void getDeviceSerialNumber(u8 *buffer);
void calculate_crc32_with_key(const u8 *key, const u8 *data,
u8 *output);
void send_error_frame(uint8_t error);
void send_error_frame(u8 error);
bool validateApplication();
fmc_state_enum move_app_data();
+1 -1
View File
@@ -54,7 +54,7 @@ constexpr uint8_t K_master[16] = {0x01, 0x23, 0x45, 0x67, 0x89, 0xAB,
0xCD, 0xEF, 0xFE, 0xDC, 0xBA, 0x98,
0x76, 0x54, 0x32, 0x10}; // 预置主密钥
// 其他
constexpr u32 OTA_TIMEOUT = 10000;
constexpr u32 OTA_TIMEOUT = 100000;
constexpr u8 SIZE_U32 = sizeof(uint32_t);
constexpr u8 SIZE_FLOAT = sizeof(float);
#endif
+18
View File
@@ -56,6 +56,24 @@ void systick_config(void) {
NVIC_SetPriority(SysTick_IRQn, 0x00U);
}
/*!
\brief delay a time in microseconds
\param[in] count: count in microseconds
\param[out] none
\retval none
*/
void delay_1us(uint32_t count) {
/* 计算循环次数以实现微秒延时
假设CPU每执行一条nop指令需要1个时钟周期
根据系统时钟频率计算需要的循环次数 */
uint32_t cycles = (SystemCoreClock / 4000000UL) * count; // 每微秒的时钟周期数
/* 循环减去执行指令所需的周期数 */
for(uint32_t i = 0; i < cycles; i++) {
__NOP(); // 空操作指令
}
}
/*!
\brief delay a time in milliseconds
\param[in] count: count in milliseconds
+2
View File
@@ -44,6 +44,8 @@ extern "C" {
void systick_config(void);
/* delay a time in milliseconds */
void delay_1ms(uint32_t count);
/* delay a time in microseconds */
void delay_1us(uint32_t count);
/* delay a time in seconds */
void delay_1s(uint32_t count);
/* delay decrement */
Binary file not shown.
+162 -161
View File
@@ -6,162 +6,164 @@ Memory Map of the image
Image Entry point : 0x08000165
Load Region LR_ROM0 (Base: 0x08000000, Size: 0x00004958, Max: 0x08005000, ABSOLUTE)
Load Region LR_ROM0 (Base: 0x08000000, Size: 0x00004a30, Max: 0x08005000, ABSOLUTE)
Execution Region ER_ROM0 (Base: 0x08000000, Size: 0x0000485c, Max: 0x08005000, ABSOLUTE)
Execution Region ER_ROM0 (Base: 0x08000000, Size: 0x00004934, Max: 0x08005000, ABSOLUTE)
Base Addr Size Type Attr Idx E Section Name Object
0x08000000 0x00000150 Data RO 875 RESET startup_gd32c10x.o
0x08000150 0x00000000 Code RO 1039 * .ARM.Collect$$$$00000000 mc_w.l(entry.o)
0x08000150 0x00000004 Code RO 1466 .ARM.Collect$$$$00000003 mc_w.l(entry4.o)
0x08000154 0x00000004 Code RO 1469 .ARM.Collect$$$$00000004 mc_w.l(entry5.o)
0x08000158 0x00000000 Code RO 1471 .ARM.Collect$$$$00000008 mc_w.l(entry7b.o)
0x08000158 0x00000000 Code RO 1473 .ARM.Collect$$$$0000000A mc_w.l(entry8b.o)
0x08000158 0x00000008 Code RO 1474 .ARM.Collect$$$$0000000B mc_w.l(entry9a.o)
0x08000160 0x00000000 Code RO 1476 .ARM.Collect$$$$0000000D mc_w.l(entry10a.o)
0x08000160 0x00000000 Code RO 1478 .ARM.Collect$$$$0000000F mc_w.l(entry11a.o)
0x08000160 0x00000004 Code RO 1467 .ARM.Collect$$$$00002714 mc_w.l(entry4.o)
0x08000164 0x0000002c Code RO 876 * .text startup_gd32c10x.o
0x08000190 0x00000024 Code RO 1048 .text mc_w.l(memcpya.o)
0x080001b4 0x00000024 Code RO 1050 .text mc_w.l(memseta.o)
0x080001d8 0x0000001a Code RO 1052 .text mc_w.l(memcmp.o)
0x080001f2 0x00000002 Code RO 1494 .text mc_w.l(abort.o)
0x080001f4 0x00000030 Code RO 1821 .text mc_w.l(init.o)
0x08000224 0x0000009c Code RO 163 .text.CAN0_RX0_IRQHandler Can.o
0x080002c0 0x0000004a Code RO 165 .text.DMA0_Channel4_IRQHandler Can.o
0x08000000 0x00000150 Data RO 879 RESET startup_gd32c10x.o
0x08000150 0x00000000 Code RO 1043 * .ARM.Collect$$$$00000000 mc_w.l(entry.o)
0x08000150 0x00000004 Code RO 1470 .ARM.Collect$$$$00000003 mc_w.l(entry4.o)
0x08000154 0x00000004 Code RO 1473 .ARM.Collect$$$$00000004 mc_w.l(entry5.o)
0x08000158 0x00000000 Code RO 1475 .ARM.Collect$$$$00000008 mc_w.l(entry7b.o)
0x08000158 0x00000000 Code RO 1477 .ARM.Collect$$$$0000000A mc_w.l(entry8b.o)
0x08000158 0x00000008 Code RO 1478 .ARM.Collect$$$$0000000B mc_w.l(entry9a.o)
0x08000160 0x00000000 Code RO 1480 .ARM.Collect$$$$0000000D mc_w.l(entry10a.o)
0x08000160 0x00000000 Code RO 1482 .ARM.Collect$$$$0000000F mc_w.l(entry11a.o)
0x08000160 0x00000004 Code RO 1471 .ARM.Collect$$$$00002714 mc_w.l(entry4.o)
0x08000164 0x0000002c Code RO 880 * .text startup_gd32c10x.o
0x08000190 0x00000024 Code RO 1052 .text mc_w.l(memcpya.o)
0x080001b4 0x00000024 Code RO 1054 .text mc_w.l(memseta.o)
0x080001d8 0x0000001a Code RO 1056 .text mc_w.l(memcmp.o)
0x080001f2 0x00000002 Code RO 1498 .text mc_w.l(abort.o)
0x080001f4 0x00000030 Code RO 1825 .text mc_w.l(init.o)
0x08000224 0x0000009c Code RO 167 .text.CAN0_RX0_IRQHandler Can.o
0x080002c0 0x0000004a Code RO 169 .text.DMA0_Channel4_IRQHandler Can.o
0x0800030a 0x00000002 PAD
0x0800030c 0x00000026 Code RO 167 .text.DMA0_Channel5_IRQHandler Can.o
0x0800030c 0x00000026 Code RO 171 .text.DMA0_Channel5_IRQHandler Can.o
0x08000332 0x00000002 PAD
0x08000334 0x00000342 Code RO 882 .text.SystemInit system_gd32c10x.o
0x08000334 0x00000342 Code RO 886 .text.SystemInit system_gd32c10x.o
0x08000676 0x00000002 PAD
0x08000678 0x00000012 Code RO 82 .text.USART0_init initial.o
0x08000678 0x00000012 Code RO 84 .text.USART0_init initial.o
0x0800068a 0x00000002 PAD
0x0800068c 0x00000198 Code RO 29 .text._Z11mix_columnsPh aes128.o
0x08000824 0x000000ba Code RO 129 .text._Z13move_app_datav OTA.o
0x080008de 0x00000002 PAD
0x080008e0 0x00000238 Code RO 37 .text._Z14aes128_set_keyP14aes128_contextPKh aes128.o
0x08000b18 0x000008e2 Code RO 35 .text._Z15inv_mix_columnsPh aes128.o
0x080013fa 0x00000002 PAD
0x080013fc 0x000003c8 Code RO 43 .text._Z20aes128_decrypt_blockP14aes128_contextPKhPh aes128.o
0x080017c4 0x000003e6 Code RO 39 .text._Z20aes128_encrypt_blockP14aes128_contextPKhPh aes128.o
0x08001baa 0x00000002 PAD
0x08001bac 0x00000210 Code RO 123 .text._Z24calculate_crc32_with_keyPKhS0_Ph OTA.o
0x08001dbc 0x0000002c Code RO 45 .text._Z26aes128_ecb_decrypt_48bytesP14aes128_contextPKhPh aes128.o
0x08001de8 0x00000182 Code RO 105 .text._Z7OTA_SETjj OTA.o
0x08001f6a 0x00000002 PAD
0x08001f6c 0x000004a8 Code RO 121 .text._ZN10OTAHandler16handleOTAMessageEjPhh OTA.o
0x08002414 0x000000a2 Code RO 113 .text._ZN10OTAHandler17jumpToApplicationEv OTA.o
0x080024b6 0x00000002 PAD
0x080024b8 0x0000005a Code RO 119 .text._ZN10OTAHandler20writeApplicationDataEjPhj OTA.o
0x08002512 0x00000002 PAD
0x08002514 0x00000096 Code RO 109 .text._ZN10OTAHandler7processEv OTA.o
0x080025aa 0x00000028 Code RO 905 .text._ZN10__cxxabiv121__isOurExceptionClassEPK21_Unwind_Control_Block libcppabi_wx.l(cxa_exception.cpp.o)
0x080025d2 0x00000060 Code RO 933 .text._ZN10__cxxabiv1L22__cxa_end_cleanup_implEv libcppabi_wx.l(cxa_exception.cpp.o)
0x08002632 0x00000002 PAD
0x08002634 0x0000008c Code RO 157 .text._ZN14CAN_transmiter12sendDATA_ACKEjPh Can.o
0x080026c0 0x0000014e Code RO 159 .text._ZN14CAN_transmiter15CANFD_AsyncSendEjhPh Can.o
0x0800280e 0x00000002 PAD
0x08002810 0x0000004e Code RO 155 .text._ZN14CAN_transmiter19communication_checkEv Can.o
0x0800285e 0x00000002 PAD
0x08002860 0x00000038 Code RO 153 .text._ZN14CAN_transmiter4initEv Can.o
0x08002898 0x000000b4 Code RO 6 .text._ZN16BootloaderSystem3runEv main.o
0x0800294c 0x00000074 Code RO 976 .text._ZSt11__terminatePFvvE libcppabi_wx.l(cxa_handlers.cpp.o)
0x080029c0 0x00000030 Code RO 967 .text._ZSt9terminatev libcppabi_wx.l(cxa_handlers.cpp.o)
0x080029f0 0x0000000a Code RO 962 .text.__clang_call_terminate libcppabi_wx.l(cxa_exception.cpp.o)
0x080029fa 0x00000002 PAD
0x080029fc 0x0000006c Code RO 910 .text.__cxa_begin_catch libcppabi_wx.l(cxa_exception.cpp.o)
0x08002a68 0x0000000a Code RO 1333 .text.__cxa_get_globals libcppabi_wx.l(cxa_exception_storage.cpp.o)
0x08002a72 0x0000000a Code RO 1335 .text.__cxa_get_globals_fast libcppabi_wx.l(cxa_exception_storage.cpp.o)
0x08002a7c 0x00000026 Code RO 216 .text.can_deinit gd32c10x_can.o
0x08002aa2 0x00000002 PAD
0x08002aa4 0x00000114 Code RO 222 .text.can_fd_init gd32c10x_can.o
0x08002bb8 0x000000b2 Code RO 224 .text.can_filter_init gd32c10x_can.o
0x08002c6a 0x00000002 PAD
0x08002c6c 0x00000176 Code RO 220 .text.can_init gd32c10x_can.o
0x08002de2 0x00000002 PAD
0x08002de4 0x00000008 Code RO 266 .text.can_interrupt_enable gd32c10x_can.o
0x08002dec 0x00000016 Code RO 276 .text.can_interrupt_flag_clear gd32c10x_can.o
0x08002e02 0x00000002 PAD
0x08002e04 0x00000066 Code RO 274 .text.can_interrupt_flag_get gd32c10x_can.o
0x08002e6a 0x00000002 PAD
0x08002e6c 0x000001f4 Code RO 250 .text.can_message_receive gd32c10x_can.o
0x08003060 0x000001f0 Code RO 244 .text.can_message_transmit gd32c10x_can.o
0x08003250 0x00000018 Code RO 254 .text.can_receive_message_length_get gd32c10x_can.o
0x08003268 0x00000072 Code RO 218 .text.can_struct_para_init gd32c10x_can.o
0x080032da 0x00000002 PAD
0x080032dc 0x000001b0 Code RO 151 .text.canfd_config Can.o
0x0800348c 0x00000066 Code RO 302 .text.crc_block_data_calculate gd32c10x_crc.o
0x080034f2 0x00000002 PAD
0x080034f4 0x00000012 Code RO 292 .text.crc_data_register_reset gd32c10x_crc.o
0x08003506 0x00000002 PAD
0x08003508 0x00000018 Code RO 290 .text.crc_deinit gd32c10x_crc.o
0x08003520 0x00000024 Code RO 64 .text.delay_1ms systick.o
0x08003544 0x00000018 Code RO 66 .text.delay_decrement systick.o
0x0800355c 0x00000024 Code RO 356 .text.dma_channel_disable gd32c10x_dma.o
0x08003580 0x00000024 Code RO 354 .text.dma_channel_enable gd32c10x_dma.o
0x080035a4 0x00000074 Code RO 344 .text.dma_init gd32c10x_dma.o
0x08003618 0x00000022 Code RO 390 .text.dma_interrupt_enable gd32c10x_dma.o
0x0800363a 0x00000002 PAD
0x0800363c 0x0000000e Code RO 388 .text.dma_interrupt_flag_clear gd32c10x_dma.o
0x0800364a 0x00000002 PAD
0x0800364c 0x0000003a Code RO 386 .text.dma_interrupt_flag_get gd32c10x_dma.o
0x08003686 0x00000002 PAD
0x08003688 0x0000001a Code RO 342 .text.dma_struct_para_init gd32c10x_dma.o
0x080036a2 0x00000002 PAD
0x080036a4 0x0000000c Code RO 498 .text.fmc_flag_clear gd32c10x_fmc.o
0x080036b0 0x00000012 Code RO 460 .text.fmc_lock gd32c10x_fmc.o
0x080036c2 0x00000002 PAD
0x080036c4 0x00000166 Code RO 464 .text.fmc_page_erase gd32c10x_fmc.o
0x0800382a 0x00000002 PAD
0x0800382c 0x00000026 Code RO 458 .text.fmc_unlock gd32c10x_fmc.o
0x08003852 0x00000002 PAD
0x08003854 0x000001aa Code RO 470 .text.fmc_word_program gd32c10x_fmc.o
0x080039fe 0x00000002 PAD
0x08003a00 0x0000002c Code RO 84 .text.fputc initial.o
0x08003a2c 0x00000010 Code RO 529 .text.fwdgt_counter_reload gd32c10x_fwdgt.o
0x08003a3c 0x00000098 Code RO 199 .text.gd_eval_com_init gd32c10x_eval.o
0x08003ad4 0x00000004 Code RO 554 .text.gpio_bit_reset gd32c10x_gpio.o
0x08003ad8 0x000002c0 Code RO 550 .text.gpio_init gd32c10x_gpio.o
0x08003d98 0x00000080 Code RO 568 .text.gpio_pin_remap_config gd32c10x_gpio.o
0x08003e18 0x0000001e Code RO 8 .text.main main.o
0x08003e36 0x00000002 PAD
0x08003e38 0x00000060 Code RO 597 .text.nvic_irq_enable gd32c10x_misc.o
0x08003e98 0x0000001c Code RO 601 .text.nvic_vector_table_set gd32c10x_misc.o
0x08003eb4 0x0000010c Code RO 747 .text.rcu_clock_freq_get gd32c10x_rcu.o
0x08003fc0 0x00000020 Code RO 667 .text.rcu_periph_clock_disable gd32c10x_rcu.o
0x08003fe0 0x0000001e Code RO 665 .text.rcu_periph_clock_enable gd32c10x_rcu.o
0x08003ffe 0x00000002 PAD
0x08004000 0x00000020 Code RO 675 .text.rcu_periph_reset_disable gd32c10x_rcu.o
0x08004020 0x0000001e Code RO 673 .text.rcu_periph_reset_enable gd32c10x_rcu.o
0x0800403e 0x00000002 PAD
0x08004040 0x00000014 Code RO 681 .text.rcu_system_clock_source_config gd32c10x_rcu.o
0x08004054 0x00000048 Code RO 62 .text.systick_config systick.o
0x0800409c 0x00000006 Code RO 1318 .text.unlikely.abort_message libcppabi_wx.l(abort_message.cpp.o)
0x080040a2 0x00000002 PAD
0x080040a4 0x0000006a Code RO 763 .text.usart_baudrate_set gd32c10x_usart.o
0x0800410e 0x00000002 PAD
0x08004110 0x00000008 Code RO 789 .text.usart_data_transmit gd32c10x_usart.o
0x08004118 0x0000007a Code RO 761 .text.usart_deinit gd32c10x_usart.o
0x08004192 0x00000002 PAD
0x08004194 0x0000000a Code RO 771 .text.usart_enable gd32c10x_usart.o
0x0800419e 0x00000002 PAD
0x080041a0 0x00000010 Code RO 851 .text.usart_flag_get gd32c10x_usart.o
0x080041b0 0x00000014 Code RO 777 .text.usart_receive_config gd32c10x_usart.o
0x080041c4 0x00000014 Code RO 775 .text.usart_transmit_config gd32c10x_usart.o
0x080041d8 0x0000000e Code RO 1910 i.__scatterload_copy mc_w.l(handlers.o)
0x080041e6 0x00000002 Code RO 1911 i.__scatterload_null mc_w.l(handlers.o)
0x080041e8 0x0000000e Code RO 1912 i.__scatterload_zeroinit mc_w.l(handlers.o)
0x080041f6 0x00000002 PAD
0x080041f8 0x00000024 Code RO 1042 i.puts mc_w.l(puts.o)
0x0800421c 0x00000100 Data RO 50 .rodata._ZL4sbox aes128.o
0x0800431c 0x00000010 Data RO 133 .rodata._ZL8K_master OTA.o
0x0800432c 0x00000400 Data RO 135 .rodata._ZZ24calculate_crc32_with_keyPKhS0_PhE9crc_table OTA.o
0x0800472c 0x00000008 Data RO 749 .rodata.cst8 gd32c10x_rcu.o
0x08004734 0x00000007 Data RO 278 .rodata.g_can_fdlength_table gd32c10x_can.o
0x0800473b 0x00000100 Data RO 49 .rodata.inv_sbox aes128.o
0x0800483b 0x00000001 PAD
0x0800483c 0x00000020 Data RO 1909 Region$$Table anon$$obj.o
0x08000824 0x000000b2 Code RO 131 .text._Z13move_app_datav OTA.o
0x080008d6 0x00000002 PAD
0x080008d8 0x00000238 Code RO 37 .text._Z14aes128_set_keyP14aes128_contextPKh aes128.o
0x08000b10 0x000008e2 Code RO 35 .text._Z15inv_mix_columnsPh aes128.o
0x080013f2 0x00000002 PAD
0x080013f4 0x000003c8 Code RO 43 .text._Z20aes128_decrypt_blockP14aes128_contextPKhPh aes128.o
0x080017bc 0x000003e6 Code RO 39 .text._Z20aes128_encrypt_blockP14aes128_contextPKhPh aes128.o
0x08001ba2 0x00000002 PAD
0x08001ba4 0x00000210 Code RO 125 .text._Z24calculate_crc32_with_keyPKhS0_Ph OTA.o
0x08001db4 0x0000002c Code RO 45 .text._Z26aes128_ecb_decrypt_48bytesP14aes128_contextPKhPh aes128.o
0x08001de0 0x00000182 Code RO 107 .text._Z7OTA_SETjj OTA.o
0x08001f62 0x00000002 PAD
0x08001f64 0x0000046c Code RO 123 .text._ZN10OTAHandler16handleOTAMessageEjPhh OTA.o
0x080023d0 0x000000a8 Code RO 115 .text._ZN10OTAHandler17jumpToApplicationEv OTA.o
0x08002478 0x00000080 Code RO 119 .text._ZN10OTAHandler20eraseApplicationAreaEv OTA.o
0x080024f8 0x0000005a Code RO 121 .text._ZN10OTAHandler20writeApplicationDataEjPhj OTA.o
0x08002552 0x00000002 PAD
0x08002554 0x00000098 Code RO 111 .text._ZN10OTAHandler7processEv OTA.o
0x080025ec 0x00000028 Code RO 909 .text._ZN10__cxxabiv121__isOurExceptionClassEPK21_Unwind_Control_Block libcppabi_wx.l(cxa_exception.cpp.o)
0x08002614 0x00000060 Code RO 937 .text._ZN10__cxxabiv1L22__cxa_end_cleanup_implEv libcppabi_wx.l(cxa_exception.cpp.o)
0x08002674 0x0000004c Code RO 163 .text._ZN14CAN_transmiter10sendBackupEv Can.o
0x080026c0 0x0000008c Code RO 159 .text._ZN14CAN_transmiter12sendDATA_ACKEjPh Can.o
0x0800274c 0x0000014e Code RO 161 .text._ZN14CAN_transmiter15CANFD_AsyncSendEjhPh Can.o
0x0800289a 0x00000002 PAD
0x0800289c 0x0000004e Code RO 157 .text._ZN14CAN_transmiter19communication_checkEv Can.o
0x080028ea 0x00000002 PAD
0x080028ec 0x00000038 Code RO 155 .text._ZN14CAN_transmiter4initEv Can.o
0x08002924 0x000000d4 Code RO 6 .text._ZN16BootloaderSystem3runEv main.o
0x080029f8 0x00000074 Code RO 980 .text._ZSt11__terminatePFvvE libcppabi_wx.l(cxa_handlers.cpp.o)
0x08002a6c 0x00000030 Code RO 971 .text._ZSt9terminatev libcppabi_wx.l(cxa_handlers.cpp.o)
0x08002a9c 0x0000000a Code RO 966 .text.__clang_call_terminate libcppabi_wx.l(cxa_exception.cpp.o)
0x08002aa6 0x00000002 PAD
0x08002aa8 0x0000006c Code RO 914 .text.__cxa_begin_catch libcppabi_wx.l(cxa_exception.cpp.o)
0x08002b14 0x0000000a Code RO 1337 .text.__cxa_get_globals libcppabi_wx.l(cxa_exception_storage.cpp.o)
0x08002b1e 0x0000000a Code RO 1339 .text.__cxa_get_globals_fast libcppabi_wx.l(cxa_exception_storage.cpp.o)
0x08002b28 0x00000026 Code RO 220 .text.can_deinit gd32c10x_can.o
0x08002b4e 0x00000002 PAD
0x08002b50 0x00000114 Code RO 226 .text.can_fd_init gd32c10x_can.o
0x08002c64 0x000000b2 Code RO 228 .text.can_filter_init gd32c10x_can.o
0x08002d16 0x00000002 PAD
0x08002d18 0x00000176 Code RO 224 .text.can_init gd32c10x_can.o
0x08002e8e 0x00000002 PAD
0x08002e90 0x00000008 Code RO 270 .text.can_interrupt_enable gd32c10x_can.o
0x08002e98 0x00000016 Code RO 280 .text.can_interrupt_flag_clear gd32c10x_can.o
0x08002eae 0x00000002 PAD
0x08002eb0 0x00000066 Code RO 278 .text.can_interrupt_flag_get gd32c10x_can.o
0x08002f16 0x00000002 PAD
0x08002f18 0x000001f4 Code RO 254 .text.can_message_receive gd32c10x_can.o
0x0800310c 0x000001f0 Code RO 248 .text.can_message_transmit gd32c10x_can.o
0x080032fc 0x00000018 Code RO 258 .text.can_receive_message_length_get gd32c10x_can.o
0x08003314 0x00000072 Code RO 222 .text.can_struct_para_init gd32c10x_can.o
0x08003386 0x00000002 PAD
0x08003388 0x000001b0 Code RO 153 .text.canfd_config Can.o
0x08003538 0x00000066 Code RO 306 .text.crc_block_data_calculate gd32c10x_crc.o
0x0800359e 0x00000002 PAD
0x080035a0 0x00000012 Code RO 296 .text.crc_data_register_reset gd32c10x_crc.o
0x080035b2 0x00000002 PAD
0x080035b4 0x00000018 Code RO 294 .text.crc_deinit gd32c10x_crc.o
0x080035cc 0x00000024 Code RO 66 .text.delay_1ms systick.o
0x080035f0 0x00000028 Code RO 64 .text.delay_1us systick.o
0x08003618 0x00000018 Code RO 68 .text.delay_decrement systick.o
0x08003630 0x00000024 Code RO 360 .text.dma_channel_disable gd32c10x_dma.o
0x08003654 0x00000024 Code RO 358 .text.dma_channel_enable gd32c10x_dma.o
0x08003678 0x00000074 Code RO 348 .text.dma_init gd32c10x_dma.o
0x080036ec 0x00000022 Code RO 394 .text.dma_interrupt_enable gd32c10x_dma.o
0x0800370e 0x00000002 PAD
0x08003710 0x0000000e Code RO 392 .text.dma_interrupt_flag_clear gd32c10x_dma.o
0x0800371e 0x00000002 PAD
0x08003720 0x0000003a Code RO 390 .text.dma_interrupt_flag_get gd32c10x_dma.o
0x0800375a 0x00000002 PAD
0x0800375c 0x0000001a Code RO 346 .text.dma_struct_para_init gd32c10x_dma.o
0x08003776 0x00000002 PAD
0x08003778 0x0000000c Code RO 502 .text.fmc_flag_clear gd32c10x_fmc.o
0x08003784 0x00000012 Code RO 464 .text.fmc_lock gd32c10x_fmc.o
0x08003796 0x00000002 PAD
0x08003798 0x00000166 Code RO 468 .text.fmc_page_erase gd32c10x_fmc.o
0x080038fe 0x00000002 PAD
0x08003900 0x00000026 Code RO 462 .text.fmc_unlock gd32c10x_fmc.o
0x08003926 0x00000002 PAD
0x08003928 0x000001aa Code RO 474 .text.fmc_word_program gd32c10x_fmc.o
0x08003ad2 0x00000002 PAD
0x08003ad4 0x0000002c Code RO 86 .text.fputc initial.o
0x08003b00 0x00000098 Code RO 203 .text.gd_eval_com_init gd32c10x_eval.o
0x08003b98 0x00000004 Code RO 558 .text.gpio_bit_reset gd32c10x_gpio.o
0x08003b9c 0x000002c0 Code RO 554 .text.gpio_init gd32c10x_gpio.o
0x08003e5c 0x00000080 Code RO 572 .text.gpio_pin_remap_config gd32c10x_gpio.o
0x08003edc 0x0000001e Code RO 8 .text.main main.o
0x08003efa 0x00000002 PAD
0x08003efc 0x00000060 Code RO 601 .text.nvic_irq_enable gd32c10x_misc.o
0x08003f5c 0x0000001c Code RO 605 .text.nvic_vector_table_set gd32c10x_misc.o
0x08003f78 0x00000012 Code RO 723 .text.rcu_all_reset_flag_clear gd32c10x_rcu.o
0x08003f8a 0x00000002 PAD
0x08003f8c 0x0000010c Code RO 751 .text.rcu_clock_freq_get gd32c10x_rcu.o
0x08004098 0x00000020 Code RO 671 .text.rcu_periph_clock_disable gd32c10x_rcu.o
0x080040b8 0x0000001e Code RO 669 .text.rcu_periph_clock_enable gd32c10x_rcu.o
0x080040d6 0x00000002 PAD
0x080040d8 0x00000020 Code RO 679 .text.rcu_periph_reset_disable gd32c10x_rcu.o
0x080040f8 0x0000001e Code RO 677 .text.rcu_periph_reset_enable gd32c10x_rcu.o
0x08004116 0x00000002 PAD
0x08004118 0x00000014 Code RO 685 .text.rcu_system_clock_source_config gd32c10x_rcu.o
0x0800412c 0x00000048 Code RO 62 .text.systick_config systick.o
0x08004174 0x00000006 Code RO 1322 .text.unlikely.abort_message libcppabi_wx.l(abort_message.cpp.o)
0x0800417a 0x00000002 PAD
0x0800417c 0x0000006a Code RO 767 .text.usart_baudrate_set gd32c10x_usart.o
0x080041e6 0x00000002 PAD
0x080041e8 0x00000008 Code RO 793 .text.usart_data_transmit gd32c10x_usart.o
0x080041f0 0x0000007a Code RO 765 .text.usart_deinit gd32c10x_usart.o
0x0800426a 0x00000002 PAD
0x0800426c 0x0000000a Code RO 775 .text.usart_enable gd32c10x_usart.o
0x08004276 0x00000002 PAD
0x08004278 0x00000010 Code RO 855 .text.usart_flag_get gd32c10x_usart.o
0x08004288 0x00000014 Code RO 781 .text.usart_receive_config gd32c10x_usart.o
0x0800429c 0x00000014 Code RO 779 .text.usart_transmit_config gd32c10x_usart.o
0x080042b0 0x0000000e Code RO 1914 i.__scatterload_copy mc_w.l(handlers.o)
0x080042be 0x00000002 Code RO 1915 i.__scatterload_null mc_w.l(handlers.o)
0x080042c0 0x0000000e Code RO 1916 i.__scatterload_zeroinit mc_w.l(handlers.o)
0x080042ce 0x00000002 PAD
0x080042d0 0x00000024 Code RO 1046 i.puts mc_w.l(puts.o)
0x080042f4 0x00000100 Data RO 50 .rodata._ZL4sbox aes128.o
0x080043f4 0x00000010 Data RO 135 .rodata._ZL8K_master OTA.o
0x08004404 0x00000400 Data RO 137 .rodata._ZZ24calculate_crc32_with_keyPKhS0_PhE9crc_table OTA.o
0x08004804 0x00000008 Data RO 753 .rodata.cst8 gd32c10x_rcu.o
0x0800480c 0x00000007 Data RO 282 .rodata.g_can_fdlength_table gd32c10x_can.o
0x08004813 0x00000100 Data RO 49 .rodata.inv_sbox aes128.o
0x08004913 0x00000001 PAD
0x08004914 0x00000020 Data RO 1913 Region$$Table anon$$obj.o
Execution Region RW_NOINIT (Base: 0x20000000, Size: 0x00000000, Max: 0x00007200, ABSOLUTE, UNINIT)
@@ -173,22 +175,21 @@ Memory Map of the image
Base Addr Size Type Attr Idx E Section Name Object
0x20000000 0x00000004 Data RW 1480 .data mc_w.l(stdout.o)
0x20000004 0x000000e8 Data RW 171 .data.CAN0_transmiter Can.o
0x200000ec 0x00000004 Data RW 888 .data.SystemCoreClock system_gd32c10x.o
0x200000f0 0x00000004 Data RW 1328 .data.__cxa_terminate_handler libcppabi_wx.l(cxa_default_handlers.cpp.o)
0x20000000 0x00000004 Data RW 1484 .data mc_w.l(stdout.o)
0x20000004 0x000000e8 Data RW 175 .data.CAN0_transmiter Can.o
0x200000ec 0x00000004 Data RW 892 .data.SystemCoreClock system_gd32c10x.o
0x200000f0 0x00000004 Data RW 1332 .data.__cxa_terminate_handler libcppabi_wx.l(cxa_default_handlers.cpp.o)
0x200000f4 0x00000004 PAD
0x200000f8 0x00000004 Zero RW 70 .bss._ZL5delay systick.o
0x200000fc 0x0000000c Zero RW 1337 .bss._ZN10__cxxabiv1L10eh_globalsE libcppabi_wx.l(cxa_exception_storage.cpp.o)
0x20000108 0x00000001 Zero RW 132 .bss._ZZN10OTAHandler7processEvE4zero OTA.o
0x200000f8 0x00000004 Zero RW 72 .bss._ZL5delay systick.o
0x200000fc 0x0000000c Zero RW 1341 .bss._ZN10__cxxabiv1L10eh_globalsE libcppabi_wx.l(cxa_exception_storage.cpp.o)
0x20000108 0x00000001 Zero RW 134 .bss._ZZN10OTAHandler7processEvE4zero OTA.o
0x20000109 0x00000007 PAD
0x20000110 0x00000008 Zero RW 174 .bss.can_rx_buffer Can.o
0x20000118 0x00000008 Zero RW 175 .bss.can_tx_buffer Can.o
0x20000120 0x0000001c Zero RW 172 .bss.dma_rx_parameter Can.o
0x2000013c 0x0000001c Zero RW 173 .bss.dma_tx_parameter Can.o
0x20000158 0x0000010c Zero RW 131 .bss.ota OTA.o
0x20000264 0x00000004 PAD
0x20000268 0x00000800 Zero RW 873 STACK startup_gd32c10x.o
0x20000110 0x00000008 Zero RW 178 .bss.can_rx_buffer Can.o
0x20000118 0x00000008 Zero RW 179 .bss.can_tx_buffer Can.o
0x20000120 0x0000001c Zero RW 176 .bss.dma_rx_parameter Can.o
0x2000013c 0x0000001c Zero RW 177 .bss.dma_tx_parameter Can.o
0x20000158 0x00000110 Zero RW 133 .bss.ota OTA.o
0x20000268 0x00000800 Zero RW 877 STACK startup_gd32c10x.o
Execution Region ARM_LIB_HEAP (Base: 0x20000a68, Size: 0x00000c00, Max: 0x00000c00, ABSOLUTE)
File diff suppressed because it is too large Load Diff
+32 -32
View File
@@ -9,37 +9,37 @@
348 454 7890673262972338 G:/Robot_v2/BOOT/tmp/Robot_V2.Release+GD32C103CB/src/Robot_V2.Release+GD32C103CB-stamp/Robot_V2.Release+GD32C103CB-patch b54a62060b325746
454 11714 7890673375515811 Robot_V2.Release+GD32C103CB/src/Robot_V2.Release+GD32C103CB-stamp/Robot_V2.Release+GD32C103CB-configure 708efa7dee4d8c45
454 11714 7890673375515811 G:/Robot_v2/BOOT/tmp/Robot_V2.Release+GD32C103CB/src/Robot_V2.Release+GD32C103CB-stamp/Robot_V2.Release+GD32C103CB-configure 708efa7dee4d8c45
15 623 7892482015765574 Robot_V2.Release+GD32C103CB/src/Robot_V2.Release+GD32C103CB-stamp/Robot_V2.Release+GD32C103CB-build c3a3e5728b3e60b8
623 947 7892482021845118 Robot_V2.Release+GD32C103CB/src/Robot_V2.Release+GD32C103CB-stamp/Robot_V2.Release+GD32C103CB-database 206b709820348205
15 623 7892482015765574 G:/Robot_v2/BOOT/out/Robot_V2/GD32C103CB/Release/Robot_V2.bin c3a3e5728b3e60b8
16 610 7895013364034272 Robot_V2.Release+GD32C103CB/src/Robot_V2.Release+GD32C103CB-stamp/Robot_V2.Release+GD32C103CB-build c3a3e5728b3e60b8
611 965 7895013369978332 Robot_V2.Release+GD32C103CB/src/Robot_V2.Release+GD32C103CB-stamp/Robot_V2.Release+GD32C103CB-database 206b709820348205
16 610 7895013364034272 G:/Robot_v2/BOOT/out/Robot_V2/GD32C103CB/Release/Robot_V2.bin c3a3e5728b3e60b8
12517 12632 7890673384727863 Robot_V2.Release+GD32C103CB/src/Robot_V2.Release+GD32C103CB-stamp/Robot_V2.Release+GD32C103CB-executes 9db191f9941f966f
15 623 7892482015765574 G:/Robot_v2/BOOT/out/Robot_V2/GD32C103CB/Release/Robot_V2.axf c3a3e5728b3e60b8
15 623 7892482015765574 G:/Robot_v2/BOOT/out/Robot_V2/GD32C103CB/Release/Robot_V2.hex c3a3e5728b3e60b8
15 623 7892482015765574 G:/Robot_v2/BOOT/out/Robot_V2/GD32C103CB/Release/Robot_V2.axf.map c3a3e5728b3e60b8
1180 1399 7892482029045120 Robot_V2.Release+GD32C103CB/src/Robot_V2.Release+GD32C103CB-stamp/Robot_V2.Release+GD32C103CB-done 39cd38b08f3cacb9
1026 1180 7892482026793639 G:/Robot_v2/BOOT/tmp/Robot_V2.Release+GD32C103CB/src/Robot_V2.Release+GD32C103CB-stamp/Robot_V2.Release+GD32C103CB-test 57275ea8426097a0
15 623 7892482015765574 G:/Robot_v2/BOOT/tmp/Robot_V2.Release+GD32C103CB/src/Robot_V2.Release+GD32C103CB-stamp/Robot_V2.Release+GD32C103CB-build c3a3e5728b3e60b8
16 610 7895013364034272 G:/Robot_v2/BOOT/out/Robot_V2/GD32C103CB/Release/Robot_V2.axf c3a3e5728b3e60b8
16 610 7895013364034272 G:/Robot_v2/BOOT/out/Robot_V2/GD32C103CB/Release/Robot_V2.hex c3a3e5728b3e60b8
16 610 7895013364034272 G:/Robot_v2/BOOT/out/Robot_V2/GD32C103CB/Release/Robot_V2.axf.map c3a3e5728b3e60b8
1219 1475 7895013377912928 Robot_V2.Release+GD32C103CB/src/Robot_V2.Release+GD32C103CB-stamp/Robot_V2.Release+GD32C103CB-done 39cd38b08f3cacb9
1052 1219 7895013375379742 G:/Robot_v2/BOOT/tmp/Robot_V2.Release+GD32C103CB/src/Robot_V2.Release+GD32C103CB-stamp/Robot_V2.Release+GD32C103CB-test 57275ea8426097a0
16 610 7895013364034272 G:/Robot_v2/BOOT/tmp/Robot_V2.Release+GD32C103CB/src/Robot_V2.Release+GD32C103CB-stamp/Robot_V2.Release+GD32C103CB-build c3a3e5728b3e60b8
12517 12632 7890673384727863 G:/Robot_v2/BOOT/tmp/Robot_V2.Release+GD32C103CB/src/Robot_V2.Release+GD32C103CB-stamp/Robot_V2.Release+GD32C103CB-executes 9db191f9941f966f
623 947 7892482021845118 G:/Robot_v2/BOOT/tmp/Robot_V2.Release+GD32C103CB/src/Robot_V2.Release+GD32C103CB-stamp/Robot_V2.Release+GD32C103CB-database 206b709820348205
947 1026 7892482025079915 Robot_V2.Release+GD32C103CB/src/Robot_V2.Release+GD32C103CB-stamp/Robot_V2.Release+GD32C103CB-install 66d6e5c354af78e4
947 1026 7892482025079915 G:/Robot_v2/BOOT/tmp/Robot_V2.Release+GD32C103CB/src/Robot_V2.Release+GD32C103CB-stamp/Robot_V2.Release+GD32C103CB-install 66d6e5c354af78e4
1026 1180 7892482026793639 Robot_V2.Release+GD32C103CB/src/Robot_V2.Release+GD32C103CB-stamp/Robot_V2.Release+GD32C103CB-test 57275ea8426097a0
1180 1399 7892482029045120 CMakeFiles/Robot_V2.Release+GD32C103CB-complete 39cd38b08f3cacb9
1180 1399 7892482029045120 G:/Robot_v2/BOOT/tmp/CMakeFiles/Robot_V2.Release+GD32C103CB-complete 39cd38b08f3cacb9
1180 1399 7892482029045120 G:/Robot_v2/BOOT/tmp/Robot_V2.Release+GD32C103CB/src/Robot_V2.Release+GD32C103CB-stamp/Robot_V2.Release+GD32C103CB-done 39cd38b08f3cacb9
20 595 7892485291955959 Robot_V2.Release+GD32C103CB/src/Robot_V2.Release+GD32C103CB-stamp/Robot_V2.Release+GD32C103CB-build c3a3e5728b3e60b8
20 595 7892485291955959 G:/Robot_v2/BOOT/out/Robot_V2/GD32C103CB/Release/Robot_V2.bin c3a3e5728b3e60b8
20 595 7892485291955959 G:/Robot_v2/BOOT/out/Robot_V2/GD32C103CB/Release/Robot_V2.axf c3a3e5728b3e60b8
20 595 7892485291955959 G:/Robot_v2/BOOT/out/Robot_V2/GD32C103CB/Release/Robot_V2.hex c3a3e5728b3e60b8
20 595 7892485291955959 G:/Robot_v2/BOOT/out/Robot_V2/GD32C103CB/Release/Robot_V2.axf.map c3a3e5728b3e60b8
20 595 7892485291955959 G:/Robot_v2/BOOT/tmp/Robot_V2.Release+GD32C103CB/src/Robot_V2.Release+GD32C103CB-stamp/Robot_V2.Release+GD32C103CB-build c3a3e5728b3e60b8
595 948 7892485297714195 Robot_V2.Release+GD32C103CB/src/Robot_V2.Release+GD32C103CB-stamp/Robot_V2.Release+GD32C103CB-database 206b709820348205
595 948 7892485297714195 G:/Robot_v2/BOOT/tmp/Robot_V2.Release+GD32C103CB/src/Robot_V2.Release+GD32C103CB-stamp/Robot_V2.Release+GD32C103CB-database 206b709820348205
948 1033 7892485301239675 Robot_V2.Release+GD32C103CB/src/Robot_V2.Release+GD32C103CB-stamp/Robot_V2.Release+GD32C103CB-install 66d6e5c354af78e4
948 1033 7892485301239675 G:/Robot_v2/BOOT/tmp/Robot_V2.Release+GD32C103CB/src/Robot_V2.Release+GD32C103CB-stamp/Robot_V2.Release+GD32C103CB-install 66d6e5c354af78e4
1033 1192 7892485303119609 Robot_V2.Release+GD32C103CB/src/Robot_V2.Release+GD32C103CB-stamp/Robot_V2.Release+GD32C103CB-test 57275ea8426097a0
1033 1192 7892485303119609 G:/Robot_v2/BOOT/tmp/Robot_V2.Release+GD32C103CB/src/Robot_V2.Release+GD32C103CB-stamp/Robot_V2.Release+GD32C103CB-test 57275ea8426097a0
1192 1411 7892485305284877 CMakeFiles/Robot_V2.Release+GD32C103CB-complete 39cd38b08f3cacb9
1192 1411 7892485305284877 Robot_V2.Release+GD32C103CB/src/Robot_V2.Release+GD32C103CB-stamp/Robot_V2.Release+GD32C103CB-done 39cd38b08f3cacb9
1192 1411 7892485305284877 G:/Robot_v2/BOOT/tmp/CMakeFiles/Robot_V2.Release+GD32C103CB-complete 39cd38b08f3cacb9
1192 1411 7892485305284877 G:/Robot_v2/BOOT/tmp/Robot_V2.Release+GD32C103CB/src/Robot_V2.Release+GD32C103CB-stamp/Robot_V2.Release+GD32C103CB-done 39cd38b08f3cacb9
611 965 7895013369978332 G:/Robot_v2/BOOT/tmp/Robot_V2.Release+GD32C103CB/src/Robot_V2.Release+GD32C103CB-stamp/Robot_V2.Release+GD32C103CB-database 206b709820348205
965 1052 7895013373522590 Robot_V2.Release+GD32C103CB/src/Robot_V2.Release+GD32C103CB-stamp/Robot_V2.Release+GD32C103CB-install 66d6e5c354af78e4
965 1052 7895013373522590 G:/Robot_v2/BOOT/tmp/Robot_V2.Release+GD32C103CB/src/Robot_V2.Release+GD32C103CB-stamp/Robot_V2.Release+GD32C103CB-install 66d6e5c354af78e4
1052 1219 7895013375379742 Robot_V2.Release+GD32C103CB/src/Robot_V2.Release+GD32C103CB-stamp/Robot_V2.Release+GD32C103CB-test 57275ea8426097a0
1219 1475 7895013377912928 CMakeFiles/Robot_V2.Release+GD32C103CB-complete 39cd38b08f3cacb9
1219 1475 7895013377912928 G:/Robot_v2/BOOT/tmp/CMakeFiles/Robot_V2.Release+GD32C103CB-complete 39cd38b08f3cacb9
1219 1475 7895013377912928 G:/Robot_v2/BOOT/tmp/Robot_V2.Release+GD32C103CB/src/Robot_V2.Release+GD32C103CB-stamp/Robot_V2.Release+GD32C103CB-done 39cd38b08f3cacb9
25 646 7895017860180482 Robot_V2.Release+GD32C103CB/src/Robot_V2.Release+GD32C103CB-stamp/Robot_V2.Release+GD32C103CB-build c3a3e5728b3e60b8
25 646 7895017860180482 G:/Robot_v2/BOOT/out/Robot_V2/GD32C103CB/Release/Robot_V2.bin c3a3e5728b3e60b8
25 646 7895017860180482 G:/Robot_v2/BOOT/out/Robot_V2/GD32C103CB/Release/Robot_V2.axf c3a3e5728b3e60b8
25 646 7895017860180482 G:/Robot_v2/BOOT/out/Robot_V2/GD32C103CB/Release/Robot_V2.hex c3a3e5728b3e60b8
25 646 7895017860180482 G:/Robot_v2/BOOT/out/Robot_V2/GD32C103CB/Release/Robot_V2.axf.map c3a3e5728b3e60b8
25 646 7895017860180482 G:/Robot_v2/BOOT/tmp/Robot_V2.Release+GD32C103CB/src/Robot_V2.Release+GD32C103CB-stamp/Robot_V2.Release+GD32C103CB-build c3a3e5728b3e60b8
646 1016 7895017866381069 Robot_V2.Release+GD32C103CB/src/Robot_V2.Release+GD32C103CB-stamp/Robot_V2.Release+GD32C103CB-database 206b709820348205
646 1016 7895017866381069 G:/Robot_v2/BOOT/tmp/Robot_V2.Release+GD32C103CB/src/Robot_V2.Release+GD32C103CB-stamp/Robot_V2.Release+GD32C103CB-database 206b709820348205
1016 1107 7895017870088090 Robot_V2.Release+GD32C103CB/src/Robot_V2.Release+GD32C103CB-stamp/Robot_V2.Release+GD32C103CB-install 66d6e5c354af78e4
1016 1107 7895017870088090 G:/Robot_v2/BOOT/tmp/Robot_V2.Release+GD32C103CB/src/Robot_V2.Release+GD32C103CB-stamp/Robot_V2.Release+GD32C103CB-install 66d6e5c354af78e4
1107 1282 7895017872033117 Robot_V2.Release+GD32C103CB/src/Robot_V2.Release+GD32C103CB-stamp/Robot_V2.Release+GD32C103CB-test 57275ea8426097a0
1107 1282 7895017872033117 G:/Robot_v2/BOOT/tmp/Robot_V2.Release+GD32C103CB/src/Robot_V2.Release+GD32C103CB-stamp/Robot_V2.Release+GD32C103CB-test 57275ea8426097a0
1282 1534 7895017874612525 CMakeFiles/Robot_V2.Release+GD32C103CB-complete 39cd38b08f3cacb9
1282 1534 7895017874612525 Robot_V2.Release+GD32C103CB/src/Robot_V2.Release+GD32C103CB-stamp/Robot_V2.Release+GD32C103CB-done 39cd38b08f3cacb9
1282 1534 7895017874612525 G:/Robot_v2/BOOT/tmp/CMakeFiles/Robot_V2.Release+GD32C103CB-complete 39cd38b08f3cacb9
1282 1534 7895017874612525 G:/Robot_v2/BOOT/tmp/Robot_V2.Release+GD32C103CB/src/Robot_V2.Release+GD32C103CB-stamp/Robot_V2.Release+GD32C103CB-done 39cd38b08f3cacb9
BIN
View File
Binary file not shown.
+48 -29
View File
@@ -1,44 +1,63 @@
# ninja log v6
11 3992 7892480307748158 CMakeFiles/Group_Source_Files.dir/G_/Robot_v2/BOOT/Robot_V2/main.o a1e7d66abb20e63f
11 322 7891598951572010 CMakeFiles/Group_sys.dir/G_/Robot_v2/BOOT/Robot_V2/sys/systick.o 90049e3a9997d47e
62 322 7891598952075669 CMakeFiles/GigaDevice_Device_GD32C10x_StdPeripherals_PMU_1_0_0.dir/G_/Robot_v2/BOOT/Robot_V2/RTE/Device/GD32C103CB/gd32c10x_pmu.o 90d7d435f1eb4630
8 429 7891598951546143 CMakeFiles/Group_Source_Files.dir/G_/Robot_v2/BOOT/Robot_V2/sys/aes128.o de648e3137990e90
11 153 7895004933873799 CMakeFiles/Group_sys.dir/G_/Robot_v2/BOOT/Robot_V2/sys/systick.o 90049e3a9997d47e
12 140 7895004222602512 CMakeFiles/Group_Source_Files.dir/G_/Robot_v2/BOOT/Robot_V2/main.o a1e7d66abb20e63f
15 248 7894986578859319 CMakeFiles/Group_Source_Files.dir/G_/Robot_v2/BOOT/Robot_V2/sys/aes128.o de648e3137990e90
25 291 7891598951708147 CMakeFiles/GigaDevice_Device_EVAL_GD32C10x_1_0_0.dir/G_/Robot_v2/BOOT/Robot_V2/RTE/Device/GD32C103CB/gd32c10x_eval.o 9a409ccbbaf0b506
36 291 7891598951814065 CMakeFiles/GigaDevice_Device_GD32C10x_StdPeripherals_DBG_1_0_0.dir/G_/Robot_v2/BOOT/Robot_V2/RTE/Device/GD32C103CB/gd32c10x_dbg.o afbddcf2f39ba5cd
15 163 7892480350876876 G:/Robot_v2/BOOT/tmp/1/CMakeFiles/database cd32a3f4a99f5b2a
32 281 7891598951785818 CMakeFiles/GigaDevice_Device_GD32C10x_StdPeripherals_CRC_1_0_0.dir/G_/Robot_v2/BOOT/Robot_V2/RTE/Device/GD32C103CB/gd32c10x_crc.o 67890dbd6b26def8
62 322 7891598952075669 CMakeFiles/GigaDevice_Device_GD32C10x_StdPeripherals_PMU_1_0_0.dir/G_/Robot_v2/BOOT/Robot_V2/RTE/Device/GD32C103CB/gd32c10x_pmu.o 90d7d435f1eb4630
15 187 7895004938817331 G:/Robot_v2/BOOT/tmp/1/CMakeFiles/database cd32a3f4a99f5b2a
15 253 7892513536767814 CMakeFiles/GigaDevice_Device_GD32C10x_StdPeripherals_CRC_1_0_0.dir/G_/Robot_v2/BOOT/Robot_V2/RTE/Device/GD32C103CB/gd32c10x_crc.o 67890dbd6b26def8
95 288 7890673377735646 CMakeFiles/GigaDevice_Device_Startup_1_0_0.dir/G_/Robot_v2/BOOT/Robot_V2/RTE/Device/GD32C103CB/startup_gd32c10x.o 7333d2a666947fb3
43 285 7891598951884515 CMakeFiles/GigaDevice_Device_GD32C10x_StdPeripherals_EXTI_1_0_0.dir/G_/Robot_v2/BOOT/Robot_V2/RTE/Device/GD32C103CB/gd32c10x_exti.o dc69558be82ddab3
18 281 7895000588759319 CMakeFiles/Group_sys.dir/G_/Robot_v2/BOOT/Robot_V2/sys/initial.o 671120909b55a6ec
51 321 7891598951964792 CMakeFiles/GigaDevice_Device_GD32C10x_StdPeripherals_FWDGT_1_0_0.dir/G_/Robot_v2/BOOT/Robot_V2/RTE/Device/GD32C103CB/gd32c10x_fwdgt.o 77d2407664c0b50e
11 147 7892468468738191 CMakeFiles/Group_sys.dir/G_/Robot_v2/BOOT/Robot_V2/sys/initial.o 671120909b55a6ec
58 306 7891598952039121 CMakeFiles/GigaDevice_Device_GD32C10x_StdPeripherals_MISC_1_0_0.dir/G_/Robot_v2/BOOT/Robot_V2/RTE/Device/GD32C103CB/gd32c10x_misc.o 249b986db23681a2
72 325 7891598952184604 CMakeFiles/GigaDevice_Device_Startup_1_0_0.dir/G_/Robot_v2/BOOT/Robot_V2/RTE/Device/GD32C103CB/system_gd32c10x.o 59beee78be430f18
27 283 7894990979359886 CMakeFiles/GigaDevice_Device_Startup_1_0_0.dir/G_/Robot_v2/BOOT/Robot_V2/RTE/Device/GD32C103CB/system_gd32c10x.o 59beee78be430f18
54 338 7891598952001653 CMakeFiles/GigaDevice_Device_GD32C10x_StdPeripherals_GPIO_1_0_0.dir/G_/Robot_v2/BOOT/Robot_V2/RTE/Device/GD32C103CB/gd32c10x_gpio.o 54f1765925ee6320
39 340 7891598951846954 CMakeFiles/GigaDevice_Device_GD32C10x_StdPeripherals_DMA_1_0_0.dir/G_/Robot_v2/BOOT/Robot_V2/RTE/Device/GD32C103CB/gd32c10x_dma.o d976b2f727d5d643
68 335 7891598952142156 CMakeFiles/GigaDevice_Device_GD32C10x_StdPeripherals_USART_1_0_0.dir/G_/Robot_v2/BOOT/Robot_V2/RTE/Device/GD32C103CB/gd32c10x_usart.o 25d66ba79c0b0dee
32 197 7892467927615674 CMakeFiles/Group_device.dir/G_/Robot_v2/BOOT/Robot_V2/device/Can.o 45fb475e6531516a
11 205 7892480664196713 CMakeFiles/Group_sys.dir/G_/Robot_v2/BOOT/Robot_V2/sys/OTA.o d3ceecf5eb5da62f
24 307 7895000588819409 CMakeFiles/Group_device.dir/G_/Robot_v2/BOOT/Robot_V2/device/Can.o 45fb475e6531516a
65 372 7891598952109689 CMakeFiles/GigaDevice_Device_GD32C10x_StdPeripherals_RCU_1_0_0.dir/G_/Robot_v2/BOOT/Robot_V2/RTE/Device/GD32C103CB/gd32c10x_rcu.o 8a38055acf3e9414
12 220 7895005693998201 CMakeFiles/Group_sys.dir/G_/Robot_v2/BOOT/Robot_V2/sys/OTA.o d3ceecf5eb5da62f
29 390 7891598951738894 CMakeFiles/GigaDevice_Device_GD32C10x_StdPeripherals_CAN_1_0_0.dir/G_/Robot_v2/BOOT/Robot_V2/RTE/Device/GD32C103CB/gd32c10x_can.o faa264156fd20815
21 426 7891478081486856 CMakeFiles/Group_sys.dir/G_/Robot_v2/BOOT/Robot_V2/sys/flash.o b46fd0fc5d6515ff
47 462 7891598951927716 CMakeFiles/GigaDevice_Device_GD32C10x_StdPeripherals_FMC_1_0_0.dir/G_/Robot_v2/BOOT/Robot_V2/RTE/Device/GD32C103CB/gd32c10x_fmc.o bf3ed2250296db4a
205 433 7892480667690259 G:/Robot_v2/BOOT/out/Robot_V2/GD32C103CB/Release/Robot_V2.axf f808250924f73eee
205 433 7892480667690259 ac6_linker_script.sct f808250924f73eee
205 433 7892480667690259 G:/Robot_v2/BOOT/tmp/1/ac6_linker_script.sct f808250924f73eee
15 163 7892480350876876 CMakeFiles/database cd32a3f4a99f5b2a
220 479 7895005697805054 G:/Robot_v2/BOOT/out/Robot_V2/GD32C103CB/Release/Robot_V2.axf f808250924f73eee
220 479 7895005697805054 ac6_linker_script.sct f808250924f73eee
220 479 7895005697805054 G:/Robot_v2/BOOT/tmp/1/ac6_linker_script.sct f808250924f73eee
15 187 7895004938817331 CMakeFiles/database cd32a3f4a99f5b2a
14 5581 7891491160826172 build.ninja d9a30fa45660d8a5
15 158 7892480669577242 CMakeFiles/database cd32a3f4a99f5b2a
15 158 7892480669577242 G:/Robot_v2/BOOT/tmp/1/CMakeFiles/database cd32a3f4a99f5b2a
11 172 7892482016805059 CMakeFiles/Group_Source_Files.dir/G_/Robot_v2/BOOT/Robot_V2/main.o a1e7d66abb20e63f
14 228 7892482016845060 CMakeFiles/Group_sys.dir/G_/Robot_v2/BOOT/Robot_V2/sys/OTA.o d3ceecf5eb5da62f
228 451 7892482020528367 G:/Robot_v2/BOOT/out/Robot_V2/GD32C103CB/Release/Robot_V2.axf f808250924f73eee
228 451 7892482020528367 ac6_linker_script.sct f808250924f73eee
228 451 7892482020528367 G:/Robot_v2/BOOT/tmp/1/ac6_linker_script.sct f808250924f73eee
16 166 7892482022420515 CMakeFiles/database cd32a3f4a99f5b2a
16 166 7892482022420515 G:/Robot_v2/BOOT/tmp/1/CMakeFiles/database cd32a3f4a99f5b2a
12 161 7892485293122981 CMakeFiles/Group_Source_Files.dir/G_/Robot_v2/BOOT/Robot_V2/main.o a1e7d66abb20e63f
161 401 7892485296253827 G:/Robot_v2/BOOT/out/Robot_V2/GD32C103CB/Release/Robot_V2.axf f808250924f73eee
161 401 7892485296253827 ac6_linker_script.sct f808250924f73eee
161 401 7892485296253827 G:/Robot_v2/BOOT/tmp/1/ac6_linker_script.sct f808250924f73eee
19 187 7892485298385558 CMakeFiles/database cd32a3f4a99f5b2a
19 187 7892485298385558 G:/Robot_v2/BOOT/tmp/1/CMakeFiles/database cd32a3f4a99f5b2a
19 206 7895005700071618 CMakeFiles/database cd32a3f4a99f5b2a
19 206 7895005700071618 G:/Robot_v2/BOOT/tmp/1/CMakeFiles/database cd32a3f4a99f5b2a
10 211 7895007152465347 CMakeFiles/Group_Source_Files.dir/G_/Robot_v2/BOOT/Robot_V2/main.o a1e7d66abb20e63f
14 300 7895007152505353 CMakeFiles/Group_sys.dir/G_/Robot_v2/BOOT/Robot_V2/sys/OTA.o d3ceecf5eb5da62f
301 523 7895007156836378 G:/Robot_v2/BOOT/out/Robot_V2/GD32C103CB/Release/Robot_V2.axf f808250924f73eee
301 523 7895007156836378 ac6_linker_script.sct f808250924f73eee
301 523 7895007156836378 G:/Robot_v2/BOOT/tmp/1/ac6_linker_script.sct f808250924f73eee
17 198 7895007158950261 CMakeFiles/database cd32a3f4a99f5b2a
17 198 7895007158950261 G:/Robot_v2/BOOT/tmp/1/CMakeFiles/database cd32a3f4a99f5b2a
2 194 7895008710790451 CMakeFiles/database cd32a3f4a99f5b2a
2 194 7895008710790451 G:/Robot_v2/BOOT/tmp/1/CMakeFiles/database cd32a3f4a99f5b2a
2 201 7895009096657921 CMakeFiles/database cd32a3f4a99f5b2a
2 201 7895009096657921 G:/Robot_v2/BOOT/tmp/1/CMakeFiles/database cd32a3f4a99f5b2a
10 148 7895011684472706 CMakeFiles/Group_Source_Files.dir/G_/Robot_v2/BOOT/Robot_V2/main.o a1e7d66abb20e63f
14 201 7895011684512705 CMakeFiles/Group_sys.dir/G_/Robot_v2/BOOT/Robot_V2/sys/OTA.o d3ceecf5eb5da62f
201 421 7895011687930635 G:/Robot_v2/BOOT/out/Robot_V2/GD32C103CB/Release/Robot_V2.axf f808250924f73eee
201 421 7895011687930635 ac6_linker_script.sct f808250924f73eee
201 421 7895011687930635 G:/Robot_v2/BOOT/tmp/1/ac6_linker_script.sct f808250924f73eee
14 188 7895011689951545 CMakeFiles/database cd32a3f4a99f5b2a
14 188 7895011689951545 G:/Robot_v2/BOOT/tmp/1/CMakeFiles/database cd32a3f4a99f5b2a
11 145 7895013365288308 CMakeFiles/Group_Source_Files.dir/G_/Robot_v2/BOOT/Robot_V2/main.o a1e7d66abb20e63f
15 199 7895013365328307 CMakeFiles/Group_sys.dir/G_/Robot_v2/BOOT/Robot_V2/sys/OTA.o d3ceecf5eb5da62f
199 409 7895013368607659 G:/Robot_v2/BOOT/out/Robot_V2/GD32C103CB/Release/Robot_V2.axf f808250924f73eee
199 409 7895013368607659 ac6_linker_script.sct f808250924f73eee
199 409 7895013368607659 G:/Robot_v2/BOOT/tmp/1/ac6_linker_script.sct f808250924f73eee
14 182 7895013370499091 CMakeFiles/database cd32a3f4a99f5b2a
14 182 7895013370499091 G:/Robot_v2/BOOT/tmp/1/CMakeFiles/database cd32a3f4a99f5b2a
11 159 7895017861448755 CMakeFiles/Group_Source_Files.dir/G_/Robot_v2/BOOT/Robot_V2/main.o a1e7d66abb20e63f
16 215 7895017861494273 CMakeFiles/Group_sys.dir/G_/Robot_v2/BOOT/Robot_V2/sys/OTA.o d3ceecf5eb5da62f
216 432 7895017865000695 G:/Robot_v2/BOOT/out/Robot_V2/GD32C103CB/Release/Robot_V2.axf f808250924f73eee
216 432 7895017865000695 ac6_linker_script.sct f808250924f73eee
216 432 7895017865000695 G:/Robot_v2/BOOT/tmp/1/ac6_linker_script.sct f808250924f73eee
13 193 7895017866924446 CMakeFiles/database cd32a3f4a99f5b2a
13 193 7895017866924446 G:/Robot_v2/BOOT/tmp/1/CMakeFiles/database cd32a3f4a99f5b2a