完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
扫一扫,分享给好友
本人最近在做一个项目,STM32作为SERVER 主机PC作为Client 要实现 一块CPU与两台PC同时进行TCP连接(两台PC的IP地址是不同的) 以下是本人的初始化代码 但是没有用 搞了几天了 还是不能实现和两个IP进行连接
void TCP_Client_Init1(u16_t local_port,u16_t remote_port,u16_t remote_port1,unsigned char a,unsigned char b,unsigned char c,unsigned char d,unsigned char e,unsigned char f,unsigned char g,unsigned char h) { struct ip_addr ipaddr,ipaddr_redun; err_t err,err1; IP4_ADDR(&ipaddr,a,b,c,d); //主服务器IP地址 IP4_ADDR(&ipaddr_redun,e,f,g,h); tcp_client_PCB = tcp_new(); /* 建立通信的TCP控制块(Clipcb) */ tcp_client_pcb1 = tcp_new(); if ((!tcp_client_pcb)&&(!tcp_client_pcb1)) { return ; } err = tcp_bind(tcp_client_pcb,IP_ADDR_ANY,local_port); /* 绑定本地IP地址和端口号 ,本地ip地址在 LwIP_Init()中已经初始化*/ err1 = tcp_bind(tcp_client_pcb1,IP_ADDR_ANY,local_port); if((err != ERR_OK)&&(err1 != ERR_OK)) { return ; } tcp_connect(tcp_client_pcb,&ipaddr_redun,remote_port1,TCP_Connected); tcp_recv(tcp_client_pcb1,TCP_Client_Recv); tcp_connect(tcp_client_pcb,&ipaddr,remote_port,TCP_Connected);//注册回调函数 tcp_recv(tcp_client_pcb,TCP_Client_Recv); /* 设置tcp接收回调函数 */ } |
|
相关推荐
2个回答
|
|
那要用两个不同的端口号吧。同一个端口号连接两台PC,只能采用组播,组播只能是UDP。
|
|
|
|
你这个server的代码有问题吧?服务端的代码呢?
|
|
|
|
你正在撰写答案
如果你是对答案或其他答案精选点评或询问,请使用“评论”功能。
OV7670摄像头使用串口发送数据到另一个板子上的lcd,出现花屏
1378 浏览 1 评论
700 浏览 0 评论
680 浏览 0 评论
STM32CUBEMX(12)--IIC,12864OLED(0.96寸)移植
719 浏览 0 评论
STM32CUBEMX(5)--自定义红外NEC解码,定时器TIM捕获方式
653 浏览 0 评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-9-29 07:35 , Processed in 0.538882 second(s), Total 75, Slave 59 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号