Index: firmware/App/Services/FpgaDD.c =================================================================== diff -u -r333e2d0c0462dcb4343a279420949cce716ebab7 -re3ea1f5251b7a7af6e47b9e013c3cfc11466e255 --- firmware/App/Services/FpgaDD.c (.../FpgaDD.c) (revision 333e2d0c0462dcb4343a279420949cce716ebab7) +++ firmware/App/Services/FpgaDD.c (.../FpgaDD.c) (revision e3ea1f5251b7a7af6e47b9e013c3cfc11466e255) @@ -79,6 +79,10 @@ #define CONCENTRATE_CAP_SWITCH_MASK 0x10 ///< Concentrate cap switch bit mask. #define FPGA_CONC_PUMP_FAULT_BITS 0x03 ///< Concentrate pump fault bits mask. +#define UF_PUMP_FAULT_SHIFT 0x02 ///< Shift UF pump fault while reading, to account other dosing pumps fault. +#define FPGA_UF_PUMP_FAULT_BIT 0x00 ///< UF pump fault bit mask. +#define FPGA_UF_PUMP_PARKED_BIT 0x01 ///< UF pump parked status bit mask. +#define FPGA_UF_PUMP_PARK_FAULT_BIT 0x02 ///< UF pump park fault status bit mask. #define FPGA_D11_PUMP_PARKED_BIT 0x04 ///< Acid Concentrate pump parked status bit mask. #define FPGA_D10_PUMP_PARKED_BIT 0x10 ///< Bicarb Concentrate pump parked status bit mask. #define FPGA_D11_PUMP_PARK_FAULT_BIT 0x08 ///< Acid Concentrate pump park fault status bit mask. @@ -247,12 +251,13 @@ U16 fpgaD48PumpSpeedFeedback; ///< Reg 442. D48 Pump Speed feedback U16 fpgaD76PumpHallSense; ///< Reg 444. UF D76_Pump hall sensor pulse width U16 fpgaD76PumpStepCountStatus; ///< Reg 446. UF pump revolution down count status + U08 fpgaD76PumpFault; ///< Reg 448: UF pump fault - U32 fpgaD74CondDataOut; ///< Reg 448. Data read from Conductivity Sensor D74 register - U16 fpgaD74CondCond; ///< Reg 452. D74 conductivity - U16 fpgaD74CondTemp; ///< Reg 454. D74 Temperature - U08 fpgaD74CondReadCnt; ///< Reg 456. D74 successful read count - U08 fpgaD74CondErrorCnt; ///< Reg 457. D74 error read count + U32 fpgaD74CondDataOut; ///< Reg 449. Data read from Conductivity Sensor D74 register + U16 fpgaD74CondCond; ///< Reg 453. D74 conductivity + U16 fpgaD74CondTemp; ///< Reg 455. D74 Temperature + U08 fpgaD74CondReadCnt; ///< Reg 457. D74 successful read count + U08 fpgaD74CondErrorCnt; ///< Reg 458. D74 error read count } DD_FPGA_SENSORS_T; typedef struct @@ -1879,6 +1884,51 @@ /*********************************************************************//** * @brief + * The getFPGAUFPumpFault function gets UF pumps fault + * reported by FGPA. + * @details \b Inputs: fpgaSensorReadings.fpgaD76PumpFault + * @details \b Outputs: none + * @return Latest UF pumps fault value + *************************************************************************/ +U08 getFPGAUFPumpFault( void ) +{ + return ( ( fpgaSensorReadings.fpgaD76PumpFault & FPGA_UF_PUMP_FAULT_BIT ) << UF_PUMP_FAULT_SHIFT ); +} + +/*********************************************************************//** + * @brief + * The getFPGAD76PumpIsParked function gets whether the UF pump is currently + * parked. + * @details \b Inputs: fpgaSensorReadings.fpgaD76PumpFault + * @details \b Outputs: none + * @return TRUE if UF pump is parked, FALSE if not + *************************************************************************/ +BOOL getFPGAD76PumpIsParked( void ) +{ + U08 mask = fpgaSensorReadings.fpgaD76PumpFault & FPGA_UF_PUMP_PARKED_BIT; + BOOL result = ( mask > 0 ? TRUE : FALSE ); + + return result; +} + +/*********************************************************************//** + * @brief + * The getFPGAD76PumpParkFault function gets whether the UF pump park command + * has faulted. + * @details \b Inputs: fpgaSensorReadings.fpgaD76PumpFault + * @details \b Outputs: none + * @return TRUE if UF pump park command faulted, FALSE if not + *************************************************************************/ +BOOL getFPGAD76PumpParkFault( void ) +{ + U08 mask = fpgaSensorReadings.fpgaD76PumpFault & FPGA_UF_PUMP_PARK_FAULT_BIT; + BOOL result = ( mask > 0 ? TRUE : FALSE ); + + return result; +} + +/*********************************************************************//** + * @brief * The getFPGAConcentratePumpsFault function gets concentrate pumps fault * reported by FGPA. * @details \b Inputs: fpgaSensorReadings.fpgaD11_D10_PumpFault