AppSignal.c 5.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108
  1. /*
  2. * @Author : ChenJie
  3. * @Date : 2021-10-14 09:27:15
  4. * @Version : V3.0
  5. * @LastEditors : ChenJie
  6. * @LastEditTime : 2021-10-26 16:07:27
  7. * @Description : Global variable definition c file,此文件存放App使用到的全局变量
  8. * @FilePath : \PLAT\project\ec616_0h00\apps\qx_app\src\AppSignal.c
  9. */
  10. #include "AppSignal.h"
  11. //
  12. /**declear the bool vars**/
  13. volatile BOOL NB_Fota_update_flag = FALSE;
  14. volatile BOOL BMS_Fota_update_flag = FALSE;
  15. volatile BOOL CanInterruptFlag = FALSE;
  16. UINT32 ErrFlg = FALSE;
  17. BOOL downloadReady = FALSE;
  18. /**declear the uint8 vars**/
  19. UINT8 AvgBattTemp = 0;
  20. UINT8 battCellTemp[8] = {0}; //Battery temperature 电池温度数值
  21. UINT8 battHeatEnableState = 0x00; //bms加热使能状态
  22. UINT8 battMOSSwitchState = 0x00; //bms开关状态
  23. UINT8 battSOC = 0; //电池SOC
  24. UINT8 battSOH = 0; //电池SOH
  25. UINT8 battWorkState = 0x00; //电池工作状态
  26. UINT8 BattWorkStateDelay = 0; //电池工作状态(延时处理后的)
  27. UINT8 bmsHwVersion = 0; //bms硬件版本
  28. UINT8 bmsSwVersion = 0; //bms软件版本
  29. UINT8 BMSupdatestatus = 0xFF; //保护板更新状态 0xFF表示未更新,00表示更新成功,c表示校验不过
  30. UINT8 BuzzerControl = 0; //蜂鸣器控制状态
  31. UINT8 CanMsgEnble = 0; //Can send status Can中断状态
  32. UINT8 ChargeForbiddenControl = 0x00; //充电禁止控制
  33. UINT8 chargerConnectState = 0x00; //充电器连接状态
  34. UINT8 DisChargeForbiddenControl = 0x00; //放电禁止控制
  35. UINT8 fastChargeTemp = 0; // fast charge plug temprature 快充插头温度
  36. UINT8 GpsFlag = 0; //GPS 数据有效标志位
  37. UINT8 HeatForceControl = 0; //加热强制控制使能
  38. UINT8 heatTemp1 = 0; //Heating plate1 temperature 加热板温度1
  39. UINT8 heatTemp2 = 0; //Heating plate2 temperature 加热板温度2
  40. UINT8 Lockstatus = 0; //Interlock status 高压互锁状态
  41. UINT8 maxCellTemp = 0; //最高单体温度
  42. UINT8 minCellTemp = 0; //最低单体温度
  43. UINT8 MOSTemp = 0; //mos temprature mos温度
  44. UINT8 nbReservedTemp1 = 0; //
  45. UINT8 nbReservedTemp2 = 0; //
  46. UINT8 normalChargeTemp = 0; // normal charge plug temprature 慢充插头温度
  47. UINT8 packTemp = 0; //battery pack temprature 电池箱体温度
  48. UINT8 PadInterrupt = 0x00; //每个bit代表一个中断标志
  49. UINT8 PosFlag = 0; //定位信息是否有效标志位
  50. UINT8 RelayForbiddenControl = 0x00; //继电器禁止控制
  51. UINT8 RelayForceControl = 0x00; //继电器强制控制
  52. UINT8 reservedSignal1 = 0; //can信息保留信号1
  53. UINT8 reservedSignal2 = 0; //can信息保留信号2
  54. UINT8 reservedSignal3 = 0; //can信息保留信号3
  55. UINT8 reservedSignal4 = 0; //can信息保留信号4
  56. UINT8 reservedSignal5 = 0; //can信息保留信号5
  57. UINT8 reservedSignal6 = 0; //can信息保留信号6
  58. UINT8 reservedSignal7 = 0; //can信息保留信号7
  59. UINT8 reservedSignal8 = 0; //can信息保留信号8
  60. UINT8 TcpErrorcount = 0; //Error count TCP联网错误计数
  61. UINT8 TcpSendLen = 0; //Tcp send status Tcp发送状态
  62. UINT8 TCPWorkState = 0; //Tcp工作状态,0-表示发送,1-表示应答,2-表示监听以及心跳发送
  63. UINT8 UartCmdRecvFlag = 0; //Uart控制应答回复
  64. UINT8 UartErrorFlag = 0; //Uart故障标志位0表示正常,1表示故障
  65. UINT8 UartRecvFlag = 0; //Uart收到消息标志位0表示未收到,1表示收到
  66. UINT8 UDSService[2] = {0}; //uds 服务
  67. UINT8 UDSSubService[2] = {0}; // uds 子服务
  68. UINT8 UDSSubServiceActionCode[2] = {0}; // uds 子服务状态
  69. UINT8 UDSSwitch = 0; //下线检测标志位
  70. UINT8 UartInterruptcount = 0; //串口中断累加值
  71. UINT8 UDSDialogMode = 01; //UDS诊断模式
  72. /**declear the uint16 vars**/
  73. UINT16 avrgCellVol = 0; //平均单体电压
  74. UINT16 battCellU[28] = {0}; //电池包单体电压
  75. UINT16 battI = 0; //电池总电流
  76. UINT16 battPackVol = 0; //电池总压
  77. UINT16 ErrorNum[ErrorNumLength] = {0}; //Error array,故障数组
  78. UINT16 maxCellVol = 0; //最大单体电压
  79. UINT16 minCellVol = 0; //最小单体电压
  80. UINT16 nbHwVersion = 0; //数据模块硬件状态
  81. UINT16 updateDifferDataPackageCounter = 0; //差分包升级计数器
  82. INT16 xyzData[3] = {0}; //xyz三轴数据
  83. /**declear the uint32 vars**/
  84. UINT32 battBalanceoInfo = 0; //电池均衡状态
  85. UINT32 Battdesigncap = 0; //battery design cap 电池包设计容量
  86. UINT32 battProtectState = 0; //电池保护状态
  87. UINT32 battWarningState = 0; //电池告警状态
  88. UINT32 nbSwVersion = 0; // 数据模块软件状态
  89. UINT32 PowerVoltage = 0;
  90. volatile UINT32 TimeCounter = 0x00; //主任务定时器计数
  91. /**declear the Handle vars**/
  92. osMutexId_t Error_Mutex = NULL; //故障互锁句柄
  93. QueueHandle_t GpsRecvHandle = NULL; //定位信息队列句柄
  94. QueueHandle_t UartWriteCmdHandle = NULL; //Uart写命令队列句柄
  95. /**declear other vars**/
  96. AppConfigDataType AppNVMData;
  97. AppDataBody AppDataInfo;
  98. AppAlgorithmData BcuDataInfo;
  99. AppSocketConnectionContext socContext = {-1, 0}; //网络连接状态
  100. process_app gProcess_app; //全局工作状态