latest version
This commit is contained in:
@@ -41,34 +41,21 @@ typedef enum{
|
||||
|
||||
}gbtCcState_t;
|
||||
|
||||
typedef enum __attribute__((packed)){
|
||||
CONN_NO_ERROR = 0,
|
||||
CONN_ERR_INSULATION = 1,
|
||||
CONN_ERR_EMERGENCY = 2,
|
||||
CONN_ERR_DOOR_OPEN = 3,
|
||||
CONN_ERR_LOCK = 4,
|
||||
CONN_ERR_CONN_TEMP = 5,
|
||||
|
||||
}CONN_Error_t;
|
||||
|
||||
/* Стейты GB/T со стороны EV: постоянно шлём свой пакет, ждём ответ → переход, шлём другой пакет */
|
||||
typedef enum{
|
||||
GBT_DISABLED = 0x10,
|
||||
// GBT_S0_UNCONNECTED = 0x10, //СС1 12V/6V СС2 12V
|
||||
// GBT_S1_CONNECTED = 0x11, //СС1 4V СС2 4V (6V)
|
||||
// GBT_S2_LOCKED = 0x12, //
|
||||
GBT_S3_STARTED = 0x13, // 12V AUX
|
||||
GBT_S31_WAIT_BHM = 0x14, // testing isolation, send CHM receive BHM
|
||||
GBT_S4_ISOTEST = 0x15, // testing isolation, send CHM receive BHM
|
||||
GBT_S5_BAT_INFO = 0x16, // identifying BMS, send CRM receive BRM (long)
|
||||
GBT_S6_BAT_STAT = 0x17, // send CRM(AA), receive BCP (long)
|
||||
GBT_S7_BMS_WAIT = 0x18, // wait for BMS, send CTS+CML receive BRO(00), next BRO(AA)
|
||||
GBT_S8_INIT_CHARGER = 0x19,// starting power modules, send CRO(00)
|
||||
GBT_S9_WAIT_BCL = 0x20, // waiting for BCL (requested voltage), send CRO(00)
|
||||
GBT_S10_CHARGING = 0x21, // charging, contactor ON, send CCS, receiving BCL+BCS+BSM
|
||||
GBT_STOP = 0x22, // normal stop
|
||||
GBT_STOP_CSD = 0x23, // normal stop
|
||||
GBT_ERROR = 0x24, // Error
|
||||
GBT_COMPLETE = 0x25,
|
||||
GBT_DISABLED = 0x10, // сессия выключена
|
||||
GBT_EV_CONNECTING = 0x13, // ждём CHM (ничего не шлём), получили → шлём BHM, переход
|
||||
GBT_EV_SEND_BHM_WAIT_CRM = 0x14, // шлём BHM, ждём CRM(0x00)
|
||||
GBT_EV_HANDSHAKE = 0x15, // изотест на EV не делаем → сразу дальше
|
||||
GBT_EV_RECOGNITION = 0x16, // шлём BRM, ждём CRM(0xAA)
|
||||
GBT_EV_CHARGING_PARAMETERS = 0x17, // шлём BCP, ждём CML → шлём BRO(0x00), BRO(0xAA)
|
||||
GBT_EV_BMS_INIT = 0x18, // пауза 1.5 с (инициализация зарядника)
|
||||
GBT_EV_WAIT_CHARGER_READY = 0x19, // ждём CRO(0xAA) или 500 мс → шлём BCL
|
||||
GBT_EV_CHARGING = 0x20, // шлём BCL (запрос U/I) → зарядка
|
||||
GBT_STOP = 0x30, // остановка: EV/EVSE запросили стоп
|
||||
GBT_STOP_CSD = 0x31, // ожидание CSD от EVSE
|
||||
GBT_ERROR = 0x32, // ошибка
|
||||
GBT_COMPLETE = 0x33, // сессия завершена
|
||||
|
||||
}gbtState_t;
|
||||
|
||||
@@ -166,31 +153,32 @@ typedef struct {
|
||||
}GBT_CSD_t;
|
||||
|
||||
|
||||
typedef struct {
|
||||
uint8_t enablePSU;
|
||||
uint16_t requestedVoltage; // 0.1V/bit
|
||||
uint16_t requestedCurrent; // 0.1A/bit
|
||||
uint8_t chargingMode; // 0x01 - CV, 0x02 - CC
|
||||
uint8_t chargingPercentage; //
|
||||
uint16_t chargingRemainingTimeMin; //
|
||||
uint16_t chargingElapsedTimeMin; //
|
||||
uint8_t chargingElapsedTimeSec; //
|
||||
// typedef struct {
|
||||
// uint8_t enablePSU;
|
||||
// uint16_t requestedVoltage; // 0.1V/bit
|
||||
// uint16_t requestedCurrent; // 0.1A/bit
|
||||
// uint8_t chargingMode; // 0x01 - CV, 0x02 - CC
|
||||
// uint8_t chargingPercentage; //
|
||||
// uint16_t chargingRemainingTimeMin; //
|
||||
// uint16_t chargingElapsedTimeMin; //
|
||||
// uint8_t chargingElapsedTimeSec; //
|
||||
|
||||
CONN_State_t connectorState;
|
||||
CONN_Error_t outputError; // 0 if okay
|
||||
// CONN_State_t connectorState;
|
||||
// CONN_Error_t outputError; // 0 if okay
|
||||
// uint8_t EvConnected;
|
||||
|
||||
|
||||
}GBT_EDCAN_Output_t;
|
||||
// }GBT_EDCAN_Output_t;
|
||||
|
||||
typedef struct {
|
||||
uint8_t PSU_Status;
|
||||
uint16_t measuredVoltage; // 0.1V/bit
|
||||
uint16_t measuredCurrent; // 0.1A/bit
|
||||
// typedef struct {
|
||||
// uint8_t PSU_Status;
|
||||
// uint16_t measuredVoltage; // 0.1V/bit
|
||||
// uint16_t measuredCurrent; // 0.1A/bit
|
||||
|
||||
CONN_Control_t chargeControl;
|
||||
CONN_Error_t chargingError; // 0 if okay
|
||||
// CONN_Control_t chargeControl;
|
||||
// CONN_Error_t chargingError; // 0 if okay
|
||||
|
||||
}GBT_EDCAN_Input_t;
|
||||
// }GBT_EDCAN_Input_t;
|
||||
|
||||
|
||||
/* 500 - Power Supply
|
||||
@@ -222,6 +210,7 @@ extern gbtState_t GBT_State;
|
||||
|
||||
extern ADC_HandleTypeDef hadc1;
|
||||
|
||||
extern GBT_BHM_t GBT_MaxVoltage;
|
||||
extern GBT_BRM_t GBT_EVInfo;
|
||||
extern GBT_BCP_t GBT_BATStat;
|
||||
extern GBT_BCS_t GBT_ChargingStatus;
|
||||
@@ -239,7 +228,6 @@ extern uint8_t GBT_Charger_Enable;
|
||||
extern GBT_StopSource_t GBT_StopSource;
|
||||
|
||||
void GBT_Init();
|
||||
void GBT_Start();
|
||||
void GBT_Reset();
|
||||
//void GBT_Stop(uint32_t causecode);
|
||||
void GBT_StopEV(uint32_t causecode);
|
||||
@@ -258,15 +246,15 @@ void GBT_Delay(uint32_t delay);
|
||||
uint32_t GBT_StateTick();
|
||||
void J_SendPacket(uint32_t PGN, uint8_t pri, uint8_t DLC, uint8_t *data);
|
||||
|
||||
void GBT_SendCCS();
|
||||
void GBT_SendCST(uint32_t Cause);
|
||||
void GBT_SendCRO(uint8_t state);
|
||||
void GBT_SendCML();
|
||||
void GBT_SendCTS();
|
||||
void GBT_SendCHM();
|
||||
void GBT_SendCRM(uint8_t state);
|
||||
void GBT_SendCSD();
|
||||
void GBT_SendCEM(uint32_t ErrorCode);
|
||||
// EV-side GB/T packets (EV->EVSE)
|
||||
void GBT_SendBHM(void);
|
||||
void GBT_SendBRM(void);
|
||||
void GBT_SendBCP(void);
|
||||
void GBT_SendBRO(uint8_t state);
|
||||
void GBT_SendBCL(void);
|
||||
void GBT_SendBCS(void);
|
||||
void GBT_SendBSM(void);
|
||||
void GBT_SendBSD(void);
|
||||
|
||||
|
||||
#endif /* INC_CHARGER_GBT_H_ */
|
||||
|
||||
Reference in New Issue
Block a user