OpenEdv-开源电子网
标题:
求助!!!移植LWIP的问题
[打印本页]
作者:
lishu666
时间:
2019-11-14 00:10
标题:
求助!!!移植LWIP的问题
Assertion "pbuf_free: p->ref > 0" failed at line 650 in ..\LWIP\lwip-1.4.1\src\core\pbuf.c
STM32F407做TCP服务器,连接的第一次没问题,不断开就没事,一断开就出事了,后续过了几分钟就会卡住程序死机,调试时奇怪不会死机
串口打印出现这条语句
翻译断言“pbuf_free: p->ref > 0”在..\LWIP\ LWIP -1.4.1\src\core\pbuf.c的第650行失败
这是释放pbuf发生的问题吗,是不是内存不够
用的是FreeRTOS
代码和官方几乎一样
除了这下面这些是移植参考网友的,有经验的大佬请教一下,问题大致是哪里出的
//当消息指针为空时,指向一个常量pvNullPointer所指向的值.
//在UCOS中如果OSQPost()中的msg==NULL会返回一条OS_ERR_POST_NULL
//错误,而在lwip中会调用sys_mbox_post(mbox,NULL)发送一条空消息,我们
//在本函数中把NULL变成一个常量指针0Xffffffff
const void * const pvNullPointer = (mem_ptr_t*)0xffffffff;
//创建一个消息邮箱
//*mbox:消息邮箱
//size:邮箱大小
//返回值:ERR_OK,创建成功
// 其他,创建失败
err_t sys_mbox_new( sys_mbox_t *mbox, int size)
{
作者:
lishu666
时间:
2019-11-14 18:35
移植要注意sys_arch的内容,开、关中断换成临界区。
欢迎光临 OpenEdv-开源电子网 (http://www.openedv.com/)
Powered by Discuz! X3.4