Index: firmware/App/Controllers/BloodFlow.h =================================================================== diff -u -rfff308d96794e7df7e91149173c3760ff3fda10c -r933a18d740285e70be9d00696ed0f5a5381bc8e4 --- firmware/App/Controllers/BloodFlow.h (.../BloodFlow.h) (revision fff308d96794e7df7e91149173c3760ff3fda10c) +++ firmware/App/Controllers/BloodFlow.h (.../BloodFlow.h) (revision 933a18d740285e70be9d00696ed0f5a5381bc8e4) @@ -32,8 +32,24 @@ // ********** public definitions ********** #define MAX_BLOOD_FLOW_RATE 500 ///< Maximum blood flow rate (in mL/min). -#define MIN_BLOOD_FLOW_RATE 100 ///< Minimum blood flow rate (in mL/min). +#define MIN_BLOOD_FLOW_RATE 100 ///< Minimum blood flow rate (in mL/min). +#define SALINE_BOLUS_FLOW_RATE 150 ///< Saline bolus flow rate (in mL/min). + +#define VOLUME_PER_BP_MOTOR_REV_ML 0.2 ///< Theoretical volume (mL) of blood/saline volume per motor revolution. +/// Payload record structure for a blood pump data message. +typedef struct +{ + S32 setPoint; + F32 measFlow; + F32 measRotorSpd; + F32 measPumpSpd; + F32 measMCSpd; + F32 measMCCurr; + F32 pwmDC; + F32 flowSigStrength; +} BLOOD_PUMP_STATUS_PAYLOAD_T; + // ********** public function prototypes ********** void initBloodFlow( void ); @@ -43,11 +59,15 @@ BOOL setBloodPumpTargetFlowRate( U32 flowRate, MOTOR_DIR_T dir, PUMP_CONTROL_MODE_T mode ); void signalBloodPumpHardStop( void ); void signalBloodPumpRotorHallSensor( void ); -BOOL homeBloodPump( void ); +BOOL homeBloodPump( void ); +U32 getBloodPumpMotorCount( void ); +U32 getBloodPumpRotorCount( void ); +BOOL isBloodPumpRunning( void ); SELF_TEST_STATUS_T execBloodFlowTest( void ); F32 getMeasuredBloodFlowRate( void ); +F32 getMeasuredBloodFlowSignalStrength( void); F32 getMeasuredBloodPumpRotorSpeed( void ); F32 getMeasuredBloodPumpSpeed( void ); F32 getMeasuredBloodPumpMCSpeed( void ); @@ -68,6 +88,8 @@ BOOL testResetMeasuredBloodPumpMCSpeedOverride( void ); BOOL testSetMeasuredBloodPumpMCCurrentOverride( F32 value ); BOOL testResetMeasuredBloodPumpMCCurrentOverride( void ); +BOOL testSetMeasuredBloodFlowSignalStrengthOverride( F32 value ); +BOOL testResetMeasuredBloodFlowSignalStrengthOverride( void ); /**@}*/