CanVar.h 23 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604
  1. /*
  2. * @Author : ChenJie
  3. * @Date : 2021-12-27 11:21:08
  4. * @Version : V3.0
  5. * @LastEditors : ChenJie
  6. * @LastEditTime : 2022-01-11 17:31:05
  7. * @Description : file content
  8. * @FilePath : \VehicleControl\VehicleControl\src\System\Vehicle\Communication\CanVar.h
  9. */
  10. /*
  11. * CanVar.h
  12. *
  13. * Created on: 2021年12月27日
  14. * 编码
  15. * Author: QiXiang_CHENJIE
  16. */
  17. #ifndef SYSTEM_VEHICLE_COMMUNICATION_CANVAR_H_
  18. #define SYSTEM_VEHICLE_COMMUNICATION_CANVAR_H_
  19. #include "Std_Types.h"
  20. #include "HardwareLib.h"
  21. /************************************************************
  22. *BCU->Ebc解码变量存放区
  23. ************************************************************/
  24. extern UINT32 BcuInTable[130];
  25. extern BOOL BcuRxShortError[130];
  26. extern BOOL BcuRxLongError[130];
  27. extern UINT8 BcuRxErrorCounter[130];
  28. extern UINT8 BcuRxFlag[130];
  29. extern UINT8 BMS13_ReqVIN;
  30. extern UINT8 BMS11_Fult1_DelTemp;
  31. extern UINT8 BMS11_Fult1_OverTemp;
  32. extern UINT8 BMS11_Fult1_PackOverHVolt;
  33. extern UINT8 BMS11_Fult1_PackLowHVolt;
  34. extern UINT8 BMS11_Fult1_LowSOC;
  35. extern UINT8 BMS11_Fult1_OverUcell;
  36. extern UINT8 BMS11_Fult1_LowUcell;
  37. extern UINT8 BMS11_Fult1_LowInsRes;
  38. extern UINT8 BMS11_Fult1_UcellUniformity;
  39. extern UINT8 BMS11_Fult1_OverChg;
  40. extern UINT8 BMS11_Fult1_OverSOC;
  41. extern UINT8 BMS11_Fult1_SOCChangeFast;
  42. extern UINT8 BMS11_Fult1_BatSysNotMatch;
  43. extern UINT8 BMS11_Fult1_HVILFault;
  44. extern UINT8 BMS12_Fult2_FaultNum;
  45. extern UINT8 BMS12_Fult2_CellOverDischrg;
  46. extern UINT8 BMS12_Fult2_CellLowTemp;
  47. extern UINT8 BMS12_Fult2_PackFireWarning;
  48. extern UINT8 BMS12_Fult2_OverDischrgCurr;
  49. extern UINT8 BMS12_Fult2_OverChrgCurrInTheDrive;
  50. extern UINT8 BMS12_Fult2_CurrSensorErr;
  51. extern UINT8 BMS12_Fult2_PowerSupplyErr;
  52. extern UINT8 BMS12_Fult2_TMSErr;
  53. extern UINT8 BMS12_Fult2_HeatingFilmErr;
  54. extern UINT8 BMS12_Fult2_PackSelfProtect;
  55. extern UINT8 BMS12_Fult2_MainLoopPrechrgErr;
  56. extern UINT8 BMS12_Fult2_AuxLoopPrechrgErr;
  57. extern UINT8 BMS12_Fult2_ChrgInsLowErr;
  58. extern UINT8 BMS12_Fult2_ACANLost;
  59. extern UINT8 BMS12_Fult2_InnerCommunicationErr;
  60. extern UINT8 BMS12_Fult2_DCDCErr;
  61. extern UINT8 BMS12_Fult2_BranchBreakErr;
  62. extern UINT8 BMS12_Fult2_HeatRelayOpenErr;
  63. extern UINT8 BMS12_Fult2_HeatRelayWeldErr;
  64. extern UINT8 BMS12_Fult2_MainPosRelayOpenErr;
  65. extern UINT8 BMS12_Fult2_MainPosRelayWeldErr;
  66. extern UINT8 BMS12_Fult2_MainNegRelayOpenErr;
  67. extern UINT8 BMS12_Fult2_MainNegRelayWeldErr;
  68. extern UINT8 BMS12_Fult2_DCChrgPos1RelayOpenErr;
  69. extern UINT8 BMS12_Fult2_DCChrgPos1RelayWeldErr;
  70. extern UINT8 BMS12_Fult2_DCChrgNeg1RelayOpenErr;
  71. extern UINT8 BMS12_Fult2_DCChrgNeg1RelayWeldErr;
  72. extern UINT8 BMS12_Fult2_DCChrgPos2RelayOpenErr;
  73. extern UINT8 BMS12_Fult2_DCChrgPos2RelayWeldErr;
  74. extern UINT8 BMS12_Fult2_DCChrgNeg2RelayOpenErr;
  75. extern UINT8 BMS12_Fult2_DCChrgNeg2RelayWeldErr;
  76. extern UINT8 BMS12_Fult2_ChrgConnectErr;
  77. extern UINT8 BMS12_ult2_OverDischrgCurrWhenInChrg;
  78. extern UINT8 BMS12_Fult2_OverChrgCurrInTheChrg;
  79. extern UINT8 BMS12_Fult2_ChrgNTCErr;
  80. extern UINT8 BMS12_Fult2_ChrgNTCTempOver;
  81. extern UINT8 BMS12_Fult2_ELockErr;
  82. extern UINT8 BMS12_Fult2_FireDetectorEr;
  83. extern UINT8 BMS12_Fult2_ContiDischrgCurrOverLoad;
  84. extern UINT8 BMS12_Fult2_SOCDifferErr;
  85. extern UINT8 BMS12_Fult2_ContiChrgCurrOverLoad;
  86. extern UINT8 BMS1_MainPosRelaySt;
  87. extern UINT8 BMS1_MainNegRelaySt;
  88. extern UINT8 BMS1_PreChgRelaySt;
  89. extern UINT8 BMS1_DCChrgPos1RelaySt;
  90. extern UINT8 BMS1_DCChrgNeg1RelaySt;
  91. extern UINT8 BMS1_DCChrgPos2RelaySt;
  92. extern UINT8 BMS1_DCChrgNeg2RelaySt;
  93. extern UINT8 BMS1_HeatPosRelaySt;
  94. extern UINT8 BMS1_HeatNegRelaySt;
  95. extern UINT8 BMS1_SysSts;
  96. extern UINT8 BMS1_Life;
  97. extern UINT8 BMS1_BalanceStatus;
  98. extern UINT8 BMS1_DCChrgConnectSt;
  99. extern UINT8 BMS1_ChrgMode;
  100. extern UINT8 BMS1_ChrgStatus;
  101. extern UINT8 BMS1_HeatingStatus;
  102. extern UINT8 BMS1_CoolingStatus;
  103. extern UINT8 BMS2_SOC;
  104. extern UINT8 BMS2_SOH;
  105. extern UINT8 BMS2_FaultCode;
  106. extern UINT8 BMS2_FaultLevel;
  107. extern UINT8 BMS2_RqHVPoerOff;
  108. extern UINT8 BMS2_Life;
  109. extern UINT8 BMS4_InsDetectorSt;
  110. extern UINT8 BMS8_Max_Temp;
  111. extern UINT8 BMS8_Min_Temp;
  112. extern UINT8 BMS8_Avg_Temp;
  113. extern UINT8 BMS8_MaxTempSysNr;
  114. extern UINT8 BMS8_MaxTempNr;
  115. extern UINT8 BMS8_MinTempSysNr;
  116. extern UINT8 BMS8_MinTempNr;
  117. extern UINT8 BMS7_MaxUcellSysNr;
  118. extern UINT8 BMS7_MinUcellSysNr;
  119. extern UINT8 BMS23_Gun1DCPosTemp;
  120. extern UINT8 BMS23_Gun1DCNegTemp;
  121. extern UINT8 BMS23_Gun2DCPosTemp;
  122. extern UINT8 BMS23_Gun2DCNegTemp;
  123. extern UINT8 BMS_Cell_TempN[64];
  124. extern UINT8 BMS_SN_SysCode[24];
  125. extern UINT8 BMS21_BattType;
  126. extern UINT8 BMS21_CoolType;
  127. extern UINT8 BMS21_Manufacture;
  128. extern UINT8 BMS21_ProtocolEditionH;
  129. extern UINT8 BMS21_ProtocolEditionL;
  130. extern UINT8 BMS9_TotCSCNum;
  131. extern UINT8 BMS9_PackTotTempNum;
  132. extern UINT8 BMS9_HVBranchNum;
  133. extern UINT8 BMS9_SingleHVBranchCellNum;
  134. extern UINT8 BMS9_BattSysNum;
  135. extern UINT8 BMS9_BattSysSeqNum;
  136. extern UINT8 BMS22_AvaiMaxSOC;
  137. extern UINT8 BMS22_AvaiMinSOC;
  138. extern UINT8 BMS22_AvaiMaxTemp;
  139. extern UINT8 BMS22_AvaiMinTemp;
  140. extern UINT8 BMS10_SubSysEncodingLen;
  141. extern UINT8 BMS10_SubSysIdx;
  142. extern UINT8 BMS10_SubSysErrNum;
  143. extern UINT8 BMS28_ReqMode;
  144. extern UINT8 BMS28_HVCmd;
  145. extern UINT8 BMS28_ChgSts;
  146. extern UINT8 BMS28_HVRelaySts;
  147. extern UINT8 BMS28_SetTemp;
  148. extern UINT8 BMS28_Life;
  149. extern UINT8 BMS28_CRC;
  150. extern UINT8 TMS_WorkStatus;
  151. extern UINT8 TMS_HVRelayST;
  152. extern UINT8 TMS_OutletTemp;
  153. extern UINT8 TMS_InletTemp;
  154. extern UINT8 TMS_Version;
  155. extern UINT8 TMS_ErrCode;
  156. extern UINT8 TMS_FaultLevel;
  157. extern UINT8 BCU_SnMsgFlag;
  158. extern UINT16 BMS_Cell_Volt[384];
  159. extern UINT16 BMS11_PackOutsideVolt;
  160. extern UINT16 BMS2_PackCurrent;
  161. extern UINT16 BMS2_PackInsideVolt;
  162. extern UINT16 BMS4_PosIsolation;
  163. extern UINT16 BMS4_NegIsolation;
  164. extern UINT16 BMS4_SysInsRes;
  165. extern UINT16 BMS6_Max_Ucell;
  166. extern UINT16 BMS6_Min_Ucell;
  167. extern UINT16 BMS6_Avg_Ucell;
  168. extern UINT16 BMS6_SOE;
  169. extern UINT16 BMS7_MaxUcellNr;
  170. extern UINT16 BMS7_MinUcellNr;
  171. extern UINT16 BMS23_RemainChgTi;
  172. extern UINT16 BMS21_RateCap;
  173. extern UINT16 BMS21_RateHVolt;
  174. extern UINT16 BMS21_RatePower;
  175. extern UINT16 BMS9_PackTotCellNum;
  176. extern UINT16 BMS22_PackAvaiMaxVolt;
  177. extern UINT16 BMS22_PackAvaiMinVolt;
  178. extern UINT16 BMS_SoftwareVersion;
  179. extern UINT16 BMS_HardwareVersion;
  180. extern UINT16 BMS3_MaxDischgPow;
  181. extern UINT16 BMS3_MaxChgPow;
  182. extern UINT16 BMS3_MaxInstantDischgPow;
  183. extern UINT16 BMS3_MaxiInstantChgPow;
  184. extern UINT16 BMS5_DischgCurMaxAllw;
  185. extern UINT16 BMS5_ChrgCurMaxAllw;
  186. extern UINT16 BMS5_InstChrgCurMaxAllw;
  187. extern UINT16 BMS5_InstDischrgCurMaxAllw;
  188. extern UINT16 BMS26_Bat_InstantConsume;
  189. extern UINT16 BMS26_Bat_TotalConsume;
  190. extern UINT16 BMS26_ChgReqVoltage;
  191. extern UINT16 BMS26_ChgReqCurrent;
  192. extern UINT16 BMS28_HVVolt;
  193. extern UINT16 TMS_ReqPow;
  194. extern UINT32 BMS1_RechrgCycels;
  195. extern UINT32 BMS14_TotalChargeAh;
  196. extern UINT32 BMS14_TotalDischargeAh;
  197. extern UINT32 BMS15_TotalChargeKwh;
  198. extern UINT32 BMS15_TotalDischargeKwh;
  199. extern UINT32 BMS16_TotalEneryECOChargeAh;
  200. extern UINT32 BMS16_TotalEneryECOChargeKwh;
  201. extern UINT32 BMS17_TotalStationChargeAh;
  202. extern UINT32 BMS17_TotalStationChargeKwh;
  203. extern UINT32 BMS18_TotalPoleChargeAh;
  204. extern UINT32 BMS18_TotalPoleChargeKwh;
  205. extern UINT32 BMS19_SingleChargeAh;
  206. extern UINT32 BMS19_SingleChargeKwh;
  207. /*************************************************************
  208. *Ebc->Bcu组码变量存放区
  209. ************************************************************/
  210. extern UINT32 Ebc2BcuOutTable[5][2];
  211. // extern UINT8 VCU_Life;
  212. extern UINT8 VCU_ReqHV;
  213. extern UINT8 VCU_DCDCSts;
  214. extern UINT8 VCU_DCACSts;
  215. extern UINT8 VCU_DCAPSts;
  216. // extern UINT8 VCU_VehicleSpeed;
  217. extern UINT8 VCU_PosRlySts;
  218. extern UINT8 VCU_PosRlyErrSts;
  219. extern UINT8 VCU_PTCRlSts;
  220. extern UINT8 VCU_PTCRlErrSts;
  221. extern UINT8 VCU_StopChgCmd;
  222. extern UINT8 VCU_HVInterlock;
  223. extern UINT8 VCU_AssistRlySts;
  224. extern UINT8 VCU_AssistRlyErrSts;
  225. extern UINT8 VCU_ACRlySts;
  226. extern UINT8 VCU_ACRlyErrSts;
  227. extern UINT8 ISO_WorkStatus;
  228. extern UINT8 ISO_FaultLevel;
  229. extern UINT8 VIN_FrameNo;
  230. extern UINT8 VCU_VIN[17];
  231. extern UINT8 EBC_State;
  232. extern UINT8 EBC_ForbidHVOn;
  233. extern UINT8 EBC_RequestHVOff;
  234. extern UINT8 EBC_ChgFaultFlag;
  235. extern UINT8 EBC_LockupFaultFlag;
  236. extern UINT8 EBC_ChgCnctOverTemp;
  237. extern UINT8 EBC_DischgHIVLFlag;
  238. extern UINT8 EBC_ChargeHIVLFlag;
  239. extern UINT8 EBC_DChgCnctOverTemp;
  240. extern UINT8 EBC_FaultLevel;
  241. extern UINT8 EBC_FaultCode;
  242. extern UINT8 EBC_ChargingStatus;
  243. extern UINT8 EBC_ActiveHeatReq;
  244. extern UINT8 EBC_AirPressure;
  245. // extern UINT8 EBC_Life;
  246. // extern UINT8 EBC_ChgPos1Temp;
  247. // extern UINT8 EBC_ChgNeg1Temp;
  248. // extern UINT8 EBC_ChgPos2Temp;
  249. // extern UINT8 EBC_ChgNeg2Temp;
  250. // extern UINT8 EBC_DchgPos1Temp;
  251. // extern UINT8 EBC_DchgNeg1Temp;
  252. // extern UINT8 EBC_DchgPos2Temp;
  253. // extern UINT8 EBC_DchgNeg2Temp;
  254. extern UINT16 ISO_PosResis;
  255. extern UINT16 ISO_NegResis;
  256. /*************************************************************
  257. *Vcu->Ebc组码变量存放区
  258. ************************************************************/
  259. extern UINT8 VcuRxFlag[8];
  260. extern UINT32 VcuInTable[8];
  261. extern BOOL VcuRxShortError[8];
  262. extern BOOL VcuRxLongError[8];
  263. extern UINT8 VcuRxErrorCount[8];
  264. extern UINT8 Checksum;
  265. extern UINT8 VCU_Life;
  266. extern UINT8 VCU_HvOnOff;
  267. extern UINT8 VCU_AuxOnOff;
  268. extern UINT8 VCU_VehicleSpeed;
  269. extern UINT8 VCU_HeatOnOff;
  270. extern UINT8 VCU_MainPosRlySts;
  271. extern UINT8 VCU_MainNegRlySts;
  272. extern UINT8 VCU_PreChgRlySts;
  273. extern UINT8 VCU_AuxRlySts;
  274. extern UINT8 VCU_MainMotRlySts;
  275. extern UINT8 VCU_MainMotRlyErrSts;
  276. extern UINT8 VCU_Assist1RlySts;
  277. extern UINT8 VCU_Assist1RlyErrSts;
  278. extern UINT8 VCU_Assist2RlySts;
  279. extern UINT8 VCU_Assist2RlyErrSts;
  280. extern UINT8 VCU_Assist3RlySts;
  281. extern UINT8 VCU_Assist3RlyErrSts;
  282. extern UINT8 VCU_Assist4RlySts;
  283. extern UINT8 VCU_Assist4RlyErrSts;
  284. extern UINT8 VCU_VIN[17];
  285. extern UINT8 DrvMotPosRySts;
  286. extern UINT8 VehSts;
  287. extern UINT8 BrakePedal;
  288. extern UINT8 HandbrakeSts;
  289. extern UINT8 GearPos;
  290. extern UINT16 VehSpd;
  291. extern UINT32 VCU_TotalDistance;
  292. extern UINT8 EBC_VinMsgFlag;
  293. /*************************************************************
  294. *Ebc->Vcu组码变量存放区
  295. ************************************************************/
  296. extern UINT32 Ebc2VcuOutTable[25][2];
  297. extern UINT8 ReqVIN;
  298. extern UINT8 ReqHVOff;
  299. extern UINT8 ChgSysNum;
  300. extern UINT8 Fult2_MainPosRelayWeldErr;
  301. extern UINT8 Fult2_MainNegRelayWeldErr;
  302. extern UINT8 Fult2_DCChgPos1RelayWeldErr;
  303. extern UINT8 Fult2_DCChgNeg1RelayWeldErr;
  304. extern UINT8 Fult2_DCChgPos2RelayWeldErr;
  305. extern UINT8 Fult2_DCChgNeg2RelayWeldErr;
  306. extern UINT8 HeatPosRelayWeldErr;
  307. extern UINT8 HeatNegRelayWeldErr;
  308. extern UINT8 MainPosRelaySt;
  309. extern UINT8 MainNegRelaySt;
  310. extern UINT8 PreChgRelaySt;
  311. extern UINT8 DCChrgPos1RelaySt;
  312. extern UINT8 DCChrgNeg1RelaySt;
  313. extern UINT8 DCChrgPos2RelaySt;
  314. extern UINT8 DCChrgNeg2RelaySt;
  315. extern UINT8 AuxRelayWeldErr;
  316. extern UINT8 Fult2_BranchBreakErr;
  317. extern UINT8 Fult2_OverChrgCurrInTheDrive;
  318. extern UINT8 Fult2_MainPosRelayOpenErr;
  319. extern UINT8 Fult2_MainNegRelayOpenErr;
  320. extern UINT8 Fult2_DCChgPos1RelayOpenErr;
  321. extern UINT8 Fult2_DCChgPos2RelayOpenErr;
  322. extern UINT8 Fult2_DCChgNeg1RelayOpenErr;
  323. extern UINT8 Fult2_DCChgNeg2RelayOpenErr;
  324. extern UINT8 Fult2_HeatRelayWeldErr;
  325. extern UINT8 Fult2_HeatRelayOpenErr;
  326. extern UINT8 Fult2_TMSErr;
  327. extern UINT8 Fult2_PowerSupplyErr;
  328. extern UINT8 Fult2_PackSelfProtect;
  329. extern UINT8 Fult2_ChrgNTCTempOver;
  330. extern UINT8 BattSysNum;
  331. extern UINT8 BatSysFaultCode;
  332. extern UINT8 ST1_CheckSum;
  333. extern UINT8 ST1_Life;
  334. extern UINT8 BMS_SysSts;
  335. extern UINT8 AssisRelaySts;
  336. extern UINT8 BlanceSts;
  337. extern UINT8 DCChrgConnectSt;
  338. extern UINT8 ChrgMode;
  339. extern UINT8 ChrgStatus;
  340. extern UINT8 FaultLevel;
  341. extern UINT8 Fult1_DelTemp;
  342. extern UINT8 Fult1_OverTemp;
  343. extern UINT8 Fult1_PackOverHVolt;
  344. extern UINT8 Fult1_PackLowHVolt;
  345. extern UINT8 Fult1_LowSOC;
  346. extern UINT8 Fult1_OverUcell;
  347. extern UINT8 Fult1_LowUcell;
  348. extern UINT8 Fult1_LowInsRes;
  349. extern UINT8 Fult1_UcellUniformity;
  350. extern UINT8 Fult2_CellLowTemp;
  351. extern UINT8 Fult2_OverDischrgCurr;
  352. extern UINT8 Fult2_OverChrgCurrInTheChrg;
  353. extern UINT8 Fult_BranchVolUniformity;
  354. extern UINT8 Fult_BMSHardware;
  355. extern UINT8 Fult1_OverSOC;
  356. extern UINT8 Fult1_SOCChangeFast;
  357. extern UINT8 Fult2_InnerCommunicationErr;
  358. extern UINT8 Fult1_BatSysNotMatch;
  359. extern UINT8 Fult1_HVILFault;
  360. extern UINT8 Fult2_FireDetectorEr;
  361. extern UINT8 Fult2_PackFireWarning;
  362. extern UINT8 Fult2_FaultNum;
  363. extern UINT8 SOC;
  364. extern UINT8 SOH;
  365. extern UINT8 Max_Temp;
  366. extern UINT8 Min_Temp;
  367. extern UINT8 Avg_Temp;
  368. extern UINT8 MaxTempSysNr;
  369. extern UINT8 MaxTempNr;
  370. extern UINT8 MinTempSysNr;
  371. extern UINT8 MinTempNr;
  372. extern UINT8 MaxUcellSysNr;
  373. extern UINT8 MaxUcellNr;
  374. extern UINT8 MinUcellSysNr;
  375. extern UINT8 MinUcellNr;
  376. extern UINT8 Gun1DCNegTemp;
  377. extern UINT8 Gun1DCPosTemp;
  378. extern UINT8 Gun2DCNegTemp;
  379. extern UINT8 Gun2DCPosTemp;
  380. extern UINT8 HeatPosRelaySt;
  381. extern UINT8 HeatNegRelaySt;
  382. extern UINT8 UcellFrameNum;
  383. extern UINT8 UcellCSCNum;
  384. extern UINT8 TempFrameNum;
  385. extern UINT8 TempCSCNum;
  386. // extern UINT8 CurCSC_TempN;
  387. // extern UINT8 CurCSC_TempN1;
  388. // extern UINT8 CurCSC_TempN2;
  389. // extern UINT8 CurCSC_TempN3;
  390. // extern UINT8 CurCSC_TempN4;
  391. // extern UINT8 CurCSC_TempN5;
  392. extern UINT8 BattType;
  393. extern UINT8 CoolType;
  394. extern UINT8 TotCSCNum;
  395. extern UINT8 CellVoltPlat;
  396. extern UINT8 MinAvlCellVolt;
  397. extern UINT8 MaxAvlCellVolt;
  398. extern UINT8 EBC_DchgPos1Temp;
  399. extern UINT8 EBC_DchgNeg1Temp;
  400. extern UINT8 EBC_DchgPos2Temp;
  401. extern UINT8 EBC_DchgNeg2Temp;
  402. extern UINT8 EBC_ChgPos1Temp;
  403. extern UINT8 EBC_ChgNeg1Temp;
  404. extern UINT8 EBC_ChgPos2Temp;
  405. extern UINT8 EBC_ChgNeg2Temp;
  406. extern UINT8 ReqMode;
  407. extern UINT8 HVCmd;
  408. extern UINT8 ChgSts;
  409. extern UINT8 HVRelaySts;
  410. extern UINT8 SetTemp;
  411. extern UINT8 Bms_Life;
  412. extern UINT8 CRC;
  413. extern UINT8 TMS_WorkStatus;
  414. extern UINT8 TMS_HVRelayST;
  415. extern UINT8 TMS_OutletTemp;
  416. extern UINT8 TMS_InletTemp;
  417. extern UINT8 TMS_ErrCode;
  418. extern UINT8 TMS_FaultLevel;
  419. // extern UINT8 EBC_Life;
  420. extern UINT8 EBC_LockupSts;
  421. extern UINT8 EBC_ConnectorSts;
  422. extern UINT8 EBC_DischgConnectorSts;
  423. extern UINT8 EBC_ChgConnectorSts;
  424. extern UINT8 EBC_FaultLevel;
  425. extern UINT8 EBC_FaultCode;
  426. extern UINT16 BMS_SoftwareVersion;
  427. extern UINT16 BMS_HardwareVersion;
  428. extern UINT16 PackCurrent;
  429. extern UINT16 InstChrgCurMaxAllw;
  430. extern UINT16 InstDischrgCurMaxAllw;
  431. extern UINT16 PosIsolation;
  432. extern UINT16 NegIsolation;
  433. extern UINT16 PackInsideVolt;
  434. extern UINT16 PackOutsideVolt;
  435. extern UINT16 Max_Ucell;
  436. extern UINT16 Avg_Ucell;
  437. extern UINT16 Min_Ucell;
  438. extern UINT16 ChrgCurMaxAllw;
  439. // extern UINT16 CurCSC_UCellN;
  440. // extern UINT16 CurCSC_UCellN1;
  441. // extern UINT16 CurCSC_UCellN2;
  442. extern UINT16 Pack_RateCap;
  443. extern UINT16 Pack_RateHVolt;
  444. extern UINT16 Pack_RatePower;
  445. extern UINT16 PackTotCellNum;
  446. extern UINT16 PackTotTempNum;
  447. extern UINT16 SingleChargeKwh;
  448. extern UINT16 HVVolt;
  449. // extern UINT16 TMS_ReqPow;
  450. extern UINT32 TotalChargeKwh;
  451. extern UINT32 TotalDischargeKwh;
  452. extern UINT32 TotalEneryECOChargeKwh;
  453. extern UINT32 TotalStationChargeKwh;
  454. extern UINT32 TotalPoleChargeKwh;
  455. /*************************************************************
  456. *Ebc->ble组码变量存放区
  457. ************************************************************/
  458. // Ble
  459. extern uint16 bcud_E_snglChrg; //单次充电能量,精度0.1kwh
  460. extern uint16 ebcd_Nr_swapBatt; //换电次数
  461. extern uint16 ebcd_Nr_swapSucBatt; //换电成功次数
  462. extern uint16 bcud_pct_soc; //电池SOC,精度0.1
  463. extern uint16 bcud_Q_snglChrg; //单次充电容量,精度0.1Ah
  464. extern uint16 bcud_V_battU; //电池电压 精度0.1V
  465. extern uint32 bcud_E_accChrg; //累计充电能量,精度0.1kwh
  466. extern uint32 bcud_E_accDischrg; //累计放电能量,精度0.1kwh
  467. extern uint32 bcud_E_accPlugInChrg; //累计插枪充电能量,精度0.1kwh
  468. extern uint32 bcud_E_accRecovry; //累计回收能量,精度0.1kwh
  469. extern uint32 bcud_E_accSwapBatt; //累计换电站能量,精度0.1kwh
  470. extern uint32 bcud_Q_accChrg; //累计充电容量,精度0.1ah
  471. extern uint32 bcud_Q_accDischrg; //累计放电容量,精度0.1ah
  472. extern uint32 bcud_Q_accPlugInChrg; //累计插枪充电容量,精度0.1ah
  473. extern uint32 bcud_Q_accRecovry; //累计回收容量,精度0.1ah
  474. extern uint32 bcud_Q_accSwapBatt; //累计换电站容量,精度0.1ah
  475. extern uint32 vcud_M_accDrv; //累计行驶里程,精度0.1km
  476. extern uint8 bcud_pct_bcuSoh; //电池Soh,精度0.4%
  477. extern uint8 bcud_st_bcuComun; //电池通讯状态,0-通信中断,1-通信正常
  478. extern uint8 bcud_st_bcuMainRelay; //主继电器信号,0-保留 1-断开,2-关闭 3-异常
  479. extern uint8 bcud_st_bcuTmsLiquid; //热管理液位状态,1-液位正常,0-液位过低
  480. extern uint8 bcud_st_hvWork; //电池高压状态,0-高压开启 1-预充,2-高压关断,3-高压上电故障
  481. extern uint8 bcuv_Num_battSn[32]; //电池SN号码
  482. extern uint8 ebcd_flg_pluginLockSig; //互锁接插件信号状态,1-触发,0-无触发
  483. extern uint8 ebcd_flg_swapAdmit; //允许换电判断:0-不允许,1-允许
  484. extern uint8 ebcd_Nr_errMax; //故障等级:当前故障最大等级
  485. extern uint8 ebcd_Num_err1; //故障码1
  486. extern uint8 ebcd_Num_err2; //故障码2
  487. extern uint8 ebcd_st_ebcConnect; // Ebc通讯模式,0-无线蓝牙,1-有线连接 ,默认0
  488. extern uint8 ebcd_st_ebcLockWork; // Ebc解锁模式,0-单步模式,1-自动模式
  489. extern uint8 ebcd_st_ebcWork; // Ebc当前状态 0-行车,1-通讯,2-换电
  490. extern uint8 ebcd_st_errTable1; //故障表1,bit0-气压异常,bit1-液位异常,bit2-Flash读取异常
  491. extern uint8 ebcd_st_errTable2; //故障表2,bit0-互锁异常,bit1-整车CAN异常,bit2-电池CAN异常,bit3-锁钩异常,bit4-升降机异常,bit5-电池位置异常
  492. extern uint8 ebcd_st_errTable3; //故障表3,bit0-放电互锁异常,bit1-充电互锁异常,bit2-整车高压互锁异常
  493. extern uint8 ebcd_st_lockSensor; //锁紧传感器信号:bit0-bit3:传感器0-3的状态每,bit:1-触发,0-不触发
  494. extern uint8 ebcd_st_lockSucJug; //锁紧完成判断:0-完全未锁紧,1-完全锁紧,2-未完全锁紧"
  495. extern uint8 ebcd_st_pedstSensor; //底座落座传感器:bit0-bit1:传感器0-1的状态,每bit:1-触发,0-无触发
  496. extern uint8 ebcd_st_pedstSucJug; //电池底座到位判断:0-完全未到位,1-完全到位,2-未完全到位
  497. extern uint8 ebcd_st_pluginLockSig; //互锁接插件信号具体状态,1-触发,0-无触发
  498. extern uint8 ebcd_st_unlockSensor; //解锁传感器信号:bit0-bit3:传感器0-3的状态每,bit:1-触发,0-不触发
  499. extern uint8 ebcd_st_unlockSucJug; //解锁完成判断:0-完全未解锁,1-完全解锁,2-未完全解锁
  500. // extern uint8 vcud_P_airSensor; //压力传感器气压值:单位Mpa,精度0.01Mpa
  501. extern uint8 vcud_P_airSensorBack; //后桥气压值,单位Mpa,精度0.01Mpa
  502. extern uint8 vcud_P_airSensorForward; //前桥气压值,单位Mpa,精度0.01Mpa
  503. extern uint8 vcud_st_carStart; //整车启动状态,0001-车辆启动状态,0010-熄火,0011-其他状态,1111-无效
  504. extern uint8 vcud_st_footbrake; //脚刹信号,0-无效,1-有效
  505. extern uint8 vcud_st_gear; //档位信号,FF-倒挡(R),0-空挡(N),X-前进档(DX)X取1-12
  506. extern uint8 vcud_st_handbrake; //手刹信号,0-无效,1-有效
  507. extern uint8 vcud_st_keyOn; //钥匙信号,1-上电,0-下电
  508. extern uint8 vcud_st_Steer; //方向盘信号,bit0-左侧转向灯,bit1-右侧转向灯,每bit 0-OFF,1-ON
  509. extern uint8 vcud_st_vcuComun; // vcu通讯状态,0-通信中断,1-通信正常
  510. extern uint8 vcuv_Num_vin[17]; // VIN码
  511. extern uint8 bled_flg_lockCmd; //锁钩电磁阀锁紧命令,1-有效,0-无效
  512. extern uint8 bled_flg_unlockCmd; //锁钩电磁阀解锁命令,1-有效,0-无效
  513. extern uint8 bled_flg_lockCmdForce; //锁钩电磁阀锁紧强制命令,1-有效,0-无效
  514. extern uint8 bled_flg_unlockCmdForce; //锁钩电磁阀解锁强制命令,1-有效,0-无效
  515. extern uint8 bled_flg_topAscendCmd; //顶板上升命令,1-有效,0-无效
  516. extern uint8 bled_flg_topDescendCmd; //顶板下降命令,1-有效,0-无效
  517. extern uint8 bled_flg_topAscendCmdForce; //顶板强制上升命令,1-有效,0-无效
  518. extern uint8 bled_flg_topDescendCmdForce; //顶板强制下降命令,1-有效,0-无效
  519. extern uint8 bled_flg_openDustReCmd; //除尘打开指令,1-有效,0-无效
  520. extern uint8 bled_flg_closeDustReCmd; //除尘关闭指令,1-有效,0-无效
  521. extern uint8 bled_flg_Heart; //心跳维持指令
  522. extern uint8 bled_flg_getEbcData; //获取ebc数据指令
  523. extern uint8 bled_flg_getVcuData; //获取vcu数据指令
  524. extern uint8 bled_flg_getBmsData; //获取bms数据指令
  525. extern uint8 bled_flg_handShake; //握手指令
  526. extern uint8 bled_flg_swapBattDone; //换电完成指令
  527. extern uint8 bled_flg_backToDrv; //回到行驶状态指令
  528. extern uint8 bled_flg_autoLock; //自动锁定指令
  529. extern uint8 bled_flg_autoUnlock; //自动解锁指令
  530. extern uint8 bled_flg_toSwapMod; //换到换电状态
  531. extern uint8 bled_flg_safeStopCmd; //急停指令
  532. extern uint32 bled_Nr_softVer; // BLE软件版本
  533. extern uint8 bled_flg_role; // ble的主从模式 01-主,02-从
  534. extern uint8 bled_flg_bleConn; // ble蓝牙连接状态
  535. extern uint8 bled_flg_bleDisconn; // ble蓝牙断开状态
  536. //正式变量
  537. extern uint8 ebcd_flg_Can2SendEnbale;
  538. extern uint8 ebcd_st_toBleAns;
  539. extern uint16 ebcd_P_airSensor;
  540. extern uint8 ebcd_T_plugin[4]; //四个接插件温度
  541. extern uint8 ebcd_flg_forbidHVOn; //禁止高压上电
  542. extern uint8 ebcb_flg_reqHvOff; //请求高压下电
  543. extern uint8 ebcd_flg_LockErr; //锁紧机构故障状态
  544. extern uint8 ebcd_flg_dChrgLockErr; //放电互锁故障状态
  545. extern uint8 ebcd_flg_chrgLockErr; //充电互锁故障状态
  546. extern uint8 ebcd_flg_dChgCnctOverTemp; //放电连接器过温标志
  547. extern uint8 ebcd_st_ebcWork; // Ebc当前状态 0-行车,1-通讯,2-换电
  548. extern uint8 ebcd_Nr_errMax; //故障等级:当前故障最大等级
  549. extern uint8 ebcd_Num_faultCode; // ebc故障码,未定义
  550. extern uint8 ebcd_st_chargingMod; //充电模式,1-车载充电,2-换电站充电
  551. extern uint8 ebdc_st_lockUpState; //锁止机构状态,0-故障,1-解锁成功,2-上锁成功
  552. extern uint8 ebdc_st_ConnecState; //换电连接器状态(充电回路&放电回路同时闭合代表闭合,有一路断开则为断开),0_未连接 1_连接
  553. extern const uint16 T_table[240];
  554. extern const uint32 R_table[240];
  555. extern const uint8 DataPackCounter[21];
  556. extern const uint8 DataPackBegin[21];
  557. #ifdef _APP_TEST_CODE
  558. extern uint16 CANNet_rAccPedUW;
  559. extern uint32 PressureValue;
  560. extern uint16 Distence1;
  561. extern uint16 Distence2;
  562. extern uint8 Switch1;
  563. extern uint8 Switch2;
  564. extern uint8 ControlState;
  565. extern uint32 Control_Times;
  566. extern uint32 PressureValueBuffer;
  567. extern uint32 VehCo_fInputUIA[2];
  568. extern uint16 VehCo_rInputUWA[2];
  569. extern uint16 VehCo_uADChanUWA[_ATD_NUM_CHAN];
  570. extern uint8 VehCo_bDINChanUBA[_DIN_NUM_CHAN];
  571. extern float32 VehCo_uBattF;
  572. extern uint16 VehCo_uAccPedUW;
  573. #define EEPDATA_START_SEC_VAR
  574. #include "MemMap.h"
  575. extern uint32 VehCo_ctEEPTestUB;
  576. extern uint32 VehCo_ctEEPTestUI; //在定义时给EEPROM里的变量赋初值
  577. extern uint32 Control_Times;
  578. #define EEPDATA_STOP_SEC_VAR
  579. #include "MemMap.h"
  580. #endif
  581. #ifdef _APP_TEST_MOTOR_CODE
  582. extern uint8 MotorControlCmd; //电机自动控制模式,0-不控制,1-控制锁紧,2-控制解锁
  583. extern uint8 MotorDebugCmd; //电机调试模式。0-不控制,1-持续锁紧,2-持续解锁
  584. extern uint8 MotorControlEnable; //电机控制使能,每bit代表一个电机从低位开始, 0-不控制,1-控制
  585. extern uint8 MotorControlLockNum; //调试参数
  586. extern uint8 MotorControlunLockNum;
  587. extern uint8 MotorLifeTestCmd;
  588. #define EEPDATA_START_SEC_VAR
  589. #include "MemMap.h"
  590. extern uint16 RunFailedDelay; //电机最大运动时间,超时则取消控制
  591. extern uint16 LockDelay; //电机传感器到位后,延时锁紧时间
  592. extern uint16 LifeTestCounter;
  593. #define EEPDATA_STOP_SEC_VAR
  594. #include "MemMap.h"
  595. #endif
  596. #endif /* SYSTEM_VEHICLE_COMMUNICATION_CANVAR_H_ */