/******************************************************************************** * File Name: WiredLanTask.h * Function Describe: Header file for WiredLanTask.c * Explain: * Writer: * Date: *******************************************************************************/ #ifndef __WIRE_LAN_TASK_H #define __WIRE_LAN_TASK_H //------------------------------------------------------------------------------- #include #include "stdint.h" #define WLAN_CONNECT_AFTER_4G_TIME 125 //4G离线多久启动有线网连接服务器 单位 秒 typedef enum WLAN_STEP{ WL_STEP_INIT=0, WL_STEP_GET_PHYLINK, WL_STEP_CK,//检查网线是否插入 WL_STEP_DHCP,//获取分配IP WL_STEP_IDEL,//不连接服务器,走4G网络时啥也不干 WL_STEP_CONNETING,//建立连接服务器 WL_STEP_LOGIN,//发登陆包 WL_STEP_UPLOAD//正常上传TEST包 }WLAN_STEP; typedef struct SUT_WL_STATUS { WLAN_STEP Step; //uint8_t NetFlag;//网络状态 0--网络芯片未完成初始化 1--网络IC初始化成功但网线未链接 2--网线已插入但DHCP未分配IP 3--DHCP已分配内网IP uint8_t CtrlReSendCt; //控制重发计数器 uint16_t StepCt; uint16_t CtrlIntervalSendCt;//控制间隔发送计数器 uint16_t CmdNum;//命令流水号 uint16_t RecvCmdNum;//接收到的命令流水号 uint16_t UnauthorizedCt;//鉴权未通过计数器 uint16_t ServerOfflineCt;//离线时间 uint16_t FoTaGetFileInfoCt; }SUT_WL_STATUS; extern SUT_WL_STATUS sutWLanStatus; #define WIRE_LAN_TASK_STK_SIZE 200 extern OS_TID idWLanTask; extern U64 stkWLANTask[WIRE_LAN_TASK_STK_SIZE]; __task void WiredLanTask(void); int32_t WiredSendTcpData(uint8_t *data,uint16_t len); int8_t Connect2Server(int type); void Disconnect2Server(void); //------------------------------------------------------------------------------- #endif //-------------------------------------------------------------------------------