WXK
2025-03-12 d5d1ca2ebf9087415d3d11907cd79ba58162760e
keil/include/src/TCPClient.c
@@ -296,7 +296,40 @@
//      userkey_state = 0;
    Socket_Send(l_i32TCPClientID, (HIDO_UINT8 *)GPS_ParseGGA_data, GPS_ParseGGA_changdu);
}
char senddata[2048];
void HexToAsciiSendUDP(uint8_t* data,uint8_t len)
{
    static HIDO_CHAR l_acUploadBuff[2048];
    static HIDO_UINT32 l_u32UploadBuffLen = 0;
    static HIDO_UINT32 l_u32UdpsendTick = 0;
   uint8_t i,temp;
   for(i=0;i<len;i++)
   {
      temp = *data++;
      sprintf(&senddata[2*i],"%x",temp>>4);
      sprintf(&senddata[2*i+1],"%x",temp&0xf);
   }
    senddata[2*len] = 0x0d;
    senddata[2*len+1] = 0x0a;
//    if(DBG_GetMode() == DBG_MODE_CFG)
//    Uart_Send(0, (HIDO_UINT8 *) senddata, 2*len+2);
//    UDPClient_Uploadhex(senddata,2*len+2);
    if(TCP_CLIENT_STATE_CONNECTED == l_eTCPClientState)
    {
        memcpy(l_acUploadBuff + l_u32UploadBuffLen, senddata, 2*len+2);
        l_u32UploadBuffLen += 2*len+2;
       // if((l_u32UploadBuffLen + u32Len )> sizeof(l_acUploadBuff))
//        if((HIDO_TimerGetTick() - l_u32UdpsendTick) >= 200)
//        {
//            l_u32UdpsendTick = HIDO_TimerGetTick();
            Socket_Send(l_i32TCPClientID, (HIDO_UINT8 *)l_acUploadBuff, l_u32UploadBuffLen);
            l_u32UploadBuffLen = 0;
//        }
    }
}
void TCPHeartBeatUpload(void)
{
    HIDO_CHAR acHeart[200];
@@ -345,9 +378,9 @@
                l_eTCPClientState = TCP_CLIENT_STATE_CONNECTING;
               HIDO_UtilSnprintf((HIDO_CHAR *) l_au8CmdBuff, sizeof(l_au8CmdBuff), "%u.%u.%u.%u", ip0,ip1, ip2, ip3);
               HIDO_UtilSnprintf((HIDO_CHAR *) l_au8CmdBuff, sizeof(l_au8CmdBuff), "%u.%u.%u.%u", g_com_map[IP_0], g_com_map[IP_1], g_com_map[IP_2], g_com_map[IP_3]);
                Socket_Connect(l_i32TCPClientID, (HIDO_CHAR *) l_au8CmdBuff, port);
                Socket_Connect(l_i32TCPClientID, (HIDO_CHAR *) l_au8CmdBuff, g_com_map[PORT]);
//             HIDO_UtilSnprintf((HIDO_CHAR *) l_au8CmdBuff, sizeof(l_au8CmdBuff), "123.57.87.125");
//                Socket_Connect(l_i32TCPClientID, (HIDO_CHAR *) l_au8CmdBuff, 8888);
@@ -406,7 +439,29 @@
    return HIDO_OK;
}
HIDO_INT32 TCPClient_Uploadhex(uint8_t *_pcGGA,uint16_t u32Len)
{
    static HIDO_CHAR l_acUploadBuff[1024];
    static HIDO_UINT32 l_u32UploadBuffLen = 0;
    static HIDO_UINT32 l_u32UdpsendTick = 0;
    if(TCP_CLIENT_STATE_CONNECTED == l_eTCPClientState)
    {
        memcpy(l_acUploadBuff + l_u32UploadBuffLen, _pcGGA, u32Len);
        l_u32UploadBuffLen += u32Len;
       // if((l_u32UploadBuffLen + u32Len )> sizeof(l_acUploadBuff))
        if((HIDO_TimerGetTick() - l_u32UdpsendTick) >= 200)
        {
            l_u32UdpsendTick = HIDO_TimerGetTick();
            Socket_Send(l_i32TCPClientID, (HIDO_UINT8 *)l_acUploadBuff, l_u32UploadBuffLen);
            l_u32UploadBuffLen = 0;
        }
    }
    return HIDO_OK;
}
HIDO_BOOL TCPClient_IsSendOver(HIDO_VOID)
{
    return Socket_IsSendQueueEmpty(l_i32TCPClientID);
@@ -435,16 +490,16 @@
    return HIDO_OK;
}
char str[17]= {"AT+IPR=9600;&W\r\n"};
char str[19]= {"AT+IPR=115200;&W\r\n"};
void AIR780E_Reset(void)
{
      PCA9555_Set_One_Value_Output(AIR780E_ENBALE,0);//关闭4G
    delay_ms(1500);
    PCA9555_Set_One_Value_Output(AIR780E_ENBALE,1);//打开4G
    delay_ms(3000);
//     Uart_ReConfigBaudRate(UART_ID_4G,115200);
//    uart_send(UART_ID0, str,17, NULL);
//    Uart_ReConfigBaudRate(UART_ID_4G,9600);
//    uart_send(UART_ID0, str,19, NULL);
//    Uart_ReConfigBaudRate(UART_ID_4G,115200);
}
uint8_t IfTCPConnected(void)