打印
[STM32H5]

STM32移植LWIP问题

[复制链接]
4756|28
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
孙悟空啊|  楼主 | 2023-7-30 14:36 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
代码功能是创建客户端,静态ip,在407跑通了,但是直接复制移植到429的板子就运行报错,使用ucosii,请问可能是啥原因,lwip初始化成功,tcp客户端也初始化成功,之后就运行调试串口打印出这个
Assertion "arp_table.q == NULL" failed at  line 369 in ..\LWIP\lwip-1.4.1\src\netif\etharp.c



那几行代码是
/* 1) empty entry available? */
  if (empty < ARP_TABLE_SIZE) {
    i = empty;
    LWIP_DEBUGF(ETHARP_DEBUG | LWIP_DBG_TRACE, ("etharp_find_entry: selecting empty entry %"U16_F"\n", (u16_t)i));
  } else {
    /* 2) found recyclable stable entry? */
    if (old_stable < ARP_TABLE_SIZE) {
      /* recycle oldest stable*/
      i = old_stable;
      LWIP_DEBUGF(ETHARP_DEBUG | LWIP_DBG_TRACE, ("etharp_find_entry: selecting oldest stable entry %"U16_F"\n", (u16_t)i));
      /* no queued packets should exist on stable entries */
      LWIP_ASSERT("arp_table.q == NULL", arp_table.q == NULL);                       //这里就是369行
    /* 3) found recyclable pending entry without queued packets? */
    }

使用特权

评论回复
沙发
孙悟空啊|  楼主 | 2023-8-9 15:15 | 只看该作者

STM32移植LWIP问题

顶啊啊啊啊

使用特权

评论回复
板凳
失物招領| | 2023-8-12 15:26 | 只看该作者
你仿真的方式跟踪一下呗,就应该知道了吧

使用特权

评论回复
地板
她已醉| | 2023-8-12 17:32 | 只看该作者
ARP表空值,导致的错?

使用特权

评论回复
5
将爱藏于深海| | 2023-8-12 19:21 | 只看该作者
这个没遇到过啊,但是好像跟你的ARP有点关系

使用特权

评论回复
评论
孙悟空啊 2023-8-15 09:32 回复TA
我移植原子的,跟那个调通的407板都是报这个错,估计就是工程的ucosii的一些配置导致的吧 
6
故意相遇| | 2023-8-12 19:42 | 只看该作者
Arp的表有点问题,是你的IP需要绑定mac

使用特权

评论回复
评论
孙悟空啊 2023-8-15 09:31 回复TA
应该跟mac没关系吧,我移植407的,移植原子的例程都是报这个错,估计是ucosii的一些配置导致的吧 
7
风凉| | 2023-8-12 21:04 | 只看该作者
你换个路由器试试呗,也许可以

使用特权

评论回复
评论
孙悟空啊 2023-8-15 09:30 回复TA
用网线连接电脑的,没用路由器 
8
西洲| | 2023-8-12 23:22 | 只看该作者
这块就是打印arp的表的意思吧

使用特权

评论回复
9
MessageRing| | 2023-8-12 23:35 | 只看该作者
仿真一下看看吧

使用特权

评论回复
10
捧一束彼岸花| | 2023-8-13 01:12 | 只看该作者
这不算是报错吧,你可以忽略这块的

使用特权

评论回复
11
白马过平川| | 2023-8-13 03:53 | 只看该作者
有点像mac没有似的,才会这样

使用特权

评论回复
评论
孙悟空啊 2023-8-15 09:30 回复TA
mac的部分跟原子的一样,用网线连接的 
12
温室雏菊| | 2023-8-13 05:13 | 只看该作者
你这路由器不是要绑定MAC才能联网吧

使用特权

评论回复
评论
孙悟空啊 2023-8-15 09:29 回复TA
没有联网,就是网线连接笔记本的,用例程可以,但是把例程移植到工程就不行了,应该是涉及到ucosii的一些配置吧 mac部分跟原子的一样 void lwip_comm_default_ip_set(__lwip_dev *lwipx) { u32 sn0; sn0=*(vu32*)(0x1FFF7A10);//获取STM32的唯一ID的前24位作为MAC地址后三字节 //默认远端站机IP为:192.168.1.250 lwipx->remoteip[0]=myipdev.remoteip[0]; lwipx->remoteip[1]=myipdev.remoteip[1]; lwipx->remoteip[2]=myipdev.remoteip[2]...  
13
春日负喧| | 2023-8-13 07:21 | 只看该作者
是不是mac冲突了呢?

使用特权

评论回复
评论
孙悟空啊 2023-8-15 09:27 回复TA
没问题哦,移植原子的,void lwip_comm_default_ip_set(__lwip_dev *lwipx) { u32 sn0; sn0=*(vu32*)(0x1FFF7A10);//获取STM32的唯一ID的前24位作为MAC地址后三字节 //默认远端站机IP为:192.168.1.250 lwipx->remoteip[0]=myipdev.remoteip[0]; lwipx->remoteip[1]=myipdev.remoteip[1]; lwipx->remoteip[2]=myipdev.remoteip[2]; lwipx->remoteip[3]=myipdev.remoteip[3]; //MAC地址设置(高三字节固定为:2.0.0,低三字节用STM32唯一ID) lwipx->mac[0]=2;//高三字...  
14
Undshing| | 2023-8-14 23:53 | 只看该作者
有可能是冲突了应该

使用特权

评论回复
评论
孙悟空啊 2023-8-15 10:21 回复TA
怎么解决啊大佬 
15
孙悟空啊|  楼主 | 2023-8-15 11:01 | 只看该作者

STM32移植LWIP问题

直接用原子的例程简单改下可以用,但是之后移植我的功能代码malloc部分啊,tcp部分还是旧的,又报这个错了,所以应该不是ucosii的问题

使用特权

评论回复
16
孙悟空啊|  楼主 | 2023-8-15 11:45 | 只看该作者

STM32移植LWIP问题

本帖最后由 孙悟空啊 于 2023-8-22 09:40 编辑

不知道


使用特权

评论回复
17
jlyuan| | 2023-8-15 21:05 | 只看该作者
IP需要绑定mac?

使用特权

评论回复
18
Bowclad| | 2023-8-15 23:14 | 只看该作者
孙悟空啊 发表于 2023-8-15 11:45
把SDRAMTEST测试函数注释掉好像就行了。。。。有大佬知道为什么嘛#include "sys.h"
#include "delay.h"
#in ...

为什么会有这种问题?

使用特权

评论回复
19
Henryko| | 2023-8-19 22:18 | 只看该作者
ucosii配置有问题?

使用特权

评论回复
20
孙悟空啊|  楼主 | 2023-8-22 09:42 | 只看该作者
Bowclad 发表于 2023-8-15 23:14
为什么会有这种问题?

不知道啊

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

3

主题

25

帖子

0

粉丝