#ifndef _CAN_RX_USER_H_
#define _CAN_RX_USER_H_
#include "RTE.h"
#include "Application.h"
#include "Components.h"


extern uint8_t g_powerState;


extern uint8_t Get_CAN_Num_BMCU_ErrorGrage(void);
extern uint8_t Get_CAN_Num_BMCU_BladeSpeedGear(void);
extern uint8_t Get_CAN_Num_BMCU_PTOSwicthState(void);
extern uint8_t Get_CAN_Num_BMCU_Moto2_Locked_RotorFault(void);
extern uint8_t Get_CAN_Num_BMCU_Moto1_Locked_RotorFault(void);
extern uint8_t Get_CAN_Num_MBMS_Soc(void);
extern uint8_t Get_CAN_Num_MBMS_TOTALWorkState(void);
extern uint8_t Get_CAN_Num_MBMS_TOTALSigOn(void);
extern uint8_t Get_CAN_Num_MBMS_TOTALSigAcc(void);
extern uint8_t Get_CAN_Num_MBMS_TOTALSigCharge(void);
extern uint8_t Get_CAN_Num_MBMS_StatSoc(void);
extern uint8_t Get_CAN_Num_MBMS_StatBattChargeState(void);
extern uint8_t Get_CAN_Num_MBMS_StatBattWorkState(void);
extern uint8_t Get_CAN_Num_MMCU_ErrorGrage(void);
extern uint8_t Get_CAN_Num_MMCU_ChgProtectState(void);
extern uint8_t Get_CAN_Num_MMCU_DCDCEnableState(void);
extern uint8_t Get_CAN_Num_MMCU_ParkingGearState(void);
extern uint8_t Get_CAN_Num_MMCU_SeatDetectState(void);
extern uint8_t Get_CAN_Num_MMCU_LockMotoState(void);
extern uint8_t Get_CAN_Num_MMCU_EBSState(void);
extern uint8_t Get_CAN_Num_MMCU_TravelSpeedGear(void);
extern uint8_t Get_CAN_Num_MMCU_PowerMode(void);
extern uint8_t Get_CAN_Num_MMCU_WorkState(void);
extern uint16_t Get_CAN_Num_MMCU_AccumulatedWorkHours(void);
extern uint8_t Get_CAN_Num_MMCU_SingleWorkingHours(void);
extern uint8_t Get_CAN_Num_SBMS_Soc(void);
extern uint8_t Get_CAN_Num_SMCU_ErrorGrage(void);
extern  uint8_t Get_CAN_Power_State(void);
extern void Set_CAN_ALL_Signal(void);
extern void CAN_0x18E_Receive(uint8_t CopyData []);
extern void CAN_0x225_Receive(uint8_t CopyData []);
extern void CAN_0x234_Receive(uint8_t CopyData []);
extern void CAN_0x38E_Receive(uint8_t CopyData []);
extern void CAN_0x220_Receive(uint8_t CopyData []);
extern void CAN_0x16B_Receive(uint8_t CopyData []);
extern void CAN_0x22F_Receive(uint8_t CopyData []);
extern void CAN_0x170_Receive(uint8_t CopyData []);
extern void CAN_0x339_Receive(uint8_t CopyData []);
extern void CAN_0x17A_Receive(uint8_t CopyData []);

extern void CAN_0x18E_Lost_CallBack(uint8_t CopyData []);
extern void CAN_0x225_Lost_CallBack(uint8_t CopyData []);
extern void CAN_0x234_Lost_CallBack(uint8_t CopyData []);
extern void CAN_0x38E_Lost_CallBack(uint8_t CopyData []);
extern void CAN_0x16B_Lost_CallBack(uint8_t CopyData []);
extern void CAN_0x22F_Lost_CallBack(uint8_t CopyData []);
extern void CAN_0x170_Lost_CallBack(uint8_t CopyData []);

#endif
