#ifndef _EV_COMM_H_ #define _EV_COMM_H_ #include #include //------------------------------------------------------------------------------ //EV command address //------------------------------------------------------------------------------ #define CMD_NONE (0) #define CMD_ADDR_ASSIGNMENT (0x00000200) #define CMD_GET_FW_VER (0x00000400) #define CMD_GET_HW_VER (0x00000500) #define CMD_CHARGING_PERMISSION (0x00000600) #define CMD_PRESENT_OUTPUT_POWER (0x00000700) #define CMD_PRESENT_OUTPUT_CAPABILITIES (0x00000800) #define CMD_GET_OUTPUT_REQ (0x00000900) #define CMD_GET_BATTERY_INFO (0x00000A00) #define CMD_EVSE_STOP_CHARGING (0x00000C00) #define CMD_GET_MISC_INFO (0x00000D00) #define CMD_DOWNLOAD_REQ (0x00000E00) #define CMD_START_BLOCK_TRANS (0x00000F00) #define CMD_DATA_TRANS (0x00001000) #define CMD_DOWNLOAD_FINISH (0x00001100) #define CMD_ISOLATION_STATUS (0x00001200) #define CMD_SYNC_RTC (0x00001400) #define CMD_EVSE_PRECHARGE (0x00001500) #define CMD_EVCCID_REQ (0x00001600) // 車端主動 #define ADDRESS_REQ (0x080001FF) #define NOTIFICATION_EV_STATUS (0x08000300) #define NOTIFICATION_EV_STOP (0x08000B00) // 車端回應 #define ACK_EV_FW_VERSION (0x08000400) #define ACK_EV_HW_VERSION (0x08000500) #define ACK_GET_OUTPUT_REQ (0x08000900) #define ACK_GET_EV_BATTERY_INFO (0x08000A00) #define ACK_GET_MISCELLANEOUS_INFO (0x08000D00) #define ACK_DOWNLOAD_FINISH (0x08001100) #define ACK_EVSE_ISOLATION_STATUS (0x08001200) #define ACK_EVSE_PRECHAGE_INFO (0x08001500) #define ACK_EVCCID_REQ (0x08001600) //------------------------------------------------------------------------------ // Send msg to can-bus void SetTargetAddr(uint8_t *target_number, uint8_t index); void GetFirmwareVersion(uint8_t gunIndex, uint8_t toId); void GetHardwareVersion(uint8_t gunIndex, uint8_t toId); void SyncRtcInfo(uint8_t gunIndex, uint8_t toId, int epoch); void SetChargingPermission(uint8_t gunIndex, uint8_t permissionStatus, uint16_t aOutputPw, uint16_t aOutputVol, uint16_t aOutputCur, uint8_t toId); void SetPresentOutputPower(uint16_t outputVol_b1, uint16_t outputCur_b1, uint16_t outputVol_b2, uint16_t outputCur_b2); void SetPresentOutputCapacity(uint16_t aOutputPw_b1, uint16_t aOutputCur_b1, uint16_t aOutputPw_b2, uint16_t aOutputCur_b2); void GetOutputReq(uint8_t gunIndex, uint8_t toId); void GetEvBatteryInfo(uint8_t gunIndex, uint8_t toId); void GetMiscellaneousInfo(uint8_t gunIndex, uint8_t relayStatus, float power, float voltage, uint8_t toId); void SetIsolationStatus(uint8_t gunIndex, uint8_t result, uint8_t toId); void SetEvsePrechargeInfo(uint8_t gunIndex, uint8_t result, uint8_t toId); // 發送電樁主動停止充電結果及原因 void EvseStopChargingEvent(uint8_t stopResult, uint8_t *stopReason, uint8_t toId); void GetEVCCIDReq(uint8_t gunIndex, uint8_t toId); #endif /* _EV_COMM_H_ */