Index: firmware/App/Services/FPGA.c =================================================================== diff -u -rfeb93744f73bc0a3d58841bb02bd05c38357f35d -r98eaa905f2487013d5e9af76bf064f872332c2fe --- firmware/App/Services/FPGA.c (.../FPGA.c) (revision feb93744f73bc0a3d58841bb02bd05c38357f35d) +++ firmware/App/Services/FPGA.c (.../FPGA.c) (revision 98eaa905f2487013d5e9af76bf064f872332c2fe) @@ -8,8 +8,8 @@ * * @file FPGA.c * -* @author (last) Quang Nguyen -* @date (last) 18-Sep-2020 +* @author (last) Peman Montazemi +* @date (last) 09-Mar-2021 * * @author (original) Dara Navaei * @date (original) 05-Nov-2019 @@ -76,6 +76,8 @@ #define DRAIN_PUMP_DAC_SHIFT_BITS 4 ///< Drain pump DAC shift bits. +#define FPGA_FLUIDLEAK_STATE_MASK 0x0004 ///< Bit mask for fluid leak detector. + // FPGA header struct. #pragma pack(push,1) typedef struct @@ -166,7 +168,7 @@ U16 fpgaCP1HallSense; ///< Reg 388. Concentrate pump CP1 hall sensor pulse width. U16 fpgaCP2HallSense; ///< Reg 390. Concentrate pump CP2 hall sensor pulse width. - U08 fpgaGPIOReg; ///< Reg 392. FGPA GPIO register + U08 fpgaGPIO; ///< Reg 392. FGPA GPIO register U08 fpgaDummyByte2Addr; ///< Reg 393. Dummy byte address to maintain an even addressing scheme U16 fpgaADCTemp; ///< Reg 394. Internal FPGA die temperature ADC } DG_FPGA_SENSORS_T; @@ -1778,5 +1780,19 @@ return fpgaSensorReadings.fpgaADC2ErrorCnt; } -/**@}*/ +/*********************************************************************//** + * @brief + * The noFluidLeakDetected function returns TRUE if no fluid leak has been + * detected (dry) and FALSE if a fluid leak has been detected (wet). + * @details Inputs: fpgaSensorReadings + * @details Outputs: none + * @return noFluidLeakDetected + *************************************************************************/ +BOOL noFPGAFluidLeakDetected( void ) +{ + U16 noFluidLeakDetected = fpgaSensorReadings.fpgaGPIO & FPGA_FLUIDLEAK_STATE_MASK; + return ( 0 == noFluidLeakDetected ? FALSE : TRUE ); +} + +/**@}*/