wanglq1145 发表于 2022-7-27 14:55:36

RL-TCPnet再次连接慢问题

老师,遇到一个问题请教一下你:
我目前的应用是RL-TCPnet作为客户端与上位机软件通信,遇到的问题是:
1.当服务器断开连接时,客户端板子再次连接时快时慢。快时秒连接,慢时几分钟才能再次建立连接
2.还有请教一下连接终止,是个什么含义                /* 连接断开 */
                case netTCP_EventClosed:                       
                        NetTcp.Ready=0;
                        NetTcp.ConnectFlag=1;       
                        printf_debug("Connection has been closed\r\n");
                        break;
                /* 连接终止 */
                case netTCP_EventAborted:
                        NetTcp.ConnectFlag=2;                       
                        break;
                /* 发送的数据收到远程设备应答 */
                case netTCP_EventACK:
                        break;
                /* 接收到TCP数据帧,ptr指向数据地址,par记录数据长度,单位字节 */
                case netTCP_EventData:
                        EcvPack(Ackbuff,buf,len);                                       
                        break;
/*******************************/
                        if(bsp_CheckTimer(0))
                        {
                                switch(NetTcp.ConnectFlag)
                                {
                                        case 0:                                               
                                                if(netTCP_GetState(tcp_sock) != netTCP_StateESTABLISHED){                                               
                                                        res=netTCP_Connect (tcp_sock, (NET_ADDR *)&addr, LocalPort_NUM);
                                                        printf_debug("%s\r\n", ReVal_Table);
                                                        if(res==0)NetTcp.ConnectFlag=0xff;                                                                                                                       
                                                }                                                       
                                                break;
                                        case 1:
                                                netTCP_Close(tcp_sock);       
                                                bsp_StopTimer(0);
                                                NetTcp.TimFlag=0;       
                                                NetTcp.ConnectFlag=0;
                                                g_ucEthLinkStatus=3;                                                                                                                                               
                                                break;
                                        case 2:
                                                NetTcp.ConnectFlag=0;       
                                                //netTCP_ReleaseSocket (tcp_sock);
                                                //netTCP_Close(tcp_sock);                                       
                                                break;                                                                       
                                        default:break;
                                }
                        }               

wanglq1145 发表于 2022-7-27 14:59:40

代码的上半部分给了标志,下半部分是:当未连接时启了个200ms定时器,处理连接网络。
发现没有连上网时,进入上半部分连接终止case netTCP_EventAborted:后,都需要15秒的时间再次重连,

eric2013 发表于 2022-7-27 15:26:53

使用RL-TCPnet V7.X的函数netTCP_Connect反复重连服务器端,可以在前面调用下netTCP_Abort,保证每次都可以正常重连
https://www.armbbs.cn/forum.php?mod=viewthread&tid=110435&fromuid=58
(出处: 硬汉嵌入式论坛)

BruceWang 发表于 2022-11-6 17:24:18

BruceWang 发表于 2022-11-6 17:24:50

你客户端是怎么连接服务器的呀?直接使用的硬汉哥的例程吗?为啥我的客户端一直连接不上服务器呀?能分享一下经验吗?😎
页: [1]
查看完整版本: RL-TCPnet再次连接慢问题