1、Algorithm文件的isAllZero函数改为可改对比参数的is_all_byte

2、针对旧版本boot程序的升级兼容
This commit is contained in:
2026-05-11 18:23:00 +08:00
parent 9b06145341
commit f3205e1cf7
5 changed files with 48 additions and 22 deletions
+27 -1
View File
@@ -57,6 +57,33 @@ static void AppInit(void)
CommWay = BLPara.DevMac[2]; //本机通讯方式
DeviceSign = BLPara.DevMac[3] & 0x80; //本机设备标志
AddNumber = ((BLPara.DevMac[3] << 16)+ (BLPara.DevMac[4] << 8) + BLPara.DevMac[5]) - 0x800000; //本机地址编号,数字部分对应唯一地址编号
if(is_all_byte(LocalMAC, 6, 0xFF) == true)/*针对旧版本boot程序的升级兼容*/
{
LocalType = LASER_TRACING; //本机设备类型
CommWay = LORA; //本机通讯方式
DeviceSign = MASTER; //本机设备标志
AddNumber = 0x000022 + DeviceSign;//本机地址编号,数字部分对应唯一地址编号
LocalMAC[0] = LocalType & 0xFF; //本机MAC地址
LocalMAC[1] = (LocalType >> 8) & 0xFF;
LocalMAC[2] = CommWay;
LocalMAC[3] = (AddNumber >> 16) & 0xFF;
LocalMAC[4] = (AddNumber >> 8) & 0xFF;
LocalMAC[5] = AddNumber & 0xFF;
if(AddNumber <= 0x14)
{
SX1276LoRaSetFreqHz(CH1); //Lora频率:433100000ul + 200000*N
BLPara.LoraFreq = CH1;
memcpy(&BLPara.DevMac[0], LocalMAC, 6);
}
else if(AddNumber > 0x14 && AddNumber < 0x23)
{
SX1276LoRaSetFreqHz(CH2); //Lora频率:433100000ul + 200000*N
BLPara.LoraFreq = CH2;
memcpy(&BLPara.DevMac[0], LocalMAC, 6);
}
}
if(App.Para.FactoryFlag != 0x00)
{
App.Para.FactoryFlag = 0x00;
@@ -64,7 +91,6 @@ static void AppInit(void)
App.Para.CaliPara.PitchZero = 0;
App.Para.CaliPara.RollZero = 0;
App.Para.CaliPara.YawZero = 0;
SAVE_APP_PARA((uint32_t *)&App.Para);
}
#elif
LocalType = LASER_TRACING; //本机设备类型