Index: firmware/App/Controllers/BloodFlow.c =================================================================== diff -u -r40bcef6aa65af6c93ce937c6c4aa2de13e8a78d3 -rcb5c7321fae3036d7a3641ae49097b4b361270f5 --- firmware/App/Controllers/BloodFlow.c (.../BloodFlow.c) (revision 40bcef6aa65af6c93ce937c6c4aa2de13e8a78d3) +++ firmware/App/Controllers/BloodFlow.c (.../BloodFlow.c) (revision cb5c7321fae3036d7a3641ae49097b4b361270f5) @@ -18,6 +18,7 @@ #include "etpwm.h" #include "Common.h" +#include "InternalADC.h" #include "SystemCommMessages.h" #include "TaskPriority.h" #include "Timers.h" @@ -26,8 +27,11 @@ // ********** private definitions ********** #define MAX_BLOOD_FLOW_RATE 600 // mL/min -#define MAX_BLOOD_PUMP_PWM_STEP_CHANGE 0.005 // duty cycle +#define MAX_BLOOD_PUMP_PWM_STEP_CHANGE 0.005 // duty cycle TODO - fixed or parameterized or set in motor controller? +#define BP_SPEED_ADC_2_RPM_FACTOR 0.05 // conversion factor from ADC counts to RPM for blood pump motor TODO - set appropriate value +#define BP_CURRENT_ADC_2_MA_FACTOR 0.1 // conversion factor from ADC counts to mA for blood pump motor TODO - set appropriate value + typedef enum BloodPump_States { BLOOD_PUMP_OFF_STATE = 0, @@ -65,6 +69,9 @@ static MOTOR_DIR_T bloodPumpDirection = MOTOR_DIR_FORWARD; // requested blood flow direction static MOTOR_DIR_T bloodPumpDirectionSet = MOTOR_DIR_FORWARD; // currently set blood flow direction +static F32 adcBloodPumpSpeedRPM = 0; +static F32 adcBloodPumpCurrentmA = 0; + static BLOOD_FLOW_SELF_TEST_STATE_T bloodPumpSelfTestState = BLOOD_FLOW_SELF_TEST_STATE_START; static U32 bloodPumpSelfTestTimerCount = 0; @@ -168,7 +175,8 @@ *************************************************************************/ void execBloodFlowMonitor( void ) { - // TODO + adcBloodPumpSpeedRPM = (F32)getIntADCReading( INT_ADC_BLOOD_PUMP_SPEED ) * BP_SPEED_ADC_2_RPM_FACTOR; + adcBloodPumpCurrentmA = (F32)getIntADCReading( INT_ADC_BLOOD_PUMP_MOTOR_CURRENT ) * BP_CURRENT_ADC_2_MA_FACTOR; } /*************************************************************************