OpenEdv-开源电子网

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

lwip移植到ucos iii上的xiao'w

[复制链接]

7

主题

17

帖子

0

精华

新手入门

积分
17
金钱
17
注册时间
2017-8-9
在线时间
18 小时
发表于 2018-4-8 21:13:54 | 显示全部楼层 |阅读模式
err_t sys_mbox_new( sys_mbox_t *mbox,int size)
{
    OS_ERR err;
    CPU_CHAR *p_name = "TCP IP";
    (*mbox)=mymalloc(SRAMEX,sizeof(TQ_DESCR));    //为消息邮箱申请内存
    mymemset((*mbox),0,sizeof(TQ_DESCR));         //清除mbox的内存
    if(*mbox)//内存分配成功
    {
        if(size>MAX_QUEUE_ENTRIES)size=MAX_QUEUE_ENTRIES;        //消息队列最多容纳MAX_QUEUE_ENTRIES消息数目
         OSQCreate((*mbox)->pQ,p_name,size,&err);  //使用UCOS创建一个消息队列
        LWIP_ASSERT("OSQCreate",(*mbox)->pQ!=NULL);
        if((*mbox)->pQ!=NULL)
        {
            return ERR_OK;  //返回ERR_OK,表示消息队列创建成功 ERR_OK=0
        }
        else
        {
            myfree(SRAMEX,(*mbox));
            return ERR_MEM;          //消息队列创建错误
        }
    }else return ERR_MEM;             //消息队列创建错误
}

我把lwip的带操作系统移植到ucos iii上,修改arch文件中的邮箱创建代码如上,但是运行的时候一直打印出下面的错误,
Assertion "OSQCreate" failed at line 69 in E:\EleScaleProject\LWIP\arch\sys_arch.c
Assertion "failed to create tcpip_thread mbox" failed at line 463

但是我把OSQCreate((*mbox)->pQ,p_name,size,&err); 函数里面的err打印出来也是没有错误的,找了两天没找到问题在哪。。。。


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

使用道具 举报

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

本版积分规则



关闭

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

正点原子公众号

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

GMT+8, 2024-11-24 21:43

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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