locmsgdef.h
来自「用VC编写的设备通讯程序,里面有很多规约,自己下载」· C头文件 代码 · 共 85 行
H
85 行
//**************************************************************************
//
//
//**************************************************************************
//
// Filename : Msghdler.h
//
// Subsystem :
//
// Description: Protocol message handlers.
//
//**************************************************************************
#ifndef __MSGHDLER_H__
#define __MSGHDLER_H__
// protocol handle function definition
//
/*
* DC controller message length
*/
#define POLLREQLEN 13 // normal polling command length
#define POLLANALEN 72 // analog data length
#define POLLDIGLEN 21 // digital data length
#define POLLADRPOS 4 // normal rtu net id position
#define POLLANAITM 24 // analog data items
/*
* DC controller polling commands
*/
static char anapollcmd[POLLREQLEN] = {
(char)0xeb, (char)0x90, (char)0xeb, (char)0x90, (char)0x00, (char)0x00, (char)0x00,
(char)0x03, (char)0x01, (char)0x01, (char)0x00, (char)0x90, (char)0xeb };
static char digpollcmd[POLLREQLEN] = {
(char)0xeb, (char)0x90, (char)0xeb, (char)0x90, (char)0x00, (char)0x00, (char)0x00,
(char)0x03, (char)0x01, (char)0x02, (char)0x00, (char)0x90, (char)0xeb };
/*
* DC controller message types
*/
typedef enum {
POLLDIG = 0,
POLLANA
} POLLSTS;
// RTU I/O module and point table for DC controller device
// =======================================================
// AI 0 (24)
// DI 1 - 6 (32)
#define AINORMSLOT 0
#define DINORMSLOT 1
#define PNTPERCARD 32
/*
* DC controller analog response data structure
*/
typedef struct {
char bigsyn[4];
char tarid;
char srcid;
short len;
char cmdtyp;
char cmdidx;
BYTE inpdat[POLLANAITM][3];
BYTE crc;
char endsyn[2];
} POLANA;
typedef struct {
char bigsyn[4];
char tarid;
char srcid;
short len;
char cmdtyp;
char cmdidx;
BYTE inpdat[POLLDIGLEN];
BYTE crc;
char endsyn[2];
} POLDIG;
// meter device type
#define UPSRTUTYPE 660
#endif /* __MSGHDLER_H__ */
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?