/************************************************************************** * * Copyright (c) 2019-2020 Diality Inc. - All Rights Reserved. * * THIS CODE MAY NOT BE COPIED OR REPRODUCED IN ANY FORM, IN PART OR IN * WHOLE, WITHOUT THE EXPLICIT PERMISSION OF THE COPYRIGHT OWNER. * * @file FPGA.h * * @date 21-Oct-2019 * @author S. Nash * * @brief header file for FPGA Interface service. * **************************************************************************/ #ifndef __FPGA_H__ #define __FPGA_H__ #include "HDCommon.h" #include "Interrupts.h" /** * @defgroup FPGA FPGA * @brief FPGA service module. * Maintains latest sensor readings at priority task interval. Updates actuator * states at priority task interval. * * @addtogroup FPGA * @{ */ // ********** public definitions ********** // ********** public function prototypes ********** void initFPGA( void ); void execFPGAIn( void ); void execFPGAOut( void ); SELF_TEST_STATUS_T execFPGATest( void ); void signalFPGAReceiptCompleted( void ); void signalFPGATransmitCompleted( void ); U16 getFPGAStatus( void ); void setFPGAControl( U16 ctrl ); #ifdef READ_FPGA_ASYNC_DATA F32 getFPGABloodFlowSignalStrength( void ); F32 getFPGADialysateFlowSignalStrength( void ); #endif F32 getFPGABloodFlow( void ); F32 getFPGADialysateFlow( void ); U16 getFPGABloodPumpHallSensorCount( void ); U08 getFPGABloodPumpHallSensorStatus( void ); U16 getFPGADialInPumpHallSensorCount( void ); U08 getFPGADialInPumpHallSensorStatus( void ); U16 getFPGADialOutPumpHallSensorCount( void ); U08 getFPGADialOutPumpHallSensorStatus( void ); S32 getFPGAArterialPressure( void ); U16 getFPGAVenousPressure( void ); U16 getFPGABloodPumpOcclusion( void ); U16 getFPGADialInPumpOcclusion( void ); U16 getFPGADialOutPumpOcclusion( void ); /**@}*/ #endif