#ifndef SOURCE_OPER_H_ #define SOURCE_OPER_H_ typedef enum { APU_OPER_IDX_BOOT = 0U, // 0 APU_OPER_IDX_INITIAL, // 1 APU_OPER_IDX_POST, // 2 APU_OPER_IDX_EMERGENCY, // 3 APU_OPER_IDX_STANDBY, // 4 APU_OPER_IDX_START_CHECK, // 5 APU_OPER_IDX_ENGINE_PREHEAT, // 6 APU_OPER_IDX_CRANKING, // 7 APU_OPER_IDX_ENGINE_WARM_UP, // 8 APU_OPER_IDX_CHECK_OPERATION, // 9 APU_OPER_IDX_GENERATING, // 10 APU_OPER_IDX_ENGINE_STABLED, // 11 APU_OPER_IDX_ENGINE_STOP, // 12 APU_OPER_IDX_ENGINE_COOLDOWN // 13 } eApuOperIdx; typedef enum { GCU_OPER_CMD_STOP = 0U, // 0 GCU_OPER_CMD_CRANKING, // 1 GCU_OPER_CMD_STOP_CRANKING, // 2 GCU_OPER_CMD_GENERATING // 3 } eGcuCmdIdx; typedef enum { ECU_OPER_CMD_STOP = 0U, // 0 ECU_OPER_CMD_START, // 1 ECU_OPER_CMD_EMERGENCY // 2 } eEcuCmdIdx; void CApuOperProcedure(void); void CDebugModeProcedure(void); Uint16 CApuSystemAlarmCheck(void); void CSetApuOperIndex(eApuOperIdx idx); eApuOperIdx CGetApuOperIndex(void); void CLedControlProcedure(void); int16 CGetEngCoolantTemperature(void); Uint16 CGetGeneratorRpm(void); Uint16 CGetEngineActualRpm(void); #endif /* SOURCE_OPER_H_ */