Index: firmware/App/Controllers/DialOutFlow.c =================================================================== diff -u -ra6f52e9ca899d4983b18cbde673139aba216e8d5 -raf2cd84d3319b1e298057fe2d329aa7824306507 --- firmware/App/Controllers/DialOutFlow.c (.../DialOutFlow.c) (revision a6f52e9ca899d4983b18cbde673139aba216e8d5) +++ firmware/App/Controllers/DialOutFlow.c (.../DialOutFlow.c) (revision af2cd84d3319b1e298057fe2d329aa7824306507) @@ -104,9 +104,11 @@ #define DOP_PWM_ZERO_OFFSET 0.1F ///< 10% PWM duty cycle = zero speed. /// Macro converts a flow rate to an estimated PWM duty cycle %. -#define DOP_PWM_FROM_ML_PER_MIN(rate) ( ( (rate) * 0.0009 ) + 0.0972 + DOP_PWM_ZERO_OFFSET ) +#define DOP_PWM_FROM_ML_PER_MIN(rate) ( ( ( rate ) * 0.0009 ) + 0.0972 + DOP_PWM_ZERO_OFFSET ) /// Conversion from PWM duty cycle % to commanded pump motor speed. -#define DOP_PWM_TO_MOTOR_SPEED_RPM(pwm) ( ((pwm) - DOP_PWM_ZERO_OFFSET) * 4000.0F ) +#define DOP_PWM_TO_MOTOR_SPEED_RPM(pwm) ( ( ( pwm ) - DOP_PWM_ZERO_OFFSET) * 4000.0F ) +/// Macro converts a PWM to an estimated flow rate. +#define DOP_PWM_FROM_ML_PER_MIN(pwm) ( ( ( pwm - DOP_PWM_ZERO_OFFSET - 0.0972 ) / 0.0009 ) ) #define PUMP_DIR_ERROR_COUNT_MASK 0x3F ///< Bit mask for pump direction error counter. #define DATA_PUBLISH_COUNTER_START_COUNT 40 ///< Data publish counter start count. @@ -1627,4 +1629,26 @@ return result; } +/*********************************************************************//** + * @brief + * The testSetDialInPumpTargetDutyCycle function resets the override of the + * measured dialIn pump motor current. + * @details Inputs: none + * @details Outputs: adcDialInPumpMCCurrentmA + * @return TRUE if reset successful, FALSE if not + *************************************************************************/ +BOOL testSetDialOutPumpTargetDutyCycle( F32 value ) +{ + BOOL result = FALSE; + + if ( TRUE == isTestingActivated() ) + { + targetDialInFlowRate = (S32) DOP_PWM_FROM_ML_PER_MIN( value ); + result = TRUE; + } + + return result; +} + + /**@}*/