初级会员
- 积分
- 78
- 金钱
- 78
- 注册时间
- 2016-3-23
- 在线时间
- 32 小时
|
楼主 |
发表于 2016-7-28 16:31:14
|
显示全部楼层
407 同时作为TCP 客户端和服务端时不能正常工作。单独可以正常工作。
同时作为客户端和服务端时,初始化全部成功,说明进程已经建立。但是当用网络调试助手连接TCP 服务器(407)时,串口打印出来的数据Assertion "OSQCreate" failed at line 67 in ..\LWIP\arch\sys_arch.c,说明有个邮箱没有建立成功。后来就想是不是因为堆栈太大,空间不足,所以就相反设法减小任务堆栈大小,结果该的之后,引起HDCP失败。
726
昨天出现的问题,有可能是因为sys_arch.h里面最大消息邮箱的数量设置小了,所以导致创建消息邮箱失败。
也有可能是os_cfg.h 最大事件数设置小了
在昨天的基础上实验了 tcp 客户端和服务器端,把udp去掉,结果可以正常工作。
在更改相关配置之后,
把3个功能全部加上,tcp客户端和服务端可以正常工作,结果UDP出现问题,结果提示
Assertion "netbuf_alloc: invalid buf" failed at line 109 in ..\LWIP\lwip-1.4.1\src\api\netbuf.c
Assertion "bad pbuf type" failed at line 571 in ..\LWIP\lwip-1.4.1\src\core\pbuf.c
由此想到了可能是操作系统的配置文件,或者是lwip 的相关配置文件有的参数配置过小。
#define PBUF_POOL_SIZE 25 //PBUF_POOL_SIZE:pbuf内存池个数
#define MEMP_NUM_PBUF 25 //MEMP_NUM_PBUF:memp结构的pbuf数量,如果应用从ROM或者静态存储区发送大量数据时,这个值应该设置大一点
更改这连个参数,这三个可以终于可以同时工作了。
调试过程 |
|