OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 226|回复: 2

STM32F4移植LWIP协议栈,做RAW_TCP客户端实验,收不到服务端数据

[复制链接]

1

主题

1

帖子

0

精华

新手入门

积分
7
金钱
7
注册时间
2024-10-10
在线时间
1 小时
发表于 2024-10-20 13:37:35 | 显示全部楼层 |阅读模式
1金钱
背景:STM32F4移植LWIP协议栈,做网络实验4::RAW_TCP客户端实验;问题:使用正点原子的源码例程,客户端(板子)按键以后能正常发送数据给主机(串口接收后正常显示),但是从主机串口发送消息给客户端,客户端收不到服务端数据,按步骤打印了提示信息来看,客户端是收到了数据的,进入了收到消息的回调函数tcp_recv(),但是并未将串口发送的消息显示在LCD屏幕上,LCD屏幕的驱动并未出错。如何解决?


                if(p!=NULL)//当处于连接状态并且接收到的数据不为空时
                {
                        memset(tcp_client_recvbuf,0,TCP_CLIENT_RX_BUFSIZE);  //数据接收缓冲区清零
                        for(q=p;q!=NULL;q=q->next)  //遍历完整个pbuf链表
                        {
                                //判断要拷贝到TCP_CLIENT_RX_BUFSIZE中的数据是否大于TCP_CLIENT_RX_BUFSIZE的剩余空间,如果大于
                                //的话就只拷贝TCP_CLIENT_RX_BUFSIZE中剩余长度的数据,否则的话就拷贝所有的数据
                                if(q->len > (TCP_CLIENT_RX_BUFSIZE-data_len))
                                {
                                         memcpy(tcp_client_recvbuf+data_len,q->payload,(TCP_CLIENT_RX_BUFSIZE-data_len));//拷贝数据
                                }
                                else
                                {
                                memcpy(tcp_client_recvbuf+data_len,q->payload,q->len);
                                }
                                data_len += q->len;
                                if(data_len > TCP_CLIENT_RX_BUFSIZE)break;//超出TCP客户端接收数组,跳出       
                        }
                        tcp_client_flag|=1<<6;                //标记接收到数据了
                        tcp_recved(tpcb,p->tot_len);//用于获取接收数据,通知LWIP可以获取更多数据
                        pbuf_free(p);          //释放内存
                        ret_err=ERR_OK;
                }


正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

109

主题

5562

帖子

0

精华

资深版主

Rank: 8Rank: 8

积分
10540
金钱
10540
注册时间
2017-2-18
在线时间
1908 小时
发表于 2024-10-22 15:40:40 | 显示全部楼层
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165309
金钱
165309
注册时间
2010-12-1
在线时间
2108 小时
发表于 2024-10-27 21:20:09 | 显示全部楼层
联系我们淘宝技术支持
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2024-11-22 05:38

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表