diff --git a/zaf_protocol.h b/zaf_protocol.h index d93a2d3..53a8dd0 100644 --- a/zaf_protocol.h +++ b/zaf_protocol.h @@ -7,20 +7,15 @@ #pragma pack(1) -/******************************************************************************* - * 通用指令包 * - *******************************************************************************/ +#define VERSION(main, sub, fix) (main << 16 | sub << 8 | fix << 0) + +#define VERSION_MAIN(v) ((v >> 16) & 0xFF) +#define VERSION_SUB(v) ((v >> 8) & 0xFF) +#define VERSION_FIX(v) ((v >> 0) & 0xFF) #define PACKET_HEADER 0x5A5A #define PACKET_TAIL 0xA5A5 -/** - * - * 协议包分为: - * 包头(2Byte) 包类型(2Byte) Index(2Byte) 指令(2Byte) ndata(2byte) data[...] 和校验(1Byte) 包尾(2Byte) - * - */ - typedef struct { uint16_t packet_header; uint16_t packet_type; // zaf_protocol_packet_type_t @@ -45,18 +40,12 @@ typedef enum { kzaf_cmd_storage_cfg = 7, } zaf_protocol_cmd_t; -/** - * @brief 包类型 - */ typedef enum { kzaf_packet_type_cmd = 0, kzaf_packet_type_receipt = 1, kzaf_packet_type_report = 2, } zaf_protocol_packet_type_t; -/******************************************************************************* - * 业务逻辑枚举 * - *******************************************************************************/ typedef enum { obtaining_ip_mode_type_static = 0, obtaining_ip_mode_type_dhcp = 1, diff --git a/zaf_regs.hpp b/zaf_regs.hpp index 45c5306..68f2e02 100644 --- a/zaf_regs.hpp +++ b/zaf_regs.hpp @@ -6,7 +6,7 @@ typedef enum { /** * @brief - * REG 0(16) 设备信息基础寄存器 + * REG 0(16) */ kreg_software_version = 0, kreg_manufacturer0 = 1, @@ -20,7 +20,7 @@ typedef enum { /** * @brief - * REG 16(32) STM32配置寄存器0 + * REG 16(32) */ kreg_stm32_obtaining_ip_mode = REGADD__STM32_COMMON + 0, kreg_stm32_ip = REGADD__STM32_COMMON + 1,