|
@@ -33,7 +33,7 @@ uint8_t MainSlpHandler = 0xff;
|
|
|
uint8_t UartSlpHandler = 0xfe;
|
|
|
uint8_t CanSlpHandler = 0xfd;
|
|
|
uint8_t TcpSlpHandler = 0xfd;
|
|
|
-
|
|
|
+int TcpconnectID = -1;
|
|
|
#define Uart_Send_LEN (8)
|
|
|
#define Uart_Rece_LEN (40)
|
|
|
|
|
@@ -291,14 +291,14 @@ static void Main_Task(void* arg)
|
|
|
printf("Main_Sleep\n");
|
|
|
#endif
|
|
|
FaultDisplay(LED_TURN_ON);
|
|
|
- slpManDeepSlpTimerStart(deepslpTimerID,300000);
|
|
|
+ slpManDeepSlpTimerStart(deepslpTimerID,600000);
|
|
|
slpManSlpState_t slpstate = slpManPlatGetSlpState();
|
|
|
#ifdef USING_PRINTF
|
|
|
printf("which slpstate can go now :%d \n",slpstate);
|
|
|
#endif
|
|
|
while(1)
|
|
|
{
|
|
|
- osDelay(30000/portTICK_PERIOD_MS);
|
|
|
+ osDelay(60000/portTICK_PERIOD_MS);
|
|
|
}
|
|
|
break;
|
|
|
}
|
|
@@ -590,7 +590,7 @@ static void Uart_Task(void* arg)
|
|
|
#endif
|
|
|
while(1)
|
|
|
{
|
|
|
- osDelay(30000/portTICK_PERIOD_MS);
|
|
|
+ osDelay(60000/portTICK_PERIOD_MS);
|
|
|
}
|
|
|
}
|
|
|
}
|
|
@@ -818,7 +818,7 @@ static void Can_Task(void* arg)
|
|
|
#endif
|
|
|
while(1)
|
|
|
{
|
|
|
- osDelay(30000/portTICK_PERIOD_MS);
|
|
|
+ osDelay(60000/portTICK_PERIOD_MS);
|
|
|
}
|
|
|
}
|
|
|
}
|
|
@@ -883,6 +883,10 @@ static INT32 socketRegisterPSUrcCallback(urcID_t eventID, void *param, UINT32 pa
|
|
|
{
|
|
|
cereg = (CmiPsCeregInd *)param;
|
|
|
gCellID = cereg->celId;
|
|
|
+ if (gCellID==0)
|
|
|
+ {
|
|
|
+ TcpconnectID = -1;
|
|
|
+ }
|
|
|
#ifdef USING_PRINTF
|
|
|
printf("URCCallBack:CEREG changed act:%d celId:%d locPresent:%d tac:%d\n", cereg->act, cereg->celId, cereg->locPresent, cereg->tac);
|
|
|
#endif
|
|
@@ -966,7 +970,6 @@ static void Tcp_Task(void* arg)
|
|
|
CHAR serverport[] = "8712";
|
|
|
struct addrinfo hints, *server_res;
|
|
|
int TcpsendID = -1;
|
|
|
- int TcpconnectID = -1;
|
|
|
memset( &hints, 0, sizeof( hints ) );
|
|
|
hints.ai_socktype = SOCK_STREAM;
|
|
|
hints.ai_protocol = IPPROTO_TCP;
|
|
@@ -985,45 +988,36 @@ static void Tcp_Task(void* arg)
|
|
|
{
|
|
|
case PROCESS_TCP_STATE_IDLE:
|
|
|
{
|
|
|
- osDelay(100);
|
|
|
+ osDelay(1000);
|
|
|
break;
|
|
|
}
|
|
|
case PROCESS_TCP_STATE_LINK:
|
|
|
{
|
|
|
if(TcpconnectID<0)
|
|
|
{
|
|
|
- if (xQueueReceive(psEventQueueHandle, &queueItem, portMAX_DELAY))
|
|
|
+ #ifdef USING_PRINTF
|
|
|
+ printf("Connecting...!%d\n",TcpconnectID);
|
|
|
+ #endif
|
|
|
+ if (getaddrinfo( serverip, serverport , &hints, &server_res ) != 0 )
|
|
|
{
|
|
|
- switch(queueItem->messageId)
|
|
|
- {
|
|
|
- case QMSG_ID_NW_IP_READY:
|
|
|
- {
|
|
|
- if (getaddrinfo( serverip, serverport , &hints, &server_res ) != 0 )
|
|
|
- {
|
|
|
- #ifdef USING_PRINTF
|
|
|
- printf("TCP connect unresolved dns\n");
|
|
|
- #endif
|
|
|
- }
|
|
|
- sockfd = socket(AF_INET, SOCK_STREAM, 0);
|
|
|
- TcpconnectID = connect(sockfd, (struct sockaddr *) server_res->ai_addr, server_res->ai_addrlen);
|
|
|
- if(TcpconnectID<0)
|
|
|
- {
|
|
|
- #ifdef USING_PRINTF
|
|
|
- printf("Connect failed!%d\n",TcpconnectID);
|
|
|
- #endif
|
|
|
- close(sockfd);
|
|
|
- PROC_TCP_STATE_SWITCH(PROCESS_TCP_STATE_IDLE);
|
|
|
- break;
|
|
|
- }
|
|
|
- else
|
|
|
- {
|
|
|
- sendQueueMsg(QMSG_ID_SOCK_SENDPKG, 0);
|
|
|
- PROC_TCP_STATE_SWITCH(PROCESS_TCP_STATE_WORK);
|
|
|
- }
|
|
|
- break;
|
|
|
- }
|
|
|
- }
|
|
|
- free(queueItem);
|
|
|
+ #ifdef USING_PRINTF
|
|
|
+ printf("TCP connect unresolved dns\n");
|
|
|
+ #endif
|
|
|
+ }
|
|
|
+ sockfd = socket(AF_INET, SOCK_STREAM, 0);
|
|
|
+ TcpconnectID = connect(sockfd, (struct sockaddr *) server_res->ai_addr, server_res->ai_addrlen);
|
|
|
+ if(TcpconnectID<0)
|
|
|
+ {
|
|
|
+ #ifdef USING_PRINTF
|
|
|
+ printf("Connect failed!%d\n",TcpconnectID);
|
|
|
+ #endif
|
|
|
+ close(sockfd);
|
|
|
+ PROC_TCP_STATE_SWITCH(PROCESS_TCP_STATE_IDLE);
|
|
|
+ break;
|
|
|
+ }
|
|
|
+ else
|
|
|
+ {
|
|
|
+ PROC_TCP_STATE_SWITCH(PROCESS_TCP_STATE_WORK);
|
|
|
}
|
|
|
}
|
|
|
else
|