| | |
| | | char applyid[10]; |
| | | uint16_t receive_id; |
| | | uint16_t g_com_position; |
| | | uint16_t g_com_num; |
| | | static HIDO_INT32 TCPClient_DataProc(HIDO_UINT8 *_u8Data, HIDO_UINT32 _u32Len) |
| | | { |
| | | HIDO_CHAR *apcSplitStr[12]; |
| | | HIDO_UINT32 u32SplitCnt = 0; |
| | | HIDO_CHAR acResponse[200]; |
| | | HIDO_CHAR temp_acResponse[200]; |
| | | HIDO_CHAR acReadponse[200]; |
| | | HIDO_UINT32 datalenth; |
| | | HIDO_UINT32 u32ResponseLen; |
| | | HIDO_UINT32 u32ReadResponseLen; |
| | | LOG_INFO(TRACE_MODULE_APP, "收到数据\r\n"); |
| | | |
| | | |
| | |
| | | { |
| | | u32ResponseLen = snprintf(acResponse, sizeof(acResponse), "$setparaok,%s\r\n", \ |
| | | _u8Data); |
| | | Socket_Send(l_i32TCPClientID, (HIDO_UINT8 *)acResponse, u32ResponseLen); |
| | | memcpy(temp_acResponse,acResponse,sizeof(acResponse)); |
| | | |
| | | u32SplitCnt = HIDO_UtilStrSplit((HIDO_CHAR *)_u8Data, ',', apcSplitStr, HIDO_ARRARY_COUNT(apcSplitStr)); |
| | | receive_id = HIDO_UtilHexStrToInt(apcSplitStr[1]); |
| | | |
| | | if(g_com_map[DEV_ID]==receive_id) |
| | | { |
| | | g_com_position=HIDO_UtilStrToInt(apcSplitStr[2]); |
| | | g_com_map[g_com_position]=HIDO_UtilStrToInt(apcSplitStr[3]); |
| | | if(g_com_map[SEND_4G_SECOND]<30) |
| | | g_com_position=HIDO_UtilStrToInt(apcSplitStr[2]); |
| | | if(g_com_position!=CNT_RESTART&&g_com_position!=0&&g_com_position!=CNT_UPDATE) |
| | | { |
| | | Socket_Send(l_i32TCPClientID, (HIDO_UINT8 *)temp_acResponse, u32ResponseLen); |
| | | g_com_map[g_com_position]=HIDO_UtilStrToInt(apcSplitStr[3]); |
| | | } |
| | | if(g_com_map[SEND_4G_SECOND]<30) |
| | | { |
| | | gps_open_flag=0; |
| | | gps_wait_count=0; |
| | |
| | | receive_id = HIDO_UtilHexStrToInt(apcSplitStr[1]); |
| | | if(g_com_map[DEV_ID]==receive_id) |
| | | { |
| | | g_com_position=HIDO_UtilStrToInt(apcSplitStr[2]); |
| | | g_com_num= HIDO_UtilStrToInt(apcSplitStr[3]); |
| | | u32ReadResponseLen = snprintf(acReadponse, sizeof(acReadponse), "$replypara,%04x,%d", \ |
| | | receive_id,g_com_position); |
| | | for(uint16_t i=0;i<g_com_num;i++) |
| | | { |
| | | datalenth = sprintf((HIDO_CHAR *)&acReadponse[u32ReadResponseLen],",%d",g_com_map[g_com_position+i]); |
| | | u32ReadResponseLen += datalenth; |
| | | } |
| | | Socket_Send(l_i32TCPClientID, (HIDO_UINT8 *)acReadponse, u32ReadResponseLen); |
| | | } |
| | | } |
| | | return HIDO_OK; |