Index: firmware/App/Controllers/DGInterface.c =================================================================== diff -u -rbd738c0705e8640d2c532ecece876aaa3496ee32 -ra19a676d1e67bb3e1aca9e9bba49727f9d5f8b38 --- firmware/App/Controllers/DGInterface.c (.../DGInterface.c) (revision bd738c0705e8640d2c532ecece876aaa3496ee32) +++ firmware/App/Controllers/DGInterface.c (.../DGInterface.c) (revision a19a676d1e67bb3e1aca9e9bba49727f9d5f8b38) @@ -26,11 +26,17 @@ // ********** private definitions ********** +#define START_DG_CMD TRUE +#define STOP_DG_CMD FALSE // ********** private data ********** -// DG mode +// DG status static DG_OP_MODE_T dgCurrentOpMode = DG_MODE_INIT; +static BOOL dgStarted = FALSE; +static BOOL dgStartetSet = FALSE; +static BOOL dgWaterSampled = FALSE; +static BOOL dgWaterSampledSet = FALSE; // DG sensor data static F32 dgPressures[ NUM_OF_DG_PRESSURE_SENSORS ]; @@ -204,7 +210,7 @@ * @param drainVol : Reservoir drain to volume reported by DG. * @return none *************************************************************************/ -void setDGReservoirsData( U32 resID, U32 fillVol, U32 drainVol ) +void setDGReservoirsData( DG_RESERVOIR_ID_T resID, U32 fillVol, U32 drainVol ) { if ( resID < NUM_OF_DG_RESERVOIRS ) { @@ -275,11 +281,11 @@ * @param trimmerHtrTemp : commanded target dialysate temperature for the trimmer heater. * @return none *************************************************************************/ -void cmdSetDGDialysateTargetTemps( U32 primaryHtrTemp, U32 trimmerHtrTemp ) +void cmdSetDGDialysateTargetTemps( F32 primaryHtrTemp, F32 trimmerHtrTemp ) { dgPrimaryTempSet = primaryHtrTemp; dgTrimmerTempSet = trimmerHtrTemp; - // TODO - send command to DG + sendDialysateTempTargetsToDG( primaryHtrTemp, trimmerHtrTemp ); } /*********************************************************************//** @@ -293,7 +299,8 @@ *************************************************************************/ void cmdStartDG( void ) { - // TODO - send command to DG + dgStarted = TRUE; + sendDGStartStopCommand( START_DG_CMD ); } /*********************************************************************//** @@ -307,7 +314,8 @@ *************************************************************************/ void cmdStopDG( void ) { - // TODO - send command to DG + dgStarted = FALSE; + sendDGStartStopCommand( STOP_DG_CMD ); } /*********************************************************************//** @@ -325,7 +333,7 @@ if ( resID < NUM_OF_DG_RESERVOIRS ) { dgActiveReservoirSet = resID; - // TODO - send command to DG + sendDGSwitchReservoirCommand( resID ); } else { @@ -345,7 +353,7 @@ void cmdStartDGFill( U32 fillToVolMl ) { dgReservoirFillVolumeTargetSet = fillToVolMl; - // TODO - send command to DG + sendDGFillCommand( fillToVolMl ); } /*********************************************************************//** @@ -360,7 +368,21 @@ void cmdStartDGDrain( U32 drainToVolMl ) { dgReservoirDrainVolumeTargetSet = drainToVolMl; - // TODO - send command to DG + sendDGDrainCommand( drainToVolMl ); } +/*********************************************************************//** + * @brief + * The cmdDGSampleWater function sends a sample water command message to the DG. + * @details + * Inputs : none + * Outputs : sample water command sent to DG. + * @return none + *************************************************************************/ +void cmdDGSampleWater( void ) +{ + dgWaterSampled = TRUE; + sendDGSampleWaterCommand(); +} + /**@}*/