Explorar o código

网络睡眠测试,重启问题已解决,是获取bitmap的原因

CHENJIE-PC\QiXiang_CHENJIE %!s(int64=4) %!d(string=hai) anos
pai
achega
a5e68cb900
Modificáronse 1 ficheiros con 32 adicións e 38 borrados
  1. 32 38
      src/app.c

+ 32 - 38
src/app.c

@@ -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