主题:tcp

  共有19496人关注过本帖    
cvbcv
1楼


tcp  发帖心情 Post By:2005-3-21 10:56:00   [只看该作者]

我下位机程序要从独立运行转入和上位机的tcp联网模式
期间搁一定时间就要检查和上位机是否建立连接  但是时间长了 比如1-2个小时后 怎么也和上位机建立不起来  只有重启后重新初试化 网口才行  该怎么做呢?  请赐教
转入联网的代码我是这样写的
if(c2==10&&Error_No==11)
 {
   c2=0;
   NetPackagePro();
   if(ConnIsEstablished(conno))
   {
                       if(!ConnIsFatal(conno))
                       {
                       printf("connected! Goto RealTime!p2=5\n");
                         goto loop1;
                       }
                      }
                 }
                if(p2==40&&Error_No==11)
                 {
                 p2=0;
                 NetPackagePro();
                    if(ConnIsEstablished(conno))
                     {
                       if(!ConnIsFatal(conno))
                       {
                       printf("connected!Goto RealTime");
                         goto loop1;
                       }
                      }
                    TermEthernetNet();
                    InitEthernetNet(LocalIP,MaskCode);
                    NetPackagePro();
                    port = MyPort();
                    conno = ConnOpen( ServerIP, "TCP/IP", port, 54088, NONBLOCKOPEN );
                    if(ConnIsEstablished(conno))
                     {
                       if(!ConnIsFatal(conno))
                       {
                       printf("connected!Goto RealTime!p2=100");
                         goto loop1;
                       }
                      }
                 }

  单帖管理 | 引用 | 回复 回到顶部
cvxb
2楼


  发帖心情 Post By:2005-3-21 10:58:00   [只看该作者]

c2 和 p2  是分别循环 10次 和40次 检查一次连接情况

  单帖管理 | 引用 | 回复 回到顶部
zhl
3楼


  发帖心情 Post By:2005-3-21 12:23:00   [只看该作者]

对于你的这种应用,连接的管理最好利用状态机方法,这样程序的运行效率更高。可参考我们提供的支持多连接TCP服务器的例子。

  单帖管理 | 引用 | 回复 回到顶部
bcxv
4楼


  发帖心情 Post By:2005-3-21 13:59:00   [只看该作者]

你的意思是把下位机做为sever ?
另:多连接TCP sever的Demo 在光盘什么位置  谢谢



  单帖管理 | 引用 | 回复 回到顶部
zhl
5楼


  发帖心情 Post By:2005-3-21 14:25:00   [只看该作者]

不是这个意思,下位机仍然可以作为client,但对于连接的管理方法可以借鉴 多连接TCP sever, 这个程序在 >TCP_IP协议库及例程>NETAPP 目录下,见TCPSVR1.prj。

  单帖管理 | 引用 | 回复 回到顶部
cvbx
6楼


  发帖心情 Post By:2005-3-21 14:41:00   [只看该作者]

收到

  单帖管理 | 引用 | 回复 回到顶部

返回首页

tcp

用户名:
            验证码: 验证码,看不清楚?请点击刷新验证码
内容: