#include "../main/SystemInclude.h" // for compute buffer float RRExtGain; u16 RRExtGainRes; /******************************************************************************/ void RHCircuitParameterInit(void) { // A type external gain res RRExtGainRes = (u16)ReadParameterFromEEPROM(RR_GAINRES, RR_GAINRES_WIDTH, RR_GAINRES_DEFAULT); RRExtGain = (float)RR_OPGAIN_RES; RRExtGain /= (float)RRExtGainRes; RRExtGain += 1.0; RRExtGain = 1.0/RRExtGain; } /******************************************************************************/ void ComputeRRParameter(void) { float tmpRR; //=========================================================================== // compute VRR ADC INPUT tmpSLA = (u32)voltageDetected[RRIDX]; tmpSLA -= (u32)32768; tmpRR = (float)VRR_VREF; tmpRR *= (float)tmpSLA; tmpRR += (float)VRR_VDC; voltageDetected[NVRR] = (u16)tmpRR; //=========================================================================== // compute RR tmpRR *= (float)RRExtGain; tmpRR = (VRR_RREF*tmpRR)/(VREF-tmpRR); voltageDetected[NRR] = (u16)tmpRR; voltageDetected[NRR] = MovingAverage(voltageDetected[NRR], 30, NRR); }