99 lines
2.3 KiB
C
99 lines
2.3 KiB
C
#ifndef _NET_APP_H
|
|
#define _NET_APP_H
|
|
|
|
|
|
// 远程升级宏
|
|
#define ETH_MQTT 1
|
|
#define EC200_MQTT 0
|
|
|
|
|
|
|
|
typedef struct netWorkInterface_t
|
|
{
|
|
void (*Init) (void);
|
|
int (*IsConnected) (void);
|
|
void (*WriteData) (char *, int);
|
|
int (*ReadData) (char *, int);
|
|
int (*IsReady) (void);
|
|
int (*IsIdle) (void);
|
|
int (*ReSubTopic) (char *);
|
|
void (*Task) (void);
|
|
} netWorkInterface_t;
|
|
|
|
|
|
typedef struct NetPacket_t
|
|
{
|
|
int data_size;
|
|
char data[512];
|
|
} NetPacket_t;
|
|
|
|
|
|
|
|
|
|
|
|
#define PACKET_SEQNO_INDEX (1)
|
|
#define PACKET_SEQNO_COMP_INDEX (2)
|
|
|
|
#define PACKET_HEADER (3)
|
|
#define PACKET_TRAILER (2)
|
|
#define PACKET_OVERHEAD (PACKET_HEADER + PACKET_TRAILER)
|
|
#define PACKET_SIZE (128)
|
|
#define PACKET_1K_SIZE (1024)
|
|
|
|
#define FILE_NAME_LENGTH (256)
|
|
#define FILE_SIZE_LENGTH (16)
|
|
|
|
#define SOH (0x01) /* start of 128-byte data packet */
|
|
#define STX (0x02) /* start of 1024-byte data packet */
|
|
#define EOT (0x04) /* end of transmission */
|
|
#define ACK (0x06) /* acknowledge */
|
|
#define NAK (0x15) /* negative acknowledge */
|
|
#define CA (0x18) /* two of these in succession aborts transfer */
|
|
#define CC (0x43) /* 'C' == 0x43, request 16-bit CRC */
|
|
|
|
#define ABORT1 (0x41) /* 'A' == 0x41, abort by user */
|
|
#define ABORT2 (0x61) /* 'a' == 0x61, abort by user */
|
|
|
|
#define YMFILD 0x19
|
|
#define YMSUCCE 0x17
|
|
|
|
#define NAK_TIMEOUT (0x100000)
|
|
#define MAX_ERRORS (5)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// SL651 定义宏
|
|
#define SL651_TIME_HEART 60000 // 1分钟
|
|
#define SL651_TIME_LOST 90000
|
|
#define SL651_TIME_UNIF 1000*5*60 // 均匀时段,默认5分钟上报一次
|
|
#define SL651_TIME_FLOW 60000 // 均匀时段,默认5分钟上报一次
|
|
|
|
void NetTask (void);
|
|
void NetAppInit (void);
|
|
//void NETSendSluiceUp (void);
|
|
//void NETSendDataUnif (void);
|
|
//void NETSendSluiceAck (void);
|
|
//void NETSendConfigAck (int k);
|
|
//void NETSendConfig (char *data);
|
|
//// 应答E0 回复发送的数据
|
|
//void NETSendUpdateAck (int k);
|
|
//// 应答E3 回复读取的数据
|
|
//void NETSendRegist (void);
|
|
//// 应答E3 打印日志
|
|
//void NETSendLog (char *data);
|
|
|
|
|
|
|
|
|
|
|
|
// 如下为网络队列调用函数,wirebuffer 不等于多个writebyte
|
|
void NET_FifoWritebuffer (char *buffer, int size);
|
|
void NET_FifoWriteByte (char byte) ;
|
|
|
|
#endif
|
|
|
|
|