Files
CHJ/user/Core/DP2201_V5000_Compute.h
2026-03-20 21:19:53 +08:00

61 lines
2.2 KiB
C

#ifndef __D9V2FR_DP2201V5000_h__
#define __D9V2FR_DP2201V5000_h__
//##############################################################################
#if DP2201_CORE_V5000
//##############################################################################
// CODE = [(VREF-VREFN)*RR/(RA+RR) - (VREF-VREFN)*RB/(RA+RB)]*Gain / VREF*32768 + 32768
// CODE -32768 = (VREF-VREFN)/VREF*[ RR/(RA+RR) - RB/(RA+RB)]*GAIN / VREF*32768
// (CODE -32768) * VREF/32768 = (VREF-VREFN)*[ RR/(RA+RR) - RB/(RA+RB)]*GAIN
// VREF_PER_CODE: VREF/32768
// (CODE -32768) * VREF_PER_CODE / GAIN = (VREF-VREFN)*[ RR/(RA+RR) - RB/(RA+RB)]
// VRR_VREF: VREF_PER_CODE/GAIN
// VRR_VDC:(VREF-VREFN)*RB/(RA+RB)
// (CODE -32768) * VRR_VREF = (VREF-VREFN)*[ RR/(RA+RR) - RB/(RA+RB)]
// (CODE -32768) * VRR_VREF + VRR_VDC = (VREF-VREFN)*RR/(RA+RR) // VRR
// CODE = [(VREF-VREFN)*RR/(RA+RR) - (VREF-VREFN)*RB/(RA+RB)]*Gain / VREF*32768 + 32768
// (CODE-32768) = (VREF-VREFN)*[RR/(RA+RR) - RB/(RA+RB)]*GAIN*32768/VREF
// (CODE-32768)*VREF/[(VREF-VREFN)*GAIN*32768] = RR/(RA+RR) - RB/(RA+RB)
// VRR_PER_CODE: VREF/[(VREF-VREFN)*GAIN*32768]
// VRR_RDC: RB/(RA+RB)
// 1) (CODE-32768)*VRR_PER_CODE
// 2) 1)+VRR_RDC
// 3) 1/2)
// 4) 3)-1
// 5) RA/4)
#define ADC_VREF 2500.0
//-----------------------------------------------------------------------------
#define IRH_RA 33000.0
#define IRH_RB 2800.0
#define IRH_VDC (ADC_VREF*IRH_RB/(IRH_RA + IRH_RB))
#define IRH_ADC_GAIN 16.0
#define IRH_VREF (VREF_PER_CODE/IRH_ADC_GAIN)
#define IRH_RC 56.0
#define VRH_VREF VREF_PER_CODE
void RHCircuitParameterInit(void);
void CalibrateOffset(void);
void PreCalibrationParameterWriting(void);
void LowTemperatureParameterWriting(void);
void HighTemperatureParameterWriting(void);
void SaveVHHAndNRHInTempretureMode(void);
void ComputeRHParameter(void);
void ComputeRRParameter(void);
// for internal modbus
void InterCurveProcess(void);
void InterControlProcess(void);
void InterClearProcess(void);
//##############################################################################
#endif
//##############################################################################
#endif