硬汉嵌入式论坛

 找回密码
 立即注册
查看: 449|回复: 5
收起左侧

ThreadX 创建套接字失败(socket函数返回值为-1)

[复制链接]

2

主题

9

回帖

15

积分

新手上路

积分
15
发表于 2024-3-5 11:27:57 | 显示全部楼层 |阅读模式
本帖最后由 fsp 于 2024-3-5 11:37 编辑

使用stm32cubemx生成THreadX工程(开启threadx core,file core,netXDuo core,Lan8742 的phy驱动),用的程序是github 上threadx NetxDuo Samples文件夹中的[color=var(--fgColor-accent, var(--color-accent-fg)) !important]demo_bsd_tcp.c,编译已经通过,但是运行过程中就出现套接字创建失败(返回值-1)的问题,RJ45黄灯一直在闪烁。硬件:stm32f429igt6,phy用lwip试过,没有问题。

6.png 5.png
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
106726
QQ
发表于 2024-3-5 16:29:12 | 显示全部楼层
单步调试进入这个函数看下从那里返回,应该是资源不足导致的。
回复

使用道具 举报

2

主题

9

回帖

15

积分

新手上路

积分
15
 楼主| 发表于 2024-3-5 16:44:28 | 显示全部楼层
本帖最后由 fsp 于 2024-3-5 20:15 编辑
eric2013 发表于 2024-3-5 16:29
单步调试进入这个函数看下从那里返回,应该是资源不足导致的。


进入nx_bsd_socket(INT protocolFamily, INT type, INT protocol)这个函数,然后在这个地方获取mutex失败了,返回值是:TX_MUTEX _ERROR (0x1C) 无效的互斥信号量控制块。
,这是因为资源不足吗?如果是资源不足的话,我该怎么修改,是修改stack大小吗?
7.png
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
106726
QQ
发表于 2024-3-6 09:39:09 | 显示全部楼层
fsp 发表于 2024-3-5 16:44
进入nx_bsd_socket(INT protocolFamily, INT type, INT protocol)这个函数,然后在这个地方获取mutex失 ...

这个地方错误的话,应该是你的bsd socket实现代码有点问题。
回复

使用道具 举报

2

主题

9

回帖

15

积分

新手上路

积分
15
 楼主| 发表于 2024-3-6 09:55:16 | 显示全部楼层
eric2013 发表于 2024-3-6 09:39
这个地方错误的话,应该是你的bsd socket实现代码有点问题。

这个是从github threadx 拿下来的,官方的代码,也会出现问题吗?
回复

使用道具 举报

3

主题

1222

回帖

1231

积分

至尊会员

积分
1231
发表于 2024-3-6 14:33:47 | 显示全部楼层
关注中
回复

使用道具 举报

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

本版积分规则

QQ|小黑屋|Archiver|手机版|硬汉嵌入式论坛

GMT+8, 2024-5-2 06:49 , Processed in 0.184818 second(s), 29 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2023, Tencent Cloud.

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