完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
[C] 纯文本查看 复制代码
//TCP Client 测试void tcp_client_test(void){ struct tcp_PCB *tcppcb; //定义一个TCP服务器控制块struct ip_addr rmtipaddr; //远端ip地址u8 *tbuf; u8 key;u8 res=0;u8 t=0; u8 connflag=0;//连接标记//tcp_client_set_remoteip();//先选择IP tbuf=mem_malloc(200);//申请内存if(tbuf==NULL)return ;//内存申请失败了,直接退出tcppcb=tcp_new();//创建一个新的pcbif(tcppcb)//创建成功{//IP4_ADDR(&rmtipaddr,lwipdev.remoteip[0],lwipdev.remoteip[1],lwipdev.remoteip[2],lwipdev.remoteip[3]); IP4_ADDR(&rmtipaddr,192,168,1,104); //tcp_bind(tcppcb, IP_ADDR_ANY, 1000);tcp_connect(tcppcb,&rmtipaddr,TCP_CLIENT_PORT,tcp_client_connected); //连接到目的地址的指定端口上,当连接成功后回调tcp_client_connected()函数 }else res=1;while(res==0){if(1)//,发送数据{tcp_client_flag|=1<<7;//标记要发送数据 }if(tcp_client_flag&1<<6)//是否收到数据?{tcp_client_flag&=~(1<<6);//标记数据已经被处理了. }if(tcp_client_flag&1<<5)//是否连接上?{if(connflag==0){ connflag=1;//标记连接了} }else if(connflag){connflag=0;//标记连接断开了} lwip_periodic_handle();soft_delay(2);t++;if(t==200){if(connflag==0&&(tcp_client_flag&1<<5)==0)//未连接上,则尝试重连{ //tcp_client_connection_close(tcppcb,0);//关闭连接tcppcb=tcp_new();//创建一个新的pcbif(tcppcb)//创建成功{ if(tcp_connect(tcppcb,&rmtipaddr,TCP_CLIENT_PORT,tcp_client_connected)==0)//连接到目的地址的指定端口上,当连接成功后回调tcp_client_connected()函数break;}}t=0;}}//tcp_client_connection_close(tcppcb,0);//关闭TCP Client连接mem_free(tbuf);} 一直抓到下面这些包 貌似是握手失败 |
|
相关推荐
1个回答
|
|
帮顶....
|
|
|
|
只有小组成员才能发言,加入小组>>
如何使用STM32+nrf24l01架构把有线USB设备无线化?
2543 浏览 7 评论
请问能利用51单片机和nRF24L01模块实现实时语音无线传输吗?
2331 浏览 5 评论
3156 浏览 3 评论
2801 浏览 8 评论
为什么ucosii上移植lwip后系统进入了HardFault_Handler?
2759 浏览 4 评论
请教各位大咖:有没有接收频率32M左右的芯片推荐的?先感谢啦!
607浏览 1评论
852浏览 0评论
965浏览 0评论
618浏览 0评论
445浏览 0评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-22 07:55 , Processed in 1.022056 second(s), Total 79, Slave 62 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号