差异
This commit is contained in:
@@ -14,49 +14,12 @@ const u8 MAPDefault[] = {
|
||||
MAP36_DEFAULT, MAP37_DEFAULT, MAP38_DEFAULT, MAP39_DEFAULT, MAP40_DEFAULT,
|
||||
MAP41_DEFAULT, MAP42_DEFAULT, MAP43_DEFAULT, MAP44_DEFAULT, MAP45_DEFAULT,
|
||||
MAP46_DEFAULT, MAP47_DEFAULT, MAP48_DEFAULT };
|
||||
/*
|
||||
//------------------------------------------------------------------------------
|
||||
//const unsigned char BusRegLen[] = {
|
||||
// STD_30_LEN, STD_31_LEN, STD_32_LEN, STD_33_LEN, STD_34_LEN, STD_35_LEN, STD_36_LEN, STD_37_LEN,
|
||||
// STD_38_LEN, STD_39_LEN, STD_3A_LEN, STD_3B_LEN, STD_3C_LEN, STD_3D_LEN, STD_3E_LEN, STD_3F_LEN,
|
||||
//
|
||||
// STD_40_LEN, STD_41_LEN, STD_42_LEN, STD_43_LEN, STD_44_LEN, STD_45_LEN, STD_46_LEN, STD_47_LEN,
|
||||
// STD_48_LEN, STD_49_LEN, STD_4A_LEN, STD_4B_LEN, STD_4C_LEN, STD_4D_LEN, STD_4E_LEN, STD_4F_LEN,
|
||||
//
|
||||
// STD_50_LEN, STD_51_LEN, STD_52_LEN, STD_53_LEN, STD_54_LEN, STD_55_LEN, STD_56_LEN, STD_57_LEN,
|
||||
// STD_58_LEN, STD_59_LEN, STD_5A_LEN, STD_5B_LEN, STD_5C_LEN, STD_5D_LEN, STD_5E_LEN, STD_5F_LEN,
|
||||
//
|
||||
// STD_60_LEN, STD_61_LEN, STD_62_LEN, STD_63_LEN, STD_64_LEN, STD_65_LEN, STD_66_LEN, STD_67_LEN,
|
||||
// STD_68_LEN, STD_69_LEN, STD_6A_LEN, STD_6B_LEN, STD_6C_LEN, STD_6D_LEN, STD_6E_LEN, STD_6F_LEN,
|
||||
//
|
||||
// STD_70_LEN, STD_71_LEN, STD_72_LEN, STD_73_LEN, STD_74_LEN, STD_75_LEN, STD_76_LEN, STD_77_LEN,
|
||||
// STD_78_LEN, STD_79_LEN, STD_7A_LEN, STD_7B_LEN, STD_7C_LEN, STD_7D_LEN, STD_7E_LEN, STD_7F_LEN,
|
||||
//
|
||||
// STD_80_LEN, STD_81_LEN, STD_82_LEN, STD_83_LEN, STD_84_LEN, STD_85_LEN, STD_86_LEN, STD_87_LEN,
|
||||
// STD_88_LEN, STD_89_LEN, STD_8A_LEN, STD_8B_LEN, STD_8C_LEN, STD_8D_LEN, STD_8E_LEN, STD_8F_LEN,
|
||||
//
|
||||
// STD_90_LEN, STD_91_LEN, STD_92_LEN, STD_93_LEN, STD_94_LEN, STD_95_LEN, STD_96_LEN, STD_97_LEN,
|
||||
// STD_98_LEN, STD_99_LEN, STD_9A_LEN, STD_9B_LEN, STD_9C_LEN, STD_9D_LEN, STD_9E_LEN, STD_9F_LEN,
|
||||
//
|
||||
// STD_A0_LEN, STD_A1_LEN, STD_A2_LEN, STD_A3_LEN, STD_A4_LEN, STD_A5_LEN, STD_A6_LEN, STD_A7_LEN,
|
||||
// STD_A8_LEN, STD_A9_LEN, STD_AA_LEN, STD_AB_LEN, STD_AC_LEN, STD_AD_LEN, STD_AE_LEN, STD_AF_LEN,
|
||||
//
|
||||
// STD_B0_LEN, STD_B1_LEN, STD_B2_LEN, STD_B3_LEN, STD_B4_LEN, STD_B5_LEN, STD_B6_LEN, STD_B7_LEN,
|
||||
// STD_B8_LEN, STD_B9_LEN, STD_BA_LEN, STD_BB_LEN, STD_BC_LEN, STD_BD_LEN, STD_BE_LEN, STD_BF_LEN,
|
||||
//
|
||||
// STD_C0_LEN, STD_C1_LEN, STD_C2_LEN, STD_C3_LEN, STD_C4_LEN, STD_C5_LEN, STD_C6_LEN, STD_C7_LEN,
|
||||
// STD_C8_LEN, STD_C9_LEN, STD_CA_LEN, STD_CB_LEN, STD_CC_LEN, STD_CD_LEN, STD_CE_LEN, STD_CF_LEN,
|
||||
//
|
||||
// STD_D0_LEN, STD_D1_LEN, STD_D2_LEN, STD_D3_LEN, STD_D4_LEN, STD_D5_LEN, STD_D6_LEN, STD_D7_LEN,
|
||||
// STD_D8_LEN, STD_D9_LEN, STD_DA_LEN, STD_DB_LEN, STD_DC_LEN, STD_DD_LEN, STD_DE_LEN, STD_DF_LEN,
|
||||
//
|
||||
// STD_E0_LEN, STD_E1_LEN, STD_E2_LEN, STD_E3_LEN, STD_E4_LEN, STD_E5_LEN, STD_E6_LEN, STD_E7_LEN,
|
||||
// STD_E8_LEN, STD_E9_LEN, STD_EA_LEN, STD_EB_LEN, STD_EC_LEN, STD_ED_LEN, STD_EE_LEN, STD_EF_LEN,
|
||||
//
|
||||
// STD_F0_LEN, STD_F1_LEN, STD_F2_LEN, STD_F3_LEN, STD_F4_LEN, STD_F5_LEN, STD_F6_LEN, STD_F7_LEN,
|
||||
// STD_F8_LEN, STD_F9_LEN, STD_FA_LEN, STD_FB_LEN, STD_FC_LEN, STD_FD_LEN, STD_FE_LEN, STD_FF_LEN,
|
||||
//};
|
||||
*/
|
||||
|
||||
//******************************************************************************
|
||||
__weak void CalibrateGasOffset(void) {}
|
||||
|
||||
|
||||
//******************************************************************************
|
||||
|
||||
//******************************************************************************
|
||||
u16 SetupResponseTimeIndex(u16 response, u16 responseDefalt)
|
||||
@@ -86,12 +49,12 @@ u16 SetupResponseTime(u16 response, u16 responseDefalt)
|
||||
//******************************************************************************
|
||||
void InitUseBusParameter(void)
|
||||
{
|
||||
unsigned int I;
|
||||
u16 I;
|
||||
|
||||
DataPoint = &MAPPoint1;
|
||||
for(I=0; I<STD_MAP_MAX; I++)
|
||||
{
|
||||
*DataPoint = ReadParameterFromMemory(MAP_SET1 + I*MAP_SET_WIDTH, MAP_SET_WIDTH, (unsigned int)MAPDefault[I]);
|
||||
*DataPoint = ReadShortParameterFromMemory(MAP_SET1 + I*REG_WORD_WIDTH, (u16)MAPDefault[I]);
|
||||
DataPoint--;
|
||||
}
|
||||
}
|
||||
@@ -99,14 +62,15 @@ void InitUseBusParameter(void)
|
||||
//******************************************************************************
|
||||
void WriteInitUseBusParameter(void)
|
||||
{
|
||||
unsigned int I;
|
||||
u16 I;
|
||||
|
||||
DataPoint = &MAPPoint1;
|
||||
for(I=0; I<STD_MAP_MAX; I++)
|
||||
{
|
||||
*DataPoint = (unsigned int)MAPDefault[I];
|
||||
tempL.Word[0] = (unsigned int)MAPDefault[I];
|
||||
WriteParameterToEEPROM(MAP_SET1 + I*MAP_SET_WIDTH, MAP_SET_WIDTH);
|
||||
*DataPoint = (u16)MAPDefault[I];
|
||||
tempL.Word[0] = (u16)MAPDefault[I];
|
||||
WriteShortParameterToMemory(MAP_SET1 + I*REG_WORD_WIDTH);
|
||||
|
||||
DataPoint--;
|
||||
}
|
||||
}
|
||||
@@ -122,13 +86,12 @@ void UserReadDataProtocol(void)
|
||||
while(MBBuf.StartAddr < STD_DCOEF_NODE1)
|
||||
{
|
||||
if(MBBuf.ByteNumber < 2) return;
|
||||
if(MBBuf.StartAddr < STD_REG_START)
|
||||
{
|
||||
if(MBBuf.StartAddr < STD_REG_START) {
|
||||
//С<><D0A1>0x30δ<30><CEB4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>λ<EFBFBD><CEBB>
|
||||
MBBuf.DataByte = DataPoint[MBBuf.StartAddr + STD_MAP_SET1];
|
||||
if(MBBuf.DataByte < STD_REG_START) tempL.Word[0] = 0;
|
||||
if(MBBuf.DataByte < STD_REG_START) tempL.Word[0] = 0;
|
||||
else if(MBBuf.DataByte < STD_DCOEF_NODE1) tempL.Word[0] = DataPoint[MBBuf.DataByte - STD_REG_START];
|
||||
else tempL.Word[0] = 0;
|
||||
else tempL.Word[0] = 0;
|
||||
}
|
||||
else tempL.Word[0] = DataPoint[MBBuf.StartAddr - STD_REG_START];
|
||||
|
||||
@@ -137,7 +100,7 @@ void UserReadDataProtocol(void)
|
||||
|
||||
MBBuf.StartAddr++;
|
||||
MBBuf.ByteNumber -= 2;
|
||||
MBBuf.DataByte = 2;
|
||||
MBBuf.DataByte = 2;
|
||||
}
|
||||
|
||||
// read record data
|
||||
@@ -236,11 +199,7 @@ void UserReadDataProtocol(void)
|
||||
default: return;
|
||||
}
|
||||
}
|
||||
|
||||
// MBBuf.RxPointer[MBBuf.Index++] = tempL.Byte[1];
|
||||
// MBBuf.RxPointer[MBBuf.Index++] = tempL.Byte[0];
|
||||
// ModbusVariablePointerDec();
|
||||
|
||||
|
||||
for(I=1; I<=MBBuf.DataByte; I++) MBBuf.RxPointer[MBBuf.Index++] = tempL.Byte[MBBuf.DataByte-I];
|
||||
ModbusVariablePointerDec();
|
||||
}
|
||||
@@ -265,7 +224,7 @@ void UserWriteDataProtocol(void)
|
||||
{
|
||||
// С<><D0A1>0x30δ<30><CEB4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>λ<EFBFBD><CEBB>
|
||||
MBBuf.DataByte = DataPoint[MBBuf.StartAddr + STD_MAP_SET1];
|
||||
if((MBBuf.DataByte < STD_REG_START) || (MBBuf.DataByte > STD_REG_START)){
|
||||
if((MBBuf.DataByte < STD_REG_START) || (MBBuf.DataByte > STD_DCOEF_NODE1)) {
|
||||
MBBuf.BusError = ILLEGAL_DATA_ADDRESS;
|
||||
return;
|
||||
}
|
||||
@@ -287,6 +246,8 @@ void UserWriteDataProtocol(void)
|
||||
#endif
|
||||
|
||||
//----------------------------------------------------------------------------
|
||||
MBBuf.DataByte = 0;
|
||||
MBBuf.StartAddr = 0;
|
||||
while(1)
|
||||
{
|
||||
if(MBBuf.BusError != 0) return; // V2004
|
||||
@@ -354,7 +315,7 @@ void UserWriteDataProtocol(void)
|
||||
|
||||
if(tmPDA > 99999999999) break;
|
||||
flowAccumulationInteger = (unsigned long int)(tmPDA/1000);
|
||||
flowAccumulationDecimal = (unsigned int)(tmPDA-(unsigned long long int)flowAccumulationInteger*1000);
|
||||
flowAccumulationDecimal = (u16)(tmPDA-(unsigned long long int)flowAccumulationInteger*1000);
|
||||
ConvertHEXToBCDArray(flowAccumulationInteger, &Dis1[ACC_INT1], 8, HIGH_FIRST);
|
||||
ConvertHEXToBCDArray(flowAccumulationDecimal, &Dis1[ACC_DOT1], 3, HIGH_FIRST);
|
||||
tmpLB = ReturnStartUnitBit(ACC_INT1);
|
||||
@@ -375,8 +336,8 @@ void UserWriteDataProtocol(void)
|
||||
#ifndef ENABLE_USER_UART
|
||||
#pragma message("[undefined] ENABLE_USER_UART")
|
||||
#elif(ENABLE_USER_UART)
|
||||
case STD_SLAVER_ID:
|
||||
FreeWriteWordByCom(&localAddress, SLAVER_ADDR, SLAVER_ADDR_WIDTH, SLAVER_ADDR_MAX, SLAVER_ADDR_MIN);
|
||||
case STD_SLAVER_ADDR:
|
||||
FreeWriteWordValidDataByCom(&localAddress, SLAVER_ADDR, SLAVER_ADDR_MAX, SLAVER_ADDR_MIN);
|
||||
if(parameterState == ABORD_OPERATION) break;
|
||||
BackupParameterToFlash();
|
||||
break;
|
||||
@@ -384,14 +345,14 @@ void UserWriteDataProtocol(void)
|
||||
#endif
|
||||
//------------------------------------------------------------------------------
|
||||
|
||||
case STD_OUT_FR_MIN:
|
||||
if(BusAdr[MBBuf.StartAddr+1] != STD_OUT_FR_MIN+1) return;
|
||||
WriteDWordByCom(&minFlowRate, MIN_FLOW, MIN_FLOW_WIDTH, maxFlowRate>>1, 0);
|
||||
case STD_OUT_MIN_FLOW:
|
||||
if(BusAdr[MBBuf.StartAddr+1] != STD_OUT_MIN_FLOW +1) return;
|
||||
WriteDWordValidDataByCom(&minFlowRate, OUT_MIN_FLOW, maxFlowRate>>1, 0);
|
||||
break;
|
||||
|
||||
case STD_OUT_FR_MAX:
|
||||
if(BusAdr[MBBuf.StartAddr+1] != STD_OUT_FR_MAX+1) return;
|
||||
WriteDWordByCom(&maxFlowRate, MAX_FLOW, MAX_FLOW_WIDTH, 0x7fffffff, 0);
|
||||
case STD_OUT_MAX_FLOW:
|
||||
if(BusAdr[MBBuf.StartAddr+1] != STD_OUT_MAX_FLOW+1) return;
|
||||
WriteDWordValidDataByCom(&maxFlowRate, OUT_MAX_FLOW, 0x7fffffff, 0);
|
||||
break;
|
||||
|
||||
//case STD_OUT_ANALOG_MIN: break;
|
||||
@@ -401,7 +362,7 @@ void UserWriteDataProtocol(void)
|
||||
#pragma message("[undefined] ENABLE_USER_GCF")
|
||||
#elif(ENABLE_USER_GCF)
|
||||
case STD_GCF:
|
||||
WriteWordByCom(&GDCFactor, GCF_B, GCF_B_WIDTH, GCF_PARAMETER_MAX, GCF_PARAMETER_MIN);
|
||||
WriteWordValidDataByCom(&GDCFactor, GCF_B, GCF_PARAMETER_MAX, GCF_PARAMETER_MIN);
|
||||
if(parameterState == ABORD_OPERATION) break;
|
||||
ComputeGCFFactor();
|
||||
break;
|
||||
@@ -409,7 +370,7 @@ void UserWriteDataProtocol(void)
|
||||
|
||||
//---------------------------------------------------------------------
|
||||
//case STD_FILTER_DEPTH: break;
|
||||
case STD_REPONSE_TIME: //WriteWordByCom(&factoryInterval, SAMPLE_PERIOD, SAMPLE_PERIOD_WIDTH, SAMPLE_PERIOD_MAX, SAMPLE_PERIOD_MIN); break;
|
||||
case STD_RESPONSE_TIME: //WriteWordByCom(&factoryInterval, SAMPLE_PERIOD, SAMPLE_PERIOD_WIDTH, SAMPLE_PERIOD_MAX, SAMPLE_PERIOD_MIN); break;
|
||||
SetWordCmdByCom(&CMDComPassword);
|
||||
if(parameterState == ABORD_OPERATION) break;
|
||||
|
||||
@@ -417,7 +378,7 @@ void UserWriteDataProtocol(void)
|
||||
if(parameterState == ABORD_OPERATION) break;
|
||||
|
||||
tempL.Word[0] = CMDComPassword;
|
||||
responseTimeIndex = (unsigned int)WriteShortParameterToEEPROM(RESPONSE_TIME, RESPONSE_TIME_WIDTH);
|
||||
responseTimeIndex = (u16)WriteShortParameterToMemory(RESPONSE_TIME);
|
||||
responseTime = SetupResponseTime(responseTimeIndex, RESPONSE_TIME_DEFAULT);
|
||||
break;
|
||||
|
||||
@@ -425,28 +386,21 @@ void UserWriteDataProtocol(void)
|
||||
#ifndef ENABLE_USER_OFFSET
|
||||
#pragma message("[undefined] ENABLE_USER_OFFSET")
|
||||
#elif(ENABLE_USER_OFFSET)
|
||||
case STD_GAS_OFFSET_C: WriteWordByCom(&offsetGas, OFFSET_GAS, OFFSET_GAS_WIDTH, OFFSET_MAX, OFFSET_MIN); break;
|
||||
case STD_GAS_OFFSET_C: WriteWordValidDataByCom(&offsetGas, GAS_OFFSET, OFFSET_MAX, OFFSET_MIN); break;
|
||||
#endif
|
||||
|
||||
//---------------------------------------------------------------------
|
||||
#ifndef ENABLE_A_TYPE_FLOWRATE
|
||||
#pragma message("[undefined] ENABLE_A_TYPE_FLOWRATE")
|
||||
#elif(ENABLE_A_TYPE_FLOWRATE)
|
||||
case STD_GAS_OFFSET_A: WriteWordByCom(&offsetGasA, OFFSET_A_GAS, OFFSET_A_GAS_WIDTH, OFFSET_A_MAX, OFFSET_A_MIN); break;
|
||||
case STD_GAS_OFFSET_A: WriteWordValidDataByCom(&offsetGasA, OFFSET_A_GAS, OFFSET_A_MAX, OFFSET_A_MIN); break;
|
||||
#endif
|
||||
|
||||
//---------------------------------------------------------------------
|
||||
// V2004
|
||||
#ifndef ENABLE_USER_SET_UNIT
|
||||
#pragma message("[undefined] ENABLE_USER_SET_UNIT")
|
||||
#elif(ENABLE_USER_SET_UNIT)
|
||||
case STD_UNIT:
|
||||
// SetWordCmdByCom(&CMDComPassword);
|
||||
// if(parameterState == ABORD_OPERATION) break;
|
||||
// if(CMDComPassword == flowUnit) break;
|
||||
// ConvertAllFlowRateAndSave(tempL.Word[0]);
|
||||
// break;
|
||||
|
||||
case STD_UNIT:
|
||||
SetWordCmdByCom(&CMDComPassword);
|
||||
if(parameterState == ABORD_OPERATION) break;
|
||||
if(CMDComPassword == flowUnit) break;
|
||||
@@ -455,9 +409,13 @@ void UserWriteDataProtocol(void)
|
||||
#endif
|
||||
|
||||
//--------------------------------------------------------------------------
|
||||
case STD_AIR_FACTOR: WriteWordByCom(&VHHParameterAir, VHH_AIR_PARA, VHH_AIR_PARA_WIDTH, 46728, 26728); break;
|
||||
case STD_FACTOR_VTH: WriteWordByCom(&VHHParameterScale, VHH_PARA_SCALE, VHH_PARA_SCALE_WIDTH, 65535, 0); break;
|
||||
|
||||
#ifndef ENABLE_GAS_RECOGNITION
|
||||
#pragma message("[undefined] ENABLE_GAS_RECOGNITION")
|
||||
#elif(ENABLE_GAS_RECOGNITION)
|
||||
case STD_AIR_FACTOR: WriteWordValidDataByCom(&airFactor, AIR_FACTOR, 46728, 26728); break;
|
||||
case STD_FACTOR_VTH: WriteWordValidDataByCom(&factorVth, FACTOR_VTH, 65535, 0); break;
|
||||
#endif
|
||||
|
||||
//--------------------------------------------------------------------------
|
||||
#ifndef ENABLE_ACCPULSE
|
||||
#pragma message("[undefined] ENABLE_ACCPULSE")
|
||||
@@ -468,13 +426,13 @@ void UserWriteDataProtocol(void)
|
||||
if(parameterState == ABORD_OPERATION) break;
|
||||
if((signed int)CMDComPassword > PULSE_UNIT_MAX) break;
|
||||
if((signed int)CMDComPassword < PULSE_UNIT_MIN) break;
|
||||
tempDev.Word[0] = CMDComPassword;
|
||||
factoryUnitPerPulse = (signed int)WriteParameterToEEPROM(PULSE_UNIT, PULSE_UNIT_WIDTH);
|
||||
tempL.Word[0] = CMDComPassword;
|
||||
factoryUnitPerPulse = (signed int)WriteShortParameterToMemory(PULSE_UNIT);
|
||||
lastRemaining = 0;
|
||||
Total[MIN_BIT] = 0;
|
||||
break;
|
||||
|
||||
case STD_IO_OUTPUT_LEVEL: WriteWordByCom(&PulseLevel, PULSE_LEVEL, PULSE_LEVEL_WIDTH, 1, 0); break;
|
||||
case STD_PULSE_LEVEL: WriteWordValidDataByCom(&PulseLevel, PULSE_LEVEL, 1, 0); break;
|
||||
#endif
|
||||
|
||||
//--------------------------------------------------------------------------
|
||||
@@ -489,7 +447,7 @@ void UserWriteDataProtocol(void)
|
||||
if(parameterState == ABORD_OPERATION) break;
|
||||
|
||||
tempL.Word[0] = CMDComPassword;
|
||||
factoryInterval = (unsigned int)WriteShortParameterToEEPROM(SAMPLE_PERIOD, SAMPLE_PERIOD_WIDTH);
|
||||
factoryInterval = (u16)WriteShortParameterToMemory(SAMPLE_PERIOD);
|
||||
samplingTiming = SetupResponseTime(factoryInterval, SAMPLE_PERIOD_DEFAULT);
|
||||
break;
|
||||
#endif
|
||||
@@ -500,7 +458,7 @@ void UserWriteDataProtocol(void)
|
||||
#elif(ENABLE_ALARM_ACC)
|
||||
case STD_ALARM_ACC: // 0x96 // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
if(BusAdr[MBBuf.StartAddr+1] != STD_ALARM_ACC+1) return;
|
||||
WriteDWordByCom(&alarmAcc, ALARM_ACC, ALARM_ACC_WIDTH, ALARM_ACC_MAX, ALARM_ACC_MIN);
|
||||
WriteDWordValidDataByCom(&alarmAcc, ALARM_ACC, ALARM_ACC_WIDTH, ALARM_ACC_MAX, ALARM_ACC_MIN);
|
||||
break;
|
||||
#endif
|
||||
//--------------------------------------------------------------------------
|
||||
@@ -509,8 +467,8 @@ void UserWriteDataProtocol(void)
|
||||
//case STD_ALARM_LOWER_FLOW 0x9A // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
//case STD_ALARM_FUN 0x9C // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ر<EFBFBD><D8B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
//case STD_ALARM_OUT_DELAY 0x9D // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ر<EFBFBD><D8B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ (<28><>λ<EFBFBD><CEBB>s)
|
||||
case STD_COM_DECIMAL: WriteWordByCom(&uartDecimalPoint, COM_DECIMAL_POINT, COM_DECIMAL_POINT_WIDTH, 4, 0); break;
|
||||
case STD_RECORD_TIME: WriteWordByCom(&historyPeriod, HISTORY_PERIOD, HISTORY_PERIOD_WIDTH, 720, 0); break;
|
||||
case STD_COM_DECIMAL: WriteWordValidDataByCom(&uartDecimalPoint, COM_DECIMAL, 4, 0); break;
|
||||
case STD_RECORD_TIME: WriteWordValidDataByCom(&recordTime, RECORD_TIME, 720, 0); break;
|
||||
//case STD_REVERSE_FR_MIN: break;
|
||||
//case STD_REVERSE_FR_MAX: break;
|
||||
|
||||
@@ -519,7 +477,7 @@ void UserWriteDataProtocol(void)
|
||||
#pragma message("[undefined] ENABLE_USER_I2C")
|
||||
#elif(ENABLE_USER_I2C)
|
||||
case STD_I2C_ADDR:
|
||||
FreeWriteWordByCom(&localAddress, SLAVER_ADDR, SLAVER_ADDR_WIDTH, SLAVER_ADDR_MAX, SLAVER_ADDR_MIN);
|
||||
FreeWriteWordValidDataByCom(&localAddress, SLAVER_ADDR, SLAVER_ADDR_WIDTH, SLAVER_ADDR_MAX, SLAVER_ADDR_MIN);
|
||||
I2CAddr = localAddress;
|
||||
if(parameterState == ABORD_OPERATION) break;
|
||||
BackupParameterToFlash();
|
||||
@@ -531,9 +489,9 @@ void UserWriteDataProtocol(void)
|
||||
//--------------------------------------------------------------------------
|
||||
|
||||
//case STD_I2C_CRC_MOD: break;
|
||||
case STD_TIMING_TXD_START: WriteWordByCom(&timingTxdStart, TIMING_TXD_START, TIMING_TXD_START_WIDTH, TIMING_TXD_START_MAX, TIMING_TXD_START_MIN); break;
|
||||
case STD_TIMING_TXD_LEN: WriteWordByCom(&timingTxdLen, TIMING_TXD_LEN, TIMING_TXD_LEN_WIDTH, TIMING_TXD_LEN_MAX, TIMING_TXD_LEN_MIN); break;
|
||||
case STD_TIMING_TXD_TIME: WriteWordByCom(&timingTxdTime, TIMING_TXD_TIME, TIMING_TXD_TIME_WIDTH, TIMING_TXD_TIME_MAX, 0); break;
|
||||
case STD_TIMING_TXD_START: WriteWordValidDataByCom(&timingTxdStart, TIMING_TXD_START, TIMING_TXD_START_MAX, TIMING_TXD_START_MIN); break;
|
||||
case STD_TIMING_TXD_LEN: WriteWordValidDataByCom(&timingTxdLen, TIMING_TXD_LEN, TIMING_TXD_LEN_MAX, TIMING_TXD_LEN_MIN); break;
|
||||
case STD_TIMING_TXD_TIME: WriteWordValidDataByCom(&timingTxdTime, TIMING_TXD_TIME, TIMING_TXD_TIME_MAX, 0); break;
|
||||
//case STD_PRESSURE_OFFSET 0xA9 // ѹ<><D1B9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
//case STD_LORA_ADR 0xAA // LORA <20><>ַ
|
||||
//case STD_LORA_NETID 0xAB // LORA<52><41>·id
|
||||
@@ -544,16 +502,16 @@ void UserWriteDataProtocol(void)
|
||||
#ifndef ENABLE_KEY_FUNCTION
|
||||
#pragma message("[undefined] ENABLE_KEY_FUNCTION")
|
||||
#elif(ENABLE_KEY_FUNCTION)
|
||||
case STD_KEY_PASSWORD: WriteDWordByCom(&keyPassWord, KEY_PASSWORD, KEY_PASSWORD_WIDTH, 99999, 0); break; // 0xAE <20><><EFBFBD>ð<EFBFBD><C3B0><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
case STD_KEY_PASSWORD: WriteDWordValidDataByCom(&keyPassWord, KEY_PASSWORD, KEY_PASSWORD_WIDTH, 99999, 0); break; // 0xAE <20><><EFBFBD>ð<EFBFBD><C3B0><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
#endif
|
||||
|
||||
//---------------------------------------------------------------------
|
||||
#ifndef ENABLE_LEAK_DETECT
|
||||
#pragma message("[undefined] ENABLE_LEAK_DETECT")
|
||||
#elif(ENABLE_LEAK_DETECT)
|
||||
case STD_LEAK_FR_MIN: WriteWordByCom(&minLeakFlowRate, MIN_LEAK_FLOW, MIN_LEAK_FLOW_WIDTH, MIN_LEAK_FLOW_MAX, MIN_LEAK_FLOW_MIN); break;
|
||||
case STD_LEAK_FR_MAX: WriteWordByCom(&maxLeakFlowRate, MAX_LEAK_FLOW, MAX_LEAK_FLOW_WIDTH, MAX_LEAK_FLOW_MAX, MAX_LEAK_FLOW_MIN); break;
|
||||
case STD_LEAK_TIMING: WriteWordByCom(&leakDetectTime, LEAK_TIME, LEAK_TIME_WIDTH, LEAK_TIME_MAX, 0); break;
|
||||
case STD_LEAK_FR_MIN: WriteWordValidDataByCom(&minLeakFlowRate, MIN_LEAK_FLOW, MIN_LEAK_FLOW_WIDTH, MIN_LEAK_FLOW_MAX, MIN_LEAK_FLOW_MIN); break;
|
||||
case STD_LEAK_FR_MAX: WriteWordValidDataByCom(&maxLeakFlowRate, MAX_LEAK_FLOW, MAX_LEAK_FLOW_WIDTH, MAX_LEAK_FLOW_MAX, MAX_LEAK_FLOW_MIN); break;
|
||||
case STD_LEAK_TIMING: WriteWordValidDataByCom(&leakDetectTime, LEAK_TIME, LEAK_TIME_WIDTH, LEAK_TIME_MAX, 0); break;
|
||||
#endif
|
||||
|
||||
//**************************************************************************
|
||||
@@ -600,14 +558,14 @@ void UserWriteDataProtocol(void)
|
||||
if(CMDComPassword == 0x0000AAFF)
|
||||
{
|
||||
tempL.Word[0] = voltageDetected[VHPA];
|
||||
densityFSParameter = (unsigned int)WriteShortParameterToEEPROM(DENSITY_FS_PARA, DENSITY_FS_PARA_WIDTH);
|
||||
densityFSParameter = (u16)WriteShortParameterToEEPROM(DENSITY_FS_PARA, DENSITY_FS_PARA_WIDTH);
|
||||
break;
|
||||
}
|
||||
// <20>Ͷ<EFBFBD>У
|
||||
if(CMDComPassword == 0x0000AA00)
|
||||
{
|
||||
tempL.Word[0] = voltageDetected[VHPA];
|
||||
VHHParameterAir = (unsigned int)WriteShortParameterToEEPROM(VHH_AIR_PARA, VHH_AIR_PARA_WIDTH);
|
||||
VHHParameterAir = (u16)WriteShortParameterToEEPROM(VHH_AIR_PARA, VHH_AIR_PARA_WIDTH);
|
||||
break;
|
||||
}
|
||||
#endif
|
||||
@@ -677,11 +635,11 @@ void UserWriteDataProtocol(void)
|
||||
DataPoint = &MAPPoint1;
|
||||
MBBuf.DataByte = BusAdr[MBBuf.StartAddr] - STD_MAP_SET1;
|
||||
DataPoint -= MBBuf.DataByte;
|
||||
WriteWordByCom(DataPoint, MAP_SET1 + MBBuf.DataByte * MAP_SET_WIDTH, MAP_SET_WIDTH, 256, 0);
|
||||
WriteWordValidDataByCom(DataPoint, MAP_SET1 + MBBuf.DataByte * REG_WORD_WIDTH, 256, 0);
|
||||
MBBuf.DataByte = 2;
|
||||
break;
|
||||
|
||||
case STD_DCOEF_NUM: WriteWordByCom(&dcoefNum, DCOEF_NUM, DCOEF_NUM_WIDTH, 20, 3); break;
|
||||
case STD_DCOEF_NUM: WriteWordValidDataByCom(&dcoefNum, DCOEF_NUM, 20, 3); break;
|
||||
case STD_DCOEF_NODE1:
|
||||
case STD_DCOEF_NODE2:
|
||||
case STD_DCOEF_NODE3:
|
||||
@@ -709,7 +667,6 @@ void UserWriteDataProtocol(void)
|
||||
if(parameterState == ABORD_OPERATION) return;
|
||||
|
||||
dcoefNode[I] = tmpLA;
|
||||
IDvalidTime = 0;
|
||||
HWState.EnableCheckCorr = 0;
|
||||
StoreDevCoefNodeAndValue(I);
|
||||
break;
|
||||
@@ -742,7 +699,6 @@ void UserWriteDataProtocol(void)
|
||||
if(tempL.Word[0] > METER_PARAMETER_MAX) return;
|
||||
if(tempL.Word[0] < METER_PARAMETER_MIN) return;
|
||||
|
||||
IDvalidTime = 0;
|
||||
dcoefVal[I] = tempL.Word[0];
|
||||
StoreDevCoefNodeAndValue(I);
|
||||
HWState.EnableCheckCorr = 0;
|
||||
|
||||
Reference in New Issue
Block a user