#include "includes.h" WIFISTATUE WifiStatue; DEVICELOGIN DeviceLogin; SERVERRESP ServerResp; unsigned char HeartTickCt; unsigned char HeartTimeOut; /************************************************************ ״̬ÐÅÏ¢»ã±¨ StaueSendPosition ·¢ËÍλÖÃÊý¾Ý Cmd=0x0200 ×ܳ¤¶È= ***********************************************************************************/ void TSStatueSendPosition(short cmd) { int i; int len; unsigned char buf[400];//150 char temp[3]; char printfbuf[20]; switch(cmd) { case TS_LOCATION_INFORMATION_REPORTING: //״̬ÉÏ´« len=TSTcpPacket(buf,sutProductPara.PSN,TS_LOCATION_INFORMATION_REPORTING,(unsigned char *)&Device_Up,sizeof(SUT_UP)); HeartTickCt=0; break; case TS_TERMINAL_LOGIN: //µÇ¼°ü SlwTrace(INF,"----µÇ¼----\r\n"); memset(&DeviceLogin,0,sizeof(DeviceLogin)); DeviceLogin.DeviceSN=sutProductPara.PSN; len=TSTcpPacket(buf,sutProductPara.PSN,TS_TERMINAL_LOGIN,(unsigned char *)&DeviceLogin,sizeof(DEVICELOGIN)); HeartTickCt=0; break; case TS_TERMINAL_HEARTBEAT: //ÐÄÌø°ü SlwTrace(INF,"---ÐÄÌø----\r\n"); len=TSTcpPacket(buf,sutProductPara.PSN,TS_TERMINAL_HEARTBEAT,0,0); break; default: break; } ///////////////////////////////////// SlwTrace(INF,"/**********start***********/\r\n"); snprintf(printfbuf,sizeof(printfbuf),"LEN====%d\r\n",len); SlwTrace(INF,printfbuf); for(i=0;i>8)&0xff; pBuf[i++]=ID&0xff; //ÏûÏ¢ÌåÊôÐÔ pBuf[i++]=DataLen &0x3f; pBuf[i++]=DataLen &0xff; //PSN for(j=0;j<8;j++){ pBuf[i++]=Psnsv[j]; } //ÏûÏ¢Á÷Ë®ºÅ pBuf[i++] = (liushiID>>8)&0xff; pBuf[i++] = liushiID&0xff; liushiID++; if(liushiID>65533){ liushiID=0; } if(pData!=NULL) { //snum++; //ÏûÏ¢°ü·â×°Ïî //msgPacket.msgPacketID=0x30; //msgPacket.msgTotalCount=0x30; //pBuf[i++] = msgPacket.msgPacketID; //pBuf[i++] = msgPacket.msgTotalCount; //MSnum++; //°ü·â×°Ïî 4 for(j=0;j3){ /************µÇ¼δ³É¹¦£¬Ã¿2·ÖÖÓÇëÇóÒ»´Î************/ if(LoginTryCt++>20){ TSStatueSendPosition(TS_TERMINAL_LOGIN); } }else if(++LoginTryCt>10){ LoginTryCt=0; ReLoginTryct++; TSStatueSendPosition(TS_TERMINAL_LOGIN); } }else if(sut_sys_status.Logined==1 && WifiStatue==CONNECTOK){ /***********¶¨Ê±15S·¢ËÍÐÄÌø°ü*****************/ if(HeartTickCt++>15){ TSStatueSendPosition(TS_TERMINAL_HEARTBEAT); HeartTickCt=0; HeartTimeOut=0; } if(HeartTimeOut--==0)WifiStatue=WIFIINVALID; //ÐÄÌø³¬Ê± }else{ ///////////////////Á´½ÓÒì³£////////////////////////////////////////ÖØÐÂÁ´½Ó WifiStatue=WIFIINVALID; } }