26 lines
842 B
C++
26 lines
842 B
C++
#ifndef __CONFIG_H__
|
|
#define __CONFIG_H__
|
|
#include "stdint.h"
|
|
|
|
// Flash分区配置
|
|
constexpr u32 BOOTLOADER_SIZE = 0x4000; // 16KB
|
|
constexpr u32 APP_START_ADDR = 0x08004000; // APP起始地址
|
|
constexpr u32 APP2_START_ADDR = 0x08010000; // APP2起始地址
|
|
constexpr u32 APP_MAX_SIZE = 0xC000; // 48KB
|
|
constexpr u32 FMC_PAGE_SIZE = 0x400; // 1KB
|
|
|
|
// CANFD配置
|
|
constexpr u32 CANFD_OTA_REQ_ID = 0x00000100;
|
|
constexpr u32 CANFD_OTA_DATA_ID = 0x00000101;
|
|
constexpr u32 CANFD_OTA_ACK_ID = 0x00000102;
|
|
constexpr u32 CANFD_OTA_WAIT_ID = 0x00000103;
|
|
|
|
// CANFD数据段最大64字节,我们用1字节序号 + 48字节数据 + 1字节CRC校验
|
|
constexpr u32 OTA_PACKET_SIZE = 48;
|
|
typedef struct {
|
|
u32 packet_num; // 包序号
|
|
u8 data[OTA_PACKET_SIZE]; // 48字节有效数据
|
|
u32 crc32; // 简单校验
|
|
} canfd_ota_packet_t;
|
|
|
|
#endif |