/********************************** (C) COPYRIGHT ********************************* * File Name : CH392.H * Author : WCH * Version : V1.0 * Date : 2020/02/19 * Description : CH392变量结构体说明 **********************************************************************************/ #ifndef __CH392_H__ #define __CH392_H__ #include "stdio.h" #include "string.h" #include "CH392INC.H" #include "CH392CMD.H" #define TCP_CLIENT_MODE 0 #define TCP_SERVER_MODE 1 struct _CH392_SYS { UINT8 IPAddr[4]; /* CH392IP地址 32bit*/ UINT8 GWIPAddr[4]; /* CH392网关地址 32bit*/ UINT8 MASKAddr[4]; /* CH392子网掩码 32bit*/ UINT8 MacAddr[6]; /* CH392MAC地址 48bit*/ UINT8 PHYStat; /* CH392 PHY状态码 8bit*/ UINT8 MackFilt; /* CH392 MAC过滤,默认为接收广播,接收本机MAC 8bit*/ UINT32 RetranCount; /* 重试次数 默认为10次*/ UINT32 RetranPeriod; /* 重试周期,单位MS,默认200MS */ UINT8 IntfMode; /* 接口模式 */ UINT8 UnreachIPAddr[4]; /* 不可到达IP */ UINT16 UnreachPort; /* 不可到达端口 */ }; struct _SOCK_INF { UINT8 IPAddr[4]; /* socket目标IP地址 32bit*/ UINT8 MacAddr[6]; /* socket目标地址 48bit*/ UINT8 ProtoType; /* 协议类型 */ UINT8 SockStatus; /* socket状态,参考scoket状态定义 */ UINT8 TcpMode; /* TCP模式 */ UINT32 IPRAWProtoType; /* IPRAW 协议类型 */ UINT16 DesPort; /* 目的端口 */ UINT16 SourPort; /* 源端口 */ UINT16 SendLen; /* 发送数据长度 */ UINT16 RemLen; /* 剩余长度 */ UINT8 *pSend; /* 发送指针 */ }; void mStopIfError(UINT8 iError); void InitCH392InfParam(void); void InitSocket0Param(void); void CH392Socket0InitOpen(void); void keeplive_set(void); void CH392SocketInterrupt(UINT8 sockindex); void CH392GlobalInterrupt(void); UINT8 CH392Init(void); void InitSocket1Param(void); void CH392Socket1InitOpen(void); #endif