//***************************************************************************** // (C) Automotive Lighting Reutlingen GmbH // Tuebinger Strasse 123, 72762 Reutlingen, Germany // // Automotive Lighting Reutlingen GmbH owns all the rights to this work. // This work shall not be copied, reproduced, used, modified, transferred // or its information shall not be disclosed without the prior written // authorization of Automotive Lighting Reutlingen GmbH. //***************************************************************************** //----------------------------------------------------------------------------- /// \file CddSbc_Router.h /// /// \brief Configuration of CddSbc router /// /// \author ZHAO, Kai ALDE-RT/EES6 //----------------------------------------------------------------------------- #ifndef CDD_SBC_ROUTER_2021_03_01_H_ #define CDD_SBC_ROUTER_2021_03_01_H_ #include #include <..\Cfg\CddSbc_Cfg.h> //----------------------------------------------------------------------------- // Defines //----------------------------------------------------------------------------- //#if (CDD_SBC_CFG_STORE_RESETREASON == STD_ON) typedef enum { eNoResetMCU = 0, // No Reset ePowerOnResetMCU, // MCU PowerOnReset eWatchdogResetMCU, // MCU Watchdog Reset eSoftwareReset, // Software Reset ePLLReset, // PLL Reset eECCReset, // ECC Reset eMCUSelfTestReset, // MCU Self-test Reset eUnderVoltage, // MCU Under Voltage eOtherReasons }teMCUResetType; typedef enum { eNoResetSBC = 0, // No Reset ePowerOnResetSBC, // SBC PowerOnReset eCANWakeUpReset, // Can Wake Up Reset eWatchdogReset, // SBC watchdog eInputWakeUpReset // Input Wake Up Reset }teSBCResetType; //============================================================================= // Prototypes //============================================================================= #if (CDD_SBC_CFG_INIT_OPERATION == STD_ON) void CddSbc_Rou_Init(void); void CddSbc_Rou_DeInit(void); #endif #if (CDD_SBC_CFG_SLEEPMODE == STD_ON) void CddSbc_Rou_SetSleepMode(void); #endif #if (CDD_SBC_CFG_CAN_OPERATION == STD_ON) void CddSbc_Rou_SetCanMode(uint8 ucCanChannel, uint8 ucCanMode); uint8 CddSbc_Rou_GetCanMode(uint8 ucCanChannel); uint8 CddSbc_Rou_GetCanUV(void); #endif #if (CDD_SBC_CFG_CYCLIC_OPERATION == STD_ON) boolean CddSbc_Rou_GetWakeUpStatus(void); #endif #if (CDD_SBC_CFG_STORE_RESETREASON == STD_ON) uint8 CddSbc_Rou_GetSBCResetReason(void); #endif #if (CDD_SBC_CFG_WATCHDOG == STD_ON) #if (CDD_SBC_CFG_TYPE == CFG_SBC_94x1) void CddSbc_Rou_SetWdgWindowModeAnd10ms(void); void CddSbc_Rou_SetWdgWindowModeAnd200ms(void); void CddSbc_Rou_SetWdgTimeoutModeAnd200ms(void); #endif #endif #endif // CDD_SBC_ROUTER_2021_03_01_H_