差异
This commit is contained in:
@@ -1,6 +1,5 @@
|
||||
#include "../main/SystemInclude.h"
|
||||
|
||||
|
||||
static s16 GasAnalysisCNT;
|
||||
u16 ATypeNode[CURVE_DATA_MAX], ATypeVal[CURVE_DATA_MAX], curveATypeNum;
|
||||
bool isCurrentGas;
|
||||
@@ -8,8 +7,8 @@ bool isCurrentGas;
|
||||
/******************************************************************************/
|
||||
void GasAnalysisParameterInit(void)
|
||||
{
|
||||
VHHParameterAir = (u16)ReadParameterFromMemory(VHH_AIR_PARA, VHH_AIR_PARA_WIDTH, RH_PARA_DEFAULT);
|
||||
VHHParameterScale = (u16)ReadParameterFromMemory(VHH_PARA_SCALE, VHH_PARA_SCALE_WIDTH, 1000);
|
||||
airFactor = (u16)ReadShortParameterFromMemory(AIR_FACTOR, AIR_FACTOR_DEFAULT);
|
||||
factorVth = (u16)ReadShortParameterFromMemory(FACTOR_VTH, 1000);
|
||||
|
||||
//------------------------------------------------------------------------------
|
||||
#ifndef ENABLE_GAS_RECOGNITION_TABLE
|
||||
@@ -22,37 +21,37 @@ void GasAnalysisParameterInit(void)
|
||||
#ifndef ENABLE_DENSITY_DETECT
|
||||
#pragma message("[undefined] ENABLE_DENSITY_DETECT")
|
||||
#elif(ENABLE_DENSITY_DETECT)
|
||||
densityFSParameter = (u16)ReadParameterFromMemory(DENSITY_FS_PARA, DENSITY_FS_PARA_WIDTH, DENSITY_FS_PARA_DEFAULT);
|
||||
// densityFSParameter = (u16)ReadParameterFromMemory(DENSITY_FS_PARA, DENSITY_FS_PARA_WIDTH, DENSITY_FS_PARA_DEFAULT);
|
||||
#endif
|
||||
}
|
||||
|
||||
/******************************************************************************/
|
||||
unsigned int ComputeZeroVHH(void)
|
||||
u16 ComputeZeroVHH(void)
|
||||
{
|
||||
tmpSLA = (unsigned long int)voltageDetected[RRRES];
|
||||
tmpSLA -= (unsigned long int)NRHRoom;
|
||||
tmpSLA = (u32)voltageDetected[RRRES];
|
||||
tmpSLA -= (u32)RRRoom;
|
||||
|
||||
tmpSLB = (unsigned long int)VHHHigh;
|
||||
tmpSLB -= (unsigned long int)VHHLow;
|
||||
tmpSLB = (u32)VHHHigh;
|
||||
tmpSLB -= (u32)VHHLow;
|
||||
tmpSLA *= tmpSLB;
|
||||
|
||||
tmpSLB = (unsigned long int)NRHHigh;
|
||||
tmpSLB -= (unsigned long int)NRHLow;
|
||||
tmpSLB = (u32)RRHigh;
|
||||
tmpSLB -= (u32)RRLow;
|
||||
tmpSLA /= tmpSLB;
|
||||
|
||||
tmpSLA += (unsigned long int)VHHRoom;
|
||||
tmpSLA += (u32)VHHRoom;
|
||||
|
||||
return (unsigned int)tmpSLA;
|
||||
return (u16)tmpSLA;
|
||||
}
|
||||
|
||||
/******************************************************************************/
|
||||
bool GasAnasisOneTime(void)
|
||||
{
|
||||
signed int valueTemp;
|
||||
s16 valueTemp;
|
||||
|
||||
valueTemp = (signed int)(voltageDetected[VHPA] - VHHParameterAir);
|
||||
if(abs(valueTemp) < VHHParameterScale) return 1;
|
||||
else return 0;
|
||||
valueTemp = (s16)(voltageDetected[VHPA] - airFactor);
|
||||
if(abs(valueTemp) < factorVth) return 1;
|
||||
else return 0;
|
||||
}
|
||||
|
||||
/******************************************************************************/
|
||||
@@ -68,7 +67,7 @@ void GasAnasisCompute(void)//
|
||||
#elif(ENABLE_GAS_RECOGNITION_TABLE)
|
||||
voltageDetected[VHPA] = FindVHHInCalibCurve(voltageDetected[RGIDX]);
|
||||
#else
|
||||
voltageDetected[VHPA] = (unsigned int)GetFlowRate(voltageDetected[REG_INDEX], ATYPE_VH);
|
||||
voltageDetected[VHPA] = (u16)GetFlowRate(voltageDetected[REG_INDEX], ATYPE_VH);
|
||||
#endif
|
||||
|
||||
voltageDetected[VHPA] = WordSubFunction(voltageDetected[DVHHX], voltageDetected[VHPA]);
|
||||
@@ -100,9 +99,9 @@ void GasAnasisCompute(void)//
|
||||
/******************************************************************************/
|
||||
void ReadVHHCurveFromMemory(void)
|
||||
{
|
||||
unsigned int I;
|
||||
u16 I;
|
||||
|
||||
curveATypeNum = (unsigned int)ReadParameterFromMemory(ATYPECURVE_NUM, ATYPECURVE_NUM_WIDTH, ATYPECURVE_NUM_DEFAULT);
|
||||
curveATypeNum = ReadShortParameterFromMemory(ATYPECURVE_NUM, ATYPECURVE_NUM_DEFAULT);
|
||||
for(I=0; I<curveATypeNum; I++)
|
||||
{
|
||||
ReadMultiByteFromEEPROM(ATYPECURVE_DATA_BASE + I * ATYPECURVE_DATA_WIDTH, tempDev.Byte, ATYPECURVE_DATA_WIDTH, PARA_EEPROM);
|
||||
@@ -121,9 +120,9 @@ void ReadVHHCurveFromMemory(void)
|
||||
}
|
||||
|
||||
/******************************************************************************/
|
||||
unsigned int FindVHHInCalibCurve(unsigned int calibIndex)
|
||||
u16 FindVHHInCalibCurve(u16 calibIndex)
|
||||
{
|
||||
unsigned int I;
|
||||
u16 I;
|
||||
|
||||
if((curveATypeNum < 3) || (curveATypeNum > CURVE_DATA_MAX))
|
||||
{
|
||||
@@ -136,7 +135,7 @@ unsigned int FindVHHInCalibCurve(unsigned int calibIndex)
|
||||
//----------------------------------------------------------------------------
|
||||
for(I = 0; I < curveATypeNum - 1; I++)
|
||||
{
|
||||
if(ATypeNode[I] > 32767) continue;
|
||||
if(ATypeNode[I] > 32767) continue;
|
||||
if(ATypeNode[I] > calibIndex) break;
|
||||
}
|
||||
|
||||
@@ -145,8 +144,9 @@ unsigned int FindVHHInCalibCurve(unsigned int calibIndex)
|
||||
|
||||
//----------------------------------------------------------------------------
|
||||
Secondary.NodeX = calibIndex;
|
||||
if(ATypeNode[I] > 32767) Secondary.NodeH = 0;
|
||||
else Secondary.NodeH = ATypeNode[I];
|
||||
if(ATypeNode[I] > 32767) Secondary.NodeH = 0;
|
||||
else Secondary.NodeH = ATypeNode[I];
|
||||
|
||||
if(ATypeNode[I-1] > 32767) Secondary.NodeL = 0;
|
||||
else Secondary.NodeL = ATypeNode[I-1];
|
||||
|
||||
|
||||
Reference in New Issue
Block a user