Index: firmware/App/Tasks/TaskGeneral.c =================================================================== diff -u -r9102c5da21a15bdaf4bb3bc38795ceb064e3c443 -r313982ccc772f1bbe182877dff7e00381b04e0f4 --- firmware/App/Tasks/TaskGeneral.c (.../TaskGeneral.c) (revision 9102c5da21a15bdaf4bb3bc38795ceb064e3c443) +++ firmware/App/Tasks/TaskGeneral.c (.../TaskGeneral.c) (revision 313982ccc772f1bbe182877dff7e00381b04e0f4) @@ -14,18 +14,21 @@ * @date (original) 05-Aug-2024 * ***************************************************************************/ - -#include "gio.h" -#include "lin.h" +#include "gio.h" +#include "lin.h" + #include "ConcentratePumps.h" #include "DialysatePumps.h" #include "Heaters.h" #include "Messaging.h" -#include "OperationModes.h" -#include "SystemCommDD.h" +#include "OperationModes.h" +#ifdef __PUMPTEST__ +#include "PistonPumpControl.h" +#endif +#include "SystemCommDD.h" #include "TaskGeneral.h" -#include "WatchdogMgmt.h" +#include "WatchdogMgmt.h" /** * @addtogroup TaskGeneral @@ -38,18 +41,18 @@ #define SET_TASK_ON() { mibspiREG3->PC3 |= TASK_TIMING_TEST_PIN_SPI1_PORT_MASK; } #define SET_TASK_OFF() { mibspiREG3->PC3 &= ~TASK_TIMING_TEST_PIN_SPI1_PORT_MASK; } #endif - -/*********************************************************************//** - * @brief - * The taskGeneral function handles the scheduled general task interrupt. - * Calls the executive functions for most monitors and controllers, the - * operation modes, the system communications, and alarms. - * @details \b Inputs: none - * @details \b Outputs: Executed all general task functions. + +/*********************************************************************//** + * @brief + * The taskGeneral function handles the scheduled general task interrupt. + * Calls the executive functions for most monitors and controllers, the + * operation modes, the system communications, and alarms. + * @details \b Inputs: none + * @details \b Outputs: Executed all general task functions. * @return none - * @note This task runs every 50 ms interval. - *************************************************************************/ -void taskGeneral( void ) + * @note This task runs every 50 ms interval. + *************************************************************************/ +void taskGeneral( void ) { /* Order of exec functions * 1. Comm Rx @@ -58,55 +61,60 @@ * 4. Controllers * 5. Comm Tx * */ - + #ifdef TASK_TIMING_OUTPUT_ENABLED // SET_TASK_ON(); // TODO - uncomment and define TASK_TIMING_OUTPUT_ENABLED to monitor this tasks timing #endif - // check in with watchdog manager - checkInWithWatchdogMgmt( TASK_GENERAL ); // do this first to keep timing consistent with watchdog management - - // manage data received from other sub-systems + // check in with watchdog manager + checkInWithWatchdogMgmt( TASK_GENERAL ); // do this first to keep timing consistent with watchdog management + + // manage data received from other sub-systems execSystemCommRx(); //TODO : Enable later Concentratepump and Heaters // monitor concentrate pumps - //execConcentratePumpMonitor(); + execConcentratePumpMonitor(); // Monitor DD voltages ///execVoltagesMonitor(); // run operation mode state machine execOperationModes(); - // manage dialysate pump + // manage dialysate pump execDialysatePumpController(); // manage concentrate pumps - //execConcentratePumpController(); + execConcentratePumpController(); +#ifdef __PUMPTEST__ + // manage piston pumps + execPistonPumpController(); +#endif + // Manage switches monitor //execSwitches(); - + // Heaters controller - //execHeatersControl(); + execHeatersControl(); // Monitor RAM error status //execRAMMonitor(); // Run non-volatile data management state machine that sends the data record // to Dialin - //execNVDataMgmtProcessRecord(); + //execNVDataMgmtProcessRecord(); - // Run alarm management + // Run alarm management execAlarmMgmt(); - // manage data to be transmitted to other sub-systems - execSystemCommTx(); - + // manage data to be transmitted to other sub-systems + execSystemCommTx(); + #ifdef TASK_TIMING_OUTPUT_ENABLED // SET_TASK_OFF(); // TODO - uncomment and define TASK_TIMING_OUTPUT_ENABLED to monitor this tasks timing #endif -} +} /**@}*/