| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687 |
- #pragma once
- #include "libs/shark_libs.h"
- #pragma pack (push,1)
- typedef struct
- {
- //整个包大小
- uint8_t size;
- //命令设备
- uint8_t type;
- //协议类型
- uint8_t protocol;
- //命令类型
- uint8_t cmd;
- //命令校验
- uint16_t checksum;
- //命令处理调用
- uint8_t dir;
- //命令返回状态
- uint8_t bStatus;
- //命令数据部分
- uint8_t data[0];
- }comm_head_t;
- #pragma pack(pop)
- #pragma pack (push,1)
- typedef struct
- {
- uint8_t remain_miles;
- uint8_t capacity;
- uint8_t remain_charger_time;
- uint8_t is_chargering;
- uint32_t load_current;
- uint32_t pack_voltage;
- int8_t max_temp;
- uint16_t health_state;
- uint32_t balance_mask;
- uint8_t misc_status; //bit0:bond, bit1-2: mos, bit3-4, small-short,full, bit 5, bit6 calibarate
- uint8_t result;
- }comm_response_t;
- #pragma pack(pop)
- #pragma pack (push,1)
- typedef struct
- {
- uint16_t soh;
- uint32_t charger_cycle;
- uint8_t res2[36];
- }times_response_t;
- #pragma pack(pop)
- enum
- {
- OP_NONE,
- //OP_BOND,
- OP_BIN_LIAN,
- OP_WRITE_SN,
- OP_PAIR,
- OP_UPDATE_PAIR,
- OP_READ_INFO,
- OP_ALARM_TIMES,
- OP_CELL_VOL,//0x07
- OP_TEMP_OTHER,//0x08
- OP_AGING_TEMPS = 0x0A,
- OP_OPEN_FET = 0x0B,
- OP_CLEAR_PAIR = OP_TEMP_OTHER + 1,
- OP_READ_DETECT = 0x0D,
- OP_UPDATE_SOFTWARE_REQ = 0x0E,
- OP_UPDATE_SOFTWARE = 0x0F,
- OP_MAX
- };
- enum
- {
- CW_NONE,
- CW_CHONG_DIAN_ZUO,
- CW_CHE_SHANG_CHARGER,
- CW_CHE_SHANG_NO_CHARGER,
-
- CW_MAX
- };
|