Index: firmware/App/Controllers/BloodFlow.h =================================================================== diff -u -rdb291cc22fd8f10e6e47cad468e14ed5590a94f2 -rbb643418e1f0c59ca3ee75c642aaa1f31850069e --- firmware/App/Controllers/BloodFlow.h (.../BloodFlow.h) (revision db291cc22fd8f10e6e47cad468e14ed5590a94f2) +++ firmware/App/Controllers/BloodFlow.h (.../BloodFlow.h) (revision bb643418e1f0c59ca3ee75c642aaa1f31850069e) @@ -14,88 +14,88 @@ * @date (original) 07-Nov-2019 * ***************************************************************************/ - -#ifndef __BLOOD_FLOW_H__ -#define __BLOOD_FLOW_H__ - -#include "HDCommon.h" - -/** - * @defgroup BloodFlow BloodFlow - * @brief Blood Pump & Blood Flow controller/monitor module. Monitors the - * blood flow rate and controls the blood pump. - * - * @addtogroup BloodFlow - * @{ - */ - -// ********** public definitions ********** - -#define MAX_SET_BLOOD_FLOW_RATE 500 ///< Maximum blood flow rate (in mL/min). + +#ifndef __BLOOD_FLOW_H__ +#define __BLOOD_FLOW_H__ + +#include "HDCommon.h" + +/** + * @defgroup BloodFlow BloodFlow + * @brief Blood Pump & Blood Flow controller/monitor module. Monitors the + * blood flow rate and controls the blood pump. + * + * @addtogroup BloodFlow + * @{ + */ + +// ********** public definitions ********** + +#define MAX_SET_BLOOD_FLOW_RATE 500 ///< Maximum blood flow rate (in mL/min). #define MIN_SET_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.216F ///< Theoretical volume (mL) of blood/saline volume per motor revolution. +#define VOLUME_PER_BP_MOTOR_REV_ML 0.216F ///< Theoretical volume (mL) of blood/saline volume per motor revolution. #define BP_HALL_EDGE_COUNTS_PER_REV 48 ///< Number of hall sensor edge counts 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; - U32 rotorCount; - U32 presFlow; - U32 rotorHall; + S32 setPoint; ///< Set point. + F32 measFlow; ///< Measured flow in mL/min. + F32 measRotorSpd; ///< Measured rotor speed in RPM. + F32 measPumpSpd; ///< Measured pump speed in RPM. + F32 measMCSpd; ///< Measured motor speed in RPM. + F32 measMCCurr; ///< Measure motor current in Amps. + F32 pwmDC; ///< Duty cycle. + U32 rotorCount; ///< Rotor count. + U32 presFlow; ///< Blood flow in mL/min. + U32 rotorHall; ///< Rotor hall in counts. } BLOOD_PUMP_STATUS_PAYLOAD_T; -// ********** public function prototypes ********** - -void initBloodFlow( void ); -void execBloodFlowMonitor( void ); -void execBloodFlowController( void ); - +// ********** public function prototypes ********** + +void initBloodFlow( void ); +void execBloodFlowMonitor( void ); +void execBloodFlowController( void ); + BOOL setBloodPumpTargetFlowRate( U32 flowRate, MOTOR_DIR_T dir, PUMP_CONTROL_MODE_T mode ); -BOOL setBloodPumpTargetRPM( U32 rpm, MOTOR_DIR_T dir ); -void signalBloodPumpHardStop( void ); -void signalBloodPumpRotorHallSensor( void ); +BOOL setBloodPumpTargetRPM( U32 rpm, MOTOR_DIR_T dir ); +void signalBloodPumpHardStop( void ); +void signalBloodPumpRotorHallSensor( void ); BOOL homeBloodPump( void ); U32 getBloodPumpMotorCount( void ); U32 getBloodPumpRotorCount( void ); BOOL isBloodPumpRunning( void ); BOOL isBloodPumpRampComplete( void ); -void resetBloodPumpRotorCount( void ); - -SELF_TEST_STATUS_T execBloodFlowTest( void ); +void resetBloodPumpRotorCount( void ); -S32 getTargetBloodFlowRate( void ); -F32 getMeasuredBloodFlowRate( void ); +SELF_TEST_STATUS_T execBloodFlowTest( void ); + +S32 getTargetBloodFlowRate( void ); +F32 getMeasuredBloodFlowRate( void ); F32 getMeasuredBloodPumpRotorSpeed( void ); F32 getMeasuredBloodPumpSpeed( void ); F32 getMeasuredBloodPumpMCSpeed( void ); F32 getMeasuredBloodPumpMCCurrent( void ); -BOOL testSetBloodFlowDataPublishIntervalOverride( U32 value ); -BOOL testResetBloodFlowDataPublishIntervalOverride( void ); -BOOL testSetTargetBloodFlowRateOverride( S32 value, U32 bloodPumpControlMode ); -BOOL testSetMeasuredBloodFlowRateOverride( F32 value ); -BOOL testResetMeasuredBloodFlowRateOverride( void ); -BOOL testSetMeasuredBloodPumpRotorSpeedOverride( F32 value ); -BOOL testResetMeasuredBloodPumpRotorSpeedOverride( void ); -BOOL testSetMeasuredBloodPumpSpeedOverride( F32 value ); -BOOL testResetMeasuredBloodPumpSpeedOverride( void ); -BOOL testSetMeasuredBloodPumpMCSpeedOverride( F32 value ); -BOOL testResetMeasuredBloodPumpMCSpeedOverride( void ); -BOOL testSetMeasuredBloodPumpMCCurrentOverride( F32 value ); -BOOL testResetMeasuredBloodPumpMCCurrentOverride( void ); +BOOL testSetBloodFlowDataPublishIntervalOverride( U32 value ); +BOOL testResetBloodFlowDataPublishIntervalOverride( void ); +BOOL testSetTargetBloodFlowRateOverride( S32 value, U32 bloodPumpControlMode ); +BOOL testSetMeasuredBloodFlowRateOverride( F32 value ); +BOOL testResetMeasuredBloodFlowRateOverride( void ); +BOOL testSetMeasuredBloodPumpRotorSpeedOverride( F32 value ); +BOOL testResetMeasuredBloodPumpRotorSpeedOverride( void ); +BOOL testSetMeasuredBloodPumpSpeedOverride( F32 value ); +BOOL testResetMeasuredBloodPumpSpeedOverride( void ); +BOOL testSetMeasuredBloodPumpMCSpeedOverride( F32 value ); +BOOL testResetMeasuredBloodPumpMCSpeedOverride( void ); +BOOL testSetMeasuredBloodPumpMCCurrentOverride( F32 value ); +BOOL testResetMeasuredBloodPumpMCCurrentOverride( void ); BOOL testSetBloodPumpRotorCountOverride( U32 value ); BOOL testResetBloodPumpRotorCountOverride( void ); BOOL testSetBloodPumpTargetDutyCycle( F32 value ); - -/**@}*/ - -#endif + +/**@}*/ + +#endif