⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 comm.h

📁 mega128平台下
💻 H
字号:
#ifndef _COMM_H
#define  _COMM_H

/***********  管理帧命令***********/
enum {
  SINK_CLUSTER_SYNC = 1,  //Sink-cluster同步	seqNO + TimeStamp
  CLUSTER_NODE_SYNC = 2,  //Cluster-node同步	seqNO + TimeStamp
  CLUSTER_ACK = 3,        //Cluster ACK确认	Current time
  NODE_ACK = 4,           //	Node ACK确认	Current time
  NODE_CHECK = 5,         //	点检命令	
  CLUSTER_BAK_SYNC = 6,   //	Cluster备份同步	seqNO + TimeStamp
  SINK_BAK_SYNC = 7,      //Sink备份同步	seqNO + TimeStamp
  CLUSTER_BAK_SYNC_ACK = 8,//	Cluster备份同步ACK
  SINK_BAK_SYNC_ACK = 8,  //Sink备份同步ACK	
   SINK_INIT_NODE = 10    //初始化节点参数
};



/************* server命令帧/ 网络管理帧***************/
enum {
	SINK_SERVER_SYNC = 21,   //sink-server 时间同步 RTC_value(2) 2byte  2byte
	SERVER_ASK_SINKDATA = 22, //server收集sink数据 Seqno(2) 2byte
	SERVER_RE_TX = 23, //server重传 Seqno(2)
	SERVER_ASK_OLDDATA = 24, //server收集历史数据 NULL
	SERVER_RESET = 25, //server reset命令 NULL
	SERVER_INIT_NODE = 26, //server初始化node参数 IP(2) T(2) TMP_M(2) CHAN(1) 7byte
	SERVER_CHANGE_NODE_PARAMEAT = 27, //server更改node参数 IP(2) T(2) TMP_M(2) CHAN(1) 7byte
};


/********* Sink返回数据********/
enum {
  SYNC_ACK = 28,  //时间同步ACK  NULL 
  SINKDATA = 70,  //sink数据返回数据 IP(2) TMP(2) BAT(2) 6byte
  SINK_RE_TX = 70,        //sink重传 IP(2) TMP(2) BAT(2) 6byte
  OLDDATA = 71,           //	server历史数据响应 IP(2) TMP(2) BAT(2) RTC(2) 8byte
  INIT_NODE_PARAMEATER_ACK = 29,         //初始化node参数响应	IP(2) 2byte
  CHANGE_NODE_PARAMEATER_ACK = 30,   //	更改node参数响应  IP(2) 2byte
  NODE_DATA=50,         //node数据帧
  CLUSTER_DATA=60,      //cluster数据帧
  SINK_DATA=70,         //sink数据帧
  IMMEDIATE_ALARM=80     //高温快速报警帧
};

/*************************  数据格式**************************************/
/*********************************************************/
/********************************************************/
/* 串口数据包格式*/
typedef  struct Serial_header
{
  unsigned char  startbyte;
  unsigned char  len;
  unsigned char   type;      //类型
} Serial_h_t;

typedef struct Serial_footer
{
  unsigned char    crc;
  unsigned char    endbyte;   //起始标志
}Serial_f_t;

/*typedef struct Uart_server_MSG
{
   Serial_h_t  serial_headerMSG; 
   unsigned char   data[];      //数据
   Serial_f_t  serial_footerMSG;
}Uart_server_MSG;*/

typedef struct Uart_server_MSG
{
   unsigned char    startbyte;    //起始标志
   unsigned char    len;       //长度
   unsigned char    type;       //类型
   unsigned char    data[24];      //数据
   unsigned short int   CRC;       //CRC
   unsigned char    endbyte;     //结束标志
}Uart_server_MSG;

typedef struct Uart_CMD
{
   unsigned char    startbyte;    //起始标志
   unsigned char    len;       //长度
   unsigned char    type;       //类型
   unsigned char    data[24];      //数据
   unsigned short int   CRC;       //CRC
   unsigned char    endbyte;     //结束标志
}Uart_CMD;

/***********CC1100 data*************/
typedef struct CC1100_header
{
  unsigned char    len;    //长度
  unsigned char    ID;    //节点号
  unsigned char   GID;   //组号
  unsigned short int   DA;    //目的地址
  unsigned char    type;   //消息类型
} CC1100_h_t;

typedef struct CC1100_footer
{
   unsigned short int   crc;    //CRC校验
   unsigned short int   strength; //信号强度
   unsigned short int   RTCtime; //时间
} CC1100_f_t;


typedef struct COMM_MSG
{
   unsigned char    len;    //长度
   unsigned char    ID;    //节点号
   unsigned char    GID;   //组号
   unsigned short int   DA;    //目的地址
   unsigned char    type ;  //消息类型
   unsigned char    data[24];  //数据
   unsigned short int   crc;   //CRC校验
   unsigned short int   strength; //信号强度
   unsigned short int   RTCtime; //时间
}COMM_MSG;

typedef struct COMM_MSG_CMD
{
   unsigned char    len;    //长度
   unsigned char    ID;    //节点号
   unsigned char    GID;   //组号
   unsigned short int   DA;    //目的地址
   unsigned char    type ;  //消息类型
   unsigned char    data[5];  //数据
   unsigned short int   crc;   //CRC校验
   unsigned short int   strength; //信号强度
   unsigned short int   RTCtime; //时间
}COMM_MSG_CMD;


/*typedef struct COMM_MSG
{
   CC1100_h_t  cc1100_headerMSG;
   unsigned char    data[];  //数据
   CC1100_f_t   cc1100_footerMSG;
}COMM_MSG;*/

/************************/
typedef struct Node_Param
{
   unsigned short int  IP;  //节点位置
   unsigned char    ID;  //节点号
   unsigned char    GID; //组号
   unsigned char   T;  //采集周期
   unsigned char    Tmp_M;  //报警阈值
   unsigned char    channel;  //工作通道
}Node_Param;
/************************/



typedef struct Server_sink_cmd
{
  unsigned char  startbyte;
  unsigned char  len;
  unsigned char   type;
  unsigned char   data[25];
  unsigned short int  crc;
  unsigned char   endbyte;
}Server_sink_cmd;


#endif

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -