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

📄 ex3.h

📁 一个基于三星s3c44b0x的串口协议转换器源码
💻 H
字号:
#ifndef __EX3_H__
#define __EX3_H__

//#include   <stdio.h>
#include    <time.h>
#include    "EX3port.h"
#include    "EX3Comm.h"
#include    "DataType.h"

#define OFF	0
#define ON    	1

#define STOPPED 0
#define NORMAL  1
#define FAULT   2

#define 	LIMIT_UART_NUM	2
#define 	UART_FOR_MODBUS	0
#define 	UART_FOR_AC		1

struct MyFunS{
        BYTE    Condition;      //0:Fun will be executed with no condition
        BYTE    FunNo;
        int     (* Fun)();
        };

struct UartS{
        WORD    UartNo;   //0,1   /*count from 0,for 18 uart*/
        WORD    Usage;    
	};

struct TxDtS{
        time_t  	LastTime;
        time_t  	DltTime;
        WORD    Occur;
        };

struct LibS{
	 BYTE    	StartUp;        /*set when program is started*/
	 time_t  	StartUpTime;	//used
	 WORD   	AcYcNum;		//used
	 WORD   	AcYxNum;		//used
	 WORD   	AcYkNum;		//used 
	 WORD   	TotalYcNum;		//used
	 WORD   	TotalYxNum;		//used
	 WORD   	TotalYkNum;		//used 
        BYTE    	InitNeed;		//used
        BYTE	WaitNodeSet;	//used
        BYTE	SetNodeOk;		//used

	 BYTE   	YcInBuff[LIMIT_YC_IN_NUM*2];
	 BYTE   	YcOutBuff[LIMIT_YC_OUT_NUM*2];
	 BYTE    	YxInBuff[LIMIT_YX_IN_NUM/8];
	 BYTE    	YxOutBuff[LIMIT_YX_IN_NUM/8];
	 BYTE    	AcStat;			//state of Ac
	 BYTE    	ModBusStat;		//state of modbus
	 BYTE      ModBusCmd;		//cmd of modbus
	//set para
	 BYTE	Isdown;			//MosBus is setting para
	 BYTE	*pYxDown;		//pointer to down yx 		
	 BYTE	*pYcDown;		//pointer to down yx
	 BYTE	RcvModeBytes;	//the bytes of receiving modbus' data region
	 BYTE	RcvModBuff[256];//receive modbus' data region
        WORD	DownRegAddr;	//offset of the first yx/yc setted by modbus slave
        WORD	DownRegCount;	//count of yx/yc setted by modbus slave
        };

struct ModS{
	BYTE    Cmd;			//cmd type
	BYTE    ErrTimes;		//used
	BYTE    OrgPktStat;	//the state of organize package
	BYTE    ReadNeed; 	//is or not need reed package
	BYTE    SyncFull; 		//used
	BYTE    HeadFull;		//used
       BYTE    DataFull;		//used
	BYTE    RecvData;		//used
	BYTE    PktIsTimeOut;	//used
	BYTE    PktIsOver;	//used
	BYTE    SendPktStat;
	BYTE    OrgBytes;
	BYTE    SendBytes;	//used
	BYTE    RcvDataBytes;		//used
	BYTE    StatReceived;
	WORD  HeadBytes;//used
	WORD  RecvSyncNum;//used
	WORD  SearchSyncNum;//used
	WORD  RecvByteNum;//used
	BYTE    FromBuff[3+256*2+2];//used
	BYTE    SynCode[10];//used
	BYTE    ToBuff[3+256*2+2];//addr,cmd,count,256*2data,crc 
       BYTE    SynBytes;//used
       BYTE    PktBytes;		//used
       time_t  LastRecvDataTime;//used
       time_t  OnePktSendTime;	//used
	};

struct AcS{
	BYTE    DnComd;
	BYTE    ToBuff[3+256*2+2];
	BYTE    OrgBytes;
	BYTE    OrgPktStat;
	BYTE    SendPktStat;
};

#endif	/* _EX3_H */

⌨️ 快捷键说明

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