?? ex3modbus.h
字號:
#ifndef __EX3ModBus_H
#define __EX3ModBus_H
#define LIMIT_SEARCH_SYN_NUM 108
#define LIMIT_MOD_ERR_TIMES 3
#define LIMIT_MODBUS_T1 5
#define LIMIT_MODBUS_T 5*LIMIT_MODBUS_T1+1
#define LIMIT_MODBUS_ERR_TIMES 3
#define READ_OUTPUT_STATUS 1
#define READ_INPUT_STATUS 2
#define READ_OUTPUT_REGISTERS 3
#define READ_INPUT_REGISTERS 4
#define FORCE_SINGLE_COIL 5
#define PRESET_SINGLE_REGISTER 6
//#define READ_EXCEPTION_STATUS 7
#define LOOP_BACK_DIAGNOSTIC_TEST 8
#define FORCE_MULTIPLE_COILS 15
#define PRESET_MULTIPLE_REGISTERS 16
#define ERR_SET_SINGLE_COIL 1
#define RCV_SET_PKT_OK 2
void FromToModBus(WORD UartNo);
void FindModSync(WORD UartNo);
void HaveFoundModSync(void);
void ReadModHead(WORD UartNo);
void SearchModSyncFault(void);
void ModiModStat(BYTE Stat);
void ReadModData(WORD UartNo);
WORD CheckModPkt(WORD UartNo);
WORD FromModProc(WORD UartNo);
WORD OrgModPkt(WORD UartNo, WORD nbytes);
void PresetModPara(WORD RegAddr,WORD RegCount,BYTE *p,WORD ByteCount);
WORD OrgModSinRet(BYTE *RegAddr,BYTE *RegCount);
WORD OrgModMultiRet(BYTE *RegAddr,BYTE *RegCount);
WORD OrgModBusYx(WORD RegAddr,WORD RegCount);
WORD OrgModBusYc(WORD RegAddr,WORD RegCount);
void SendToScada(WORD UartNo,BYTE Buf[],WORD nbytes);
void ReadNoByteFromModBus(WORD UartNo);
void ClearModBuff(WORD UartNo);
void ModBusBuffInit(WORD UartNo);
WORD CalModBusCrc16(BYTE Buf[],WORD nbytes);
BYTE AUCHCRCHI[256]={
0x00,0x0C1,0x81,0x40,0x01,0x0C0,0x80,0x41,
0x01,0x0C0,0x80,0x41,0x00,0x0C1,0x81,0x40,
0x01,0x0C0,0x80,0x41,0x00,0x0C1,0x81,0x40,
0x00,0x0C1,0x81,0x40,0x01,0x0C0,0x80,0x41,
0x01,0x0C0,0x80,0x41,0x00,0x0C1,0x81,0x40,
0x00,0x0C1,0x81,0x40,0x01,0x0C0,0x80,0x41,
0x00,0x0C1,0x81,0x40,0x01,0x0C0,0x80,0x41,
0x01,0x0C0,0x80,0x41,0x00,0x0C1,0x81,0x40,
0x01,0x0C0,0x80,0x41,0x00,0x0C1,0x81,0x40,
0x00,0x0C1,0x81,0x40,0x01,0x0C0,0x80,0x41,
0x00,0x0C1,0x81,0x40,0x01,0x0C0,0x80,0x41,
0x01,0x0C0,0x80,0x41,0x00,0x0C1,0x81,0x40,
0x00,0x0C1,0x81,0x40,0x01,0x0C0,0x80,0x41,
0x01,0x0C0,0x80,0x41,0x00,0x0C1,0x81,0x40,
0x01,0x0C0,0x80,0x41,0x00,0x0C1,0x81,0x40,
0x00,0x0C1,0x81,0x40,0x01,0x0C0,0x80,0x41,
0x01,0x0C0,0x80,0x41,0x00,0x0C1,0x81,0x40,
0x00,0x0C1,0x81,0x40,0x01,0x0C0,0x80,0x41,
0x00,0x0C1,0x81,0x40,0x01,0x0C0,0x80,0x41,
0x01,0x0C0,0x80,0x41,0x00,0x0C1,0x81,0x40,
0x00,0x0C1,0x81,0x40,0x01,0x0C0,0x80,0x41,
0x01,0x0C0,0x80,0x41,0x00,0x0C1,0x81,0x40,
0x01,0x0C0,0x80,0x41,0x00,0x0C1,0x81,0x40,
0x00,0x0C1,0x81,0x40,0x01,0x0C0,0x80,0x41,
0x00,0x0C1,0x81,0x40,0x01,0x0C0,0x80,0x41,
0x01,0x0C0,0x80,0x41,0x00,0x0C1,0x81,0x40,
0x01,0x0C0,0x80,0x41,0x00,0x0C1,0x81,0x40,
0x00,0x0C1,0x81,0x40,0x01,0x0C0,0x80,0x41,
0x01,0x0C0,0x80,0x41,0x00,0x0C1,0x81,0x40,
0x00,0x0C1,0x81,0x40,0x01,0x0C0,0x80,0x41,
0x00,0x0C1,0x81,0x40,0x01,0x0C0,0x80,0x41,
0x01,0x0C0,0x80,0x41,0x00,0x0C1,0x81,0x40
};
BYTE AUCHCRCLO[256]= {
0x000,0x0C0,0x0C1,0x001,0x0C3,0x003,0x002,0x0C2,
0x0C6,0x006,0x007,0x0C7,0x005,0x0C5,0x0C4,0x004,
0x0CC,0x00C,0x00D,0x0CD,0x00F,0x0CF,0x0CE,0x00E,
0x00A,0x0CA,0x0CB,0x00B,0x0C9,0x009,0x008,0x0C8,
0x0D8,0x018,0x019,0x0D9,0x01B,0x0DB,0x0DA,0x01A,
0x01E,0x0DE,0x0DF,0x01F,0x0DD,0x01D,0x01C,0x0DC,
0x014,0x0D4,0x0D5,0x015,0x0D7,0x017,0x016,0x0D6,
0x0D2,0x012,0x013,0x0D3,0x011,0x0D1,0x0D0,0x010,
0x0F0,0x030,0x031,0x0F1,0x033,0x0F3,0x0F2,0x032,
0x036,0x0F6,0x0F7,0x037,0x0F5,0x035,0x034,0x0F4,
0x03C,0x0FC,0x0FD,0x03D,0x0FF,0x03F,0x03E,0x0FE,
0x0FA,0x03A,0x03B,0x0FB,0x039,0x0F9,0x0F8,0x038,
0x028,0x0E8,0x0E9,0x029,0x0EB,0x02B,0x02A,0x0EA,
0x0EE,0x02E,0x02F,0x0EF,0x02D,0x0ED,0x0EC,0x02C,
0x0E4,0x024,0x025,0x0E5,0x027,0x0E7,0x0E6,0x026,
0x022,0x0E2,0x0E3,0x023,0x0E1,0x021,0x020,0x0E0,
0x0A0,0x060,0x061,0x0A1,0x063,0x0A3,0x0A2,0x062,
0x066,0x0A6,0x0A7,0x067,0x0A5,0x065,0x064,0x0A4,
0x06C,0x0AC,0x0AD,0x06D,0x0AF,0x06F,0x06E,0x0AE,
0x0AA,0x06A,0x06B,0x0AB,0x069,0x0A9,0x0A8,0x068,
0x078,0x0B8,0x0B9,0x079,0x0BB,0x07B,0x07A,0x0BA,
0x0BE,0x07E,0x07F,0x0BF,0x07D,0x0BD,0x0BC,0x07C,
0x0B4,0x074,0x075,0x0B5,0x077,0x0B7,0x0B6,0x076,
0x072,0x0B2,0x0B3,0x073,0x0B1,0x071,0x070,0x0B0,
0x050,0x090,0x091,0x051,0x093,0x053,0x052,0x092,
0x096,0x056,0x057,0x097,0x055,0x095,0x094,0x054,
0x09c,0x05c,0x05d,0x09d,0x05f,0x09f,0x09e,0x05e,
0x05a,0x09a,0x09b,0x05b,0x099,0x059,0x058,0x098,
0x088,0x048,0x049,0x089,0x04b,0x08b,0x08a,0x04a,
0x04e,0x08e,0x08f,0x04f,0x08d,0x04d,0x04c,0x08c,
0x044,0x084,0x085,0x045,0x087,0x047,0x046,0x086,
0x082,0x042,0x043,0x083,0x041,0x081,0x080,0x040
};
#endif /* __EX3ModBus_H */
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -