app_end_ctr.h 2.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798
  1. #ifndef APP_END_CTR_H
  2. #define APP_END_CTR_H
  3. #define LEFT_LIGHT (0x01)
  4. #define RIGHT_LIGHT (0x02)
  5. #define LIANG_TIME (200)
  6. #define ZONG_TIME (900)
  7. #define SHIELD_XL_TIME (400)
  8. //END CTR
  9. #define KEY_END_CTR_COMMON (0x4200)
  10. #define KEY_END_CTR_SWI_BAT (0x4201)
  11. #define KEY_END_CTR_BAT_INT_EN (0x4202)
  12. #define KEY_END_CTR_BAT_INT_PRE (0x4203)
  13. #define KEY_END_CTR_SOFT_WARE (0x4204)
  14. #define KEY_END_CTR_SN (0x4205)
  15. #define KEY_END_CTR_WRITER_SN (0x4206)
  16. #define KEY_END_CTR_BAT_UPDATE_REQ (0x4207)
  17. #define KEY_END_CTR_BAT_UPDATE (0x4208)
  18. #define KEY_END_CTR_BAT_UPDATE_EXIT (0x4209)
  19. #define KEY_END_CTR_DAN_CI_LI_CHENG (0x420A)
  20. #define KEY_END_CTR_ZHEN_JI_CE_SHI (0x420B)
  21. #define KEY_END_CTR_TEST_INFO (0x420C)
  22. #define KEY_END_CTR_SELF_UP (0x4280)
  23. #define KEY_END_CTR_QD (0x4301)
  24. #define KEY_END_CTR_LOCK (0x4302)
  25. #define KEY_END_CTR_ACC12 (0x4306)
  26. #define KEY_END_CTR_ACC12_TEST (0x4307)
  27. #define KEY_END_CTR_ACC12_TEST_1 (0x4308)
  28. #define KEY_END_CTR_L_R_LIGHT (0x4303)
  29. #define KEY_END_CTR_CARPET_LIGHT (0x4305)
  30. #define KEY_END_CTR_TAIL_LIGHT (0x4318)
  31. #define KEY_END_CTR_HEART_TICK (0x4800)
  32. #pragma pack (push,1)
  33. typedef struct
  34. {
  35. uint16_t key;
  36. uint8_t op_result;
  37. uint8_t qd_sta:1;
  38. uint8_t lock_sta:1;
  39. uint8_t xl_sta:1;
  40. uint8_t side_sta:1;
  41. uint8_t sit_sta:1;
  42. uint8_t carpet_sta:1;
  43. uint8_t tail_sta:1;
  44. uint8_t soak_sta:1;
  45. uint8_t acc12_sta:1;
  46. uint8_t charger_in:1;
  47. uint8_t res4_sta:6;
  48. int8_t moto_temp;
  49. int8_t ps100_temp;
  50. uint8_t bms_1_status;
  51. uint8_t bms_2_status;
  52. uint8_t using_bms_mode;
  53. uint16_t nhb;
  54. }END_CTR_SELF_SEND_STATUS;
  55. #pragma pack(pop)
  56. extern END_CTR_SELF_SEND_STATUS end_ctr_self_ss;
  57. extern END_CTR_SELF_SEND_STATUS end_ctr_self_ss_new;
  58. extern END_CTR_SELF_SEND_STATUS end_ctr_rsp;
  59. extern DELAY_COMMON end_ctr_self_stimeout;
  60. int8_t Handle_Can_Ctr_CMD(CAN_FRAME*can_ctr_frame);
  61. int8_t Rsp_Can_Ctr_CMD(CAN_FRAME*can_ctr_frame);
  62. void Can_End_Ctr_Self_Send_Check(CAN_FRAME*can_ctr_frame);
  63. void End_Ctr_Initial(void);
  64. void Check_End_Ctr_Status(void);
  65. void End_Ctr_Self_Send_Timeout(void);
  66. void ACC12_OVER_Loader_Timeout(void);
  67. void ACC12_OVER_Loader_Interrupt(void);
  68. void Shield_XL_Timeout(void);
  69. #endif