F1CTL/Core/Inc/flash_config.h
2024-12-26 14:36:38 +08:00

25 lines
770 B
C

#ifndef FLASH_CONFIG_H
#define FLASH_CONFIG_H
#include "main.h"
#include "wizchip_conf.h"
#include "protocol.h"
// 定义配置结构体
typedef struct {
uint32_t magic; // 魔数,用于验证配置有效性
wiz_NetInfo net_config; // 网络配置
DeviceParam_t device_param; // 设备参数
uint32_t checksum; // 校验和
} FlashConfig_t;
// 配置存储的Flash页地址 (使用最后一页)
#define FLASH_CONFIG_PAGE_ADDR (FLASH_BASE + (FLASH_PAGE_SIZE * 63)) // STM32F103 64KB Flash
#define FLASH_CONFIG_MAGIC 0xA5A5A5A5
// 函数声明
HAL_StatusTypeDef Flash_Config_Save(FlashConfig_t *config);
HAL_StatusTypeDef Flash_Config_Load(FlashConfig_t *config);
void Flash_Config_SetDefault(FlashConfig_t *config);
#endif