www.pudn.com > rtu.rar > DSYSTYPE.H


#include "ykletter.h" 
#define B1CMD  0X1A8 
#define B1DATA 0X1A9 
#define A1CMD  0X1AA 
#define A1DATA 0X1AB 
 
#define B2CMD  0X2A8 
#define B2DATA 0X2A9 
#define A2CMD  0X2AA 
#define A2DATA 0X2AB 
 
#ifdef __cplusplus 
	#define __CPPARGS ... 
#else 
	#define __CPPARGS 
#endif 
 
#ifndef __RECCODE 
union RecCode{ 
			int Word; 
			struct Byte { 
	char Low,High; 
	} B; 
			}; 
#define __RECCODE 
#endif 
#ifndef __COMSTRUCT 
struct ComStruct{ 
		 unsigned char UseInfo;      // 0:NotUsed, 1:Active, 2:Error; 
		 unsigned char Status;       // Uninit 0,txd 1,wait 2,Stop 4, 
		 unsigned char ModemStatus;  // bit define as same as 8250s Modem status rigester 
		 unsigned char FlwCtr;       // None 0, RTS/CTS 1, Xon/Xoff 2; 
		 unsigned char TxdBufFront; 
		 unsigned char TxdBufRear; 
		 unsigned char TxdBufLength; 
		 unsigned char *TxdBuf; 
		 unsigned int  TxdBufSize; 
		 unsigned char TxdProWarn; 
		 void far (*Send)(char ch); 
 
		 unsigned char RxdBufFront; 
		 unsigned char RxdBufRear; 
		 unsigned char RxdBufLength; 
		 unsigned int  *RxdBuf; 
		 unsigned int  RxdBufSize; 
		 unsigned char RxdProWarn; 
		 void far (*Search)(int ComNo); 
		 void interrupt (*OldComInt)(__CPPARGS); 
 }; 
#define __COMSTRUCT 
#endif 
 
#ifndef __COMPARAMETER 
struct ComParameter{ 
//			 unsigned char Use;    //0 NoUse,ff Use; 
			 unsigned char Sync;   //0 Async,1 IBM Sync, Two Sync byte, 
			 unsigned char Baud;   //0-110,1-150,2-300,3-600,4-1200,5-2400,6-4800,7-9600; 
			 unsigned char Data;   //0-7,1-8; 
			 unsigned char Stop;   //0-1,1-2; 
			 unsigned char Parity; //0-none,1-odd,2-even; 
			 unsigned char FlwCtr; //0-NONE,1-RTS/CTS 
			 unsigned char Protocol;//1 HOST;2 CDT;3 POLLING;4 TELE 
			 }; 
#define __COMPARAMETER 
#endif 
 
enum TxdS {SEND,WAIT}; 
enum RxdS {START,HEAD,FRAME}; 
#ifndef __FDK1200 
enum Log  {LOGOFF,LOGING,LOGON,POWERUP};  //0:off,not 0:on; 
#else 
enum Log  {LOGOFF,LOGING,LOGON};  //0:off,not 0:on; 
#endif 
 
struct HostArgStruct{ 
	unsigned  char  rtuno; 
	unsigned  char  control;//D0:YK;D1:CLOCK;D2:DDTIME;D3:YCCOE;D4:YK swino sequ 
	unsigned	int		tm_num; 
	unsigned	int		ts_num; 
	unsigned	int		kwh_num; 
	unsigned 	int 	YC_sequ[512]; 
	unsigned	int		YX_sequ[512]; 
	unsigned	int		KWH_sequ[256]; 
	unsigned	int		CheckSum; 
	unsigned  int   YX_YN[1024]; //??? 
	int   MYC[512]; 
	int   MYCtemp[512]; 
	unsigned char YCDNO[512]; 
	unsigned YCDNUM; 
	unsigned  char  YCDeadLine[512]; 
	int TaskNo; 
	unsigned char TxdCode; 
	unsigned char TxdExtCode; 
	unsigned char far *TxdBuf; 
	unsigned int TxdBufLength; 
	unsigned char TxdRepeat; 
	unsigned int TxdPtr; 
	enum TxdS TxdStatus; 
	unsigned char TxdPacketNo; 
	enum RxdS  RxdStatus; 
	unsigned char RxdCode; 
	unsigned char RxdExtCode; 
	unsigned char far *RecLetter; 
	unsigned char far *TrnLetter; 
	int  far *RxdBuf; 
	unsigned char far *RecBuf; 
	unsigned int  RxdBufLength; 
	unsigned int  RxdFrameLength; 
	unsigned int  RxdPacketLength; 
	unsigned char RxdPacketNo; 
	unsigned char far *HSBuf; //¸ßËÙ²ÉÑù 
	unsigned int  STANo; 
	long     int  FileLength; 
	FILE *fp; 
		unsigned	int	YXCTail; 
		unsigned	char	ToComNo; 
		unsigned	char	StatusCode; 
		unsigned char Ykprooflag; 
		unsigned char Ykidno; 
		unsigned char Letter_box_flag; 
		unsigned int  Ykobject; 
		unsigned char Ykswno; 
		unsigned char Yknaturn; 
		enum     ykstatus Ykcomm; 
		enum		 Sgstatus SgComm	; 
		unsigned char Ykproofnum; 
		unsigned char Ykbackmess; 
		enum     HSstatus HSComm; 
		enum     Letterstatus Letter_from_box; 
		unsigned char	SgAdd; 
		unsigned	int	SgjlLength; 
		unsigned	char	SgBoxNo; 
		unsigned char HSAdd; 
		unsigned char HSComNo; 
		unsigned char SetTimeLock; 
		unsigned int  PolSoeTail; 
		unsigned char TWriteNum; 
		char RecName[20]; 
		unsigned char WriFlag; 
		unsigned char opfilenum; 
	enum Log LogStatus; //0:off,not 0:on; 
	int HandshakePtr; 
	unsigned char PQ; 
	unsigned char SELHisPtr; 
	unsigned YXChedPtr; 
			}; 
 struct AvaiStruct 
		{ 
			char	Name[20]; 
			unsigned	char	far	*AvaP; 
			unsigned	int	length; 
 
		}; 
 
enum ACTION {OPEN,KEY,FLASH,NOUSE}; 
enum CurType {LCDHIDE,LCDBLINK,LCDNORMAL}; 
struct CDT_TAB 
				{ 
				 unsigned char StationNo; 
				 unsigned char Control;  //d0:clocken,d1:yken,d2:yten 
				 int           YCNum; 
				 int           YXNum; 
				 int           DDNum; 
				 int           YCTab[256]; 
         int           YXTab[256]; 
         int           DDTab[ 45]; 
         int           CheckSum; 
        }; 
 
   enum STATE {S0,S1,S2,S3,S4,S5,S6,CONTROL,YCYXDD,SOE_H,SOE_L}; 
 
struct HLJHOSTCDT_TAB 
			 { 
				int ComNo; 
				char NodeID; 
				int ErrorNum; 
				enum STATE State; 
				unsigned char RxdBuf[32]; 
				int Buf[32]; 
				int FrameType; 
				int FrameLength; 
				int  ErrorCount; 
				int  YCOffset; 
				int  YXOffset; 
				int  DDOffset; 
				int  YCNum; 
				int  YXNum; 
				int  DDNum; 
				int  i,j,k; 
			 };