Initial commit: my SECS2 project
This commit is contained in:
63
usr/protocol/proto_HSMS.h
Normal file
63
usr/protocol/proto_HSMS.h
Normal file
@@ -0,0 +1,63 @@
|
||||
#ifndef _PROTO_HSMS_H_
|
||||
#define _PROTO_HSMS_H_
|
||||
|
||||
#include "main.h"
|
||||
#include "proto_Modbus.h"
|
||||
|
||||
#define PROTO_HSMS_ENDIAN BIG_ENDIAN
|
||||
|
||||
/*<2A><>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD> PType*/
|
||||
#define proto_HSMS_PTYPE_SECS2 0 /*SECS-II <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʽ*/
|
||||
|
||||
/*<2A>Ự<EFBFBD><E1BBB0><EFBFBD><EFBFBD> SType*/
|
||||
#define PROTO_HSMS_STYPE_Data_Message 0 /*<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ*/
|
||||
#define PROTO_HSMS_STYPE_Select_Req 1 /*ѡ<><D1A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
|
||||
#define PROTO_HSMS_STYPE_Select_Rsq 2 /*ѡ<><D1A1><EFBFBD><EFBFBD>Ӧ*/
|
||||
#define PROTO_HSMS_STYPE_Deselect_Req 3 /*ȡ<><C8A1>ѡ<EFBFBD><D1A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
|
||||
#define PROTO_HSMS_STYPE_Deselect_Rsq 4 /*ȡ<><C8A1>ѡ<EFBFBD><D1A1><EFBFBD><EFBFBD>Ӧ*/
|
||||
#define PROTO_HSMS_STYPE_Linktest_Req 5 /*<2A><><EFBFBD>Ӳ<EFBFBD><D3B2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
|
||||
#define PROTO_HSMS_STYPE_Linktest_Rsp 6 /*<2A><><EFBFBD>Ӳ<EFBFBD><D3B2><EFBFBD><EFBFBD><EFBFBD>Ӧ*/
|
||||
#define PROTO_HSMS_STYPE_Reject_Req 7 /*<2A>ܾ<EFBFBD><DCBE><EFBFBD><EFBFBD><EFBFBD>*/
|
||||
#define PROTO_HSMS_STYPE_Separate_Req 9 /*<2A>Ͽ<EFBFBD><CFBF><EFBFBD><EFBFBD><EFBFBD>*/
|
||||
|
||||
typedef struct
|
||||
{
|
||||
u32 Data_Len; /*<2A>ֽڳ<D6BD><DAB3><EFBFBD>*/
|
||||
u16 Device_Id; /*<2A>Ự/<2F>豸<EFBFBD><E8B1B8>ʶ*/
|
||||
|
||||
union
|
||||
{
|
||||
struct
|
||||
{
|
||||
u8 Stream: 7;
|
||||
u8 Wait: 1; /*ָ<><D6B8><EFBFBD>Ƿ<EFBFBD><C7B7><EFBFBD>Ҫ<EFBFBD>ظ<EFBFBD>*/
|
||||
}Analysis_Data;
|
||||
u8 ALL_Data;
|
||||
}Header_Byte2;
|
||||
|
||||
u8 Header_Byte3; /*ͷ<><CDB7><EFBFBD>ֽ<EFBFBD>3*/
|
||||
u8 PType; /*<2A><>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD>*/
|
||||
u8 SType; /*<2A>Ự<EFBFBD><E1BBB0><EFBFBD><EFBFBD>*/
|
||||
u32 Sys_Byte; /*ϵͳ<CFB5>ֽڣ<D6BD><DAA3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ָ<EFBFBD><D6B8><EFBFBD><EFBFBD>ID<49><44>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD><EFBFBD>ڳ<EFBFBD>ʱ<EFBFBD>жϣ<D0B6><CFA3><EFBFBD>Ӧʱ<D3A6><CAB1><EFBFBD>ݷ<EFBFBD><DDB7><EFBFBD><EFBFBD><EFBFBD>ָ<EFBFBD><D6B8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>4<EFBFBD>ֽ<EFBFBD><D6BD><EFBFBD>Ϊ<EFBFBD>ظ<EFBFBD><D8B8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD>ɲ<EFBFBD><C9B2>ظ<EFBFBD><D8B8><EFBFBD>4<EFBFBD><34><EFBFBD>ֽڣ<D6BD>*/
|
||||
}proto_HSMS_Header_Data_t;
|
||||
|
||||
typedef struct
|
||||
{
|
||||
u16 Device_Id; /*<2A>Ự/<2F>豸<EFBFBD><E8B1B8>ʶ*/
|
||||
}proto_HSMS_Flash_Data_t;
|
||||
|
||||
|
||||
typedef struct
|
||||
{
|
||||
proto_HSMS_Header_Data_t Rx_Header_Data; /*<2A><><EFBFBD>ս<EFBFBD><D5BD><EFBFBD><EFBFBD><EFBFBD>ͷ<EFBFBD><CDB7><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
|
||||
proto_HSMS_Header_Data_t Tx_Header_Data; /*<2A><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>ͷ<EFBFBD><CDB7><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
|
||||
proto_HSMS_Flash_Data_t Flash_ConfigData; /*<2A><><EFBFBD><EFBFBD>Flash<73><68><EFBFBD><EFBFBD><EFBFBD>ò<EFBFBD><C3B2><EFBFBD>*/
|
||||
|
||||
void (*Init)(void);
|
||||
void (*Tx_RsqData)(proto_HSMS_Header_Data_t *,u8 *,u16 ,void *);
|
||||
|
||||
}proto_HSMS_t;
|
||||
|
||||
extern proto_HSMS_t HSMS;
|
||||
|
||||
#endif
|
||||
Reference in New Issue
Block a user