#include "AlarmMgmtFP.h" #include "FPOperationModes.h" #include "Messaging.h" #include "PermeateTank.h" #include "ROPump.h" #include "SystemCommFP.h" #include "TaskGeneral.h" //#include "Voltages.h" // TODO uncomment #include "WatchdogMgmt.h" /** * @addtogroup TaskGeneral * @{ */ // ********** private data ********** /*********************************************************************//** * @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: Executive functions running in general task are called. * @return none *************************************************************************/ void taskGeneral( void ) { // 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(); // Control Permeate Tank execPermeateTankController(); // Monitor voltages // execVoltagesMonitor(); // // Monitor DD // execDDInterfaceMonitor(); // Run operation mode state machine execOperationModes(); // // // Manage NVDataMgmt process record state machine // execNVDataMgmtProcessRecord(); // Control RO pumps execROPumpController(); // Manage alarm state execAlarmMgmt(); // Manage data to be transmitted to other sub-systems execSystemCommTx(); } /**@}*/