增加了BootPara结构体的参数信息

This commit is contained in:
2026-05-11 10:02:31 +08:00
parent 16f6ec78e5
commit 2b23e8f0ed
3 changed files with 49 additions and 7 deletions
+20 -2
View File
@@ -43,7 +43,20 @@ typedef enum {
MASTER = 0x000000, //0x000000 主设备
SUBSET = 0x800000, //0x800000 子设备
}DEVICE_SIGN_M;
/*Lora频率:433100000ul + 200000*N */
typedef enum {
CH0 = (433100000ul + 0), //测试频率
CH1 = (433100000ul + 200000),
CH2 = (433100000ul + 400000),
CH3 = (433100000ul + 600000),
CH4 = (433100000ul + 800000),
CH5 = (433100000ul + 1000000),
CH6 = (433100000ul + 1200000),
CH7 = (433100000ul + 1400000),
CH8 = (433100000ul + 1600000),
CH9 = (433100000ul + 1800000),
CH10 = (433100000ul + 2000000),
}LORA_FREQ_M;
/*设备类型选择*/
#define DEVICE_TYPE LASER_TRACING
/*通讯方式选择*/
@@ -51,7 +64,9 @@ typedef enum {
/*设备标志选择*/
#define DEVICE_SIGN MASTER
/*设备地址编号设置*/
#define ADD_NUMBER (0x000000 + DEVICE_SIGN) //数字部分对应唯一地址编号
#define ADD_NUMBER (0x000023 + DEVICE_SIGN) //数字部分对应唯一地址编号
/*Lora频率配置*/
#define LORA_FREQ CH1
#if(DEVICE_TYPE == LASER_TRACING)
#define LP_UART_CH 0
@@ -228,6 +243,9 @@ typedef struct {
uint32_t PackageCnt;
uint32_t AppSize;
uint32_t Crc32Check;
uint32_t FirstRunFlag;//第一次运行
uint8_t DevMac[6];//设备MAC
uint32_t LoraFreq;//Lora频率
}BootPara_t, *BootPara;
typedef void (*ReadPara)(BootPara_t rPara);
+15 -1
View File
@@ -259,7 +259,21 @@ int32_t main(void)
InitCrc32Table(pdwCrc32Tbl);
ReadBootPara(&BL.Para);
if(BL.Para.AppFlag == APP_START_FLAG) {
if((BL.Para.DevMac[0] | (BL.Para.DevMac[1] << 8)) != DEVICE_TYPE){ //设备类型错误,清除升级参数
if(BL.Para.FirstRunFlag == 0xFFFFFFFF) {
BL.Status = BL_START_APP;
}
else {
BL.Status = BL_IDLE;
}
BL.Para.AppFlag = 0;
BL.Para.UpdateFlag = 0;
BL.Para.FirstRunFlag = 0;
memcpy(&BL.Para.DevMac, &DevMac[0], 6);
BL.Para.LoraFreq = LORA_FREQ;
WriteBootPara(&BL.Para);
}
else if(BL.Para.AppFlag == APP_START_FLAG) {
BL.Status = BL_START_APP;
}
else if(BL.Para.UpdateFlag == APP_UPDATE_FLAG) {