OpenEdv-开源电子网

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

LWIP 接收缓存问题(裸机移植LWIP)

[复制链接]

4

主题

26

帖子

0

精华

初级会员

Rank: 2

积分
118
金钱
118
注册时间
2013-10-27
在线时间
23 小时
发表于 2020-8-24 15:55:40 | 显示全部楼层 |阅读模式
    各位大神,最近用到LWIP协议栈来实现设备和上位机的以太网通讯,想请教下在原子    tcp_Client_demo.c中,定义了一个数据接收缓存:    u8 tcp_client_recvbuf[TCP_CLIENT_RX_BUFSIZE];//数据接收缓存

   在Lan8720.c中的定义的底层数据接收缓存:
   uint8_t *Rx_Buff;                                                   //底层数据接收缓存

   对于这两处缓存,一开始有些疑惑,思考了一些时间,决定运行代码,发送数据来跟踪调试代码。个人调试代码跟着程序运行,找到调用tcp_client_recvbuf的地方,
是在tcp_Client_demo.c接收数据的时候。tcp_client_recvbuf中存放的是上位机发送过来的数据,而在Rx_Buff中没发现接收数据。因此,我个人判断Rx_Buff并不是
真正经过LWIP所解析后的数据,而是MAC网卡接收到的原始数据,这个原始数据是从DMA描述符中读取到的,而tcp_client_recvbuf中数据,是经过LWIP协议栈处理
后的数据。不知道这样理解对不对。说的不对的地方请大家指正。




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

使用道具 举报

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

本版积分规则



关闭

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

正点原子公众号

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

GMT+8, 2025-4-30 14:09

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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