硬汉嵌入式论坛

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

[ThreadX全家桶] STM32H7 ThreadX+NetX Multicast 无法正常工作

[复制链接]

2

主题

21

回帖

27

积分

新手上路

积分
27
发表于 2022-4-29 20:17:11 | 显示全部楼层 |阅读模式
Hi,各位
在STM32 STM32H7 ThreadX+NetX 下想实现一个Multicast的发送。
基础:
1. H7 上UDP,TCP通信正常。
2. PC上的组播Group正常工作。

问题:
1. 使用H7 Netx的UDP往,244.3.30.56:100这个D类IP群组上发送数据,PC这边收不到数据,使用TCP , UDP点对点通信正常工作,一直找资料没理出头绪。
2. 尝试让H7 加入 mutilcast 或 IGMP组,发现一旦加入组播,TCP , udp都断开了,无法Ping通,甚至需要断电重启才能恢复正常,一旦加入组播又会断开。

以上,各位有没有经验咱们可以探讨一下。  使用组播主要是为了设备互相发现。  或者各位还有别的好思路。
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
107396
QQ
发表于 2022-4-30 11:56:08 | 显示全部楼层
帮顶,没玩过组播。
回复

使用道具 举报

2

主题

21

回帖

27

积分

新手上路

积分
27
 楼主| 发表于 2022-5-1 11:42:49 | 显示全部楼层
eric2013 发表于 2022-4-30 11:56
帮顶,没玩过组播。

谢谢,硬汉哥。   你说局域网设备间不知道IP,除了用组播,广播外还有别的发现手段.....
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
107396
QQ
发表于 2022-5-3 07:49:37 | 显示全部楼层
dsl1784 发表于 2022-5-1 11:42
谢谢,硬汉哥。   你说局域网设备间不知道IP,除了用组播,广播外还有别的发现手段.....

如果是wifi的话,可以开wifi热点,登录热点,获取设置,这个基本是当前物联网产品的通用玩法。
回复

使用道具 举报

2

主题

72

回帖

78

积分

初级会员

积分
78
发表于 2022-5-5 17:25:56 | 显示全部楼层
我这边用的是 UDP广播的方式实现的,当然了,我这里不涉及到设备间的通信。 主要是应用在一个 设备配置软件 和 设备之间的。  
主要用UDP实现了  搜索设备、修改IP 已经获取设备 TCP通信的端口号这几个功能。 其他功能都是用TCP来实现的了。组播确实没用过。
image.png
回复

使用道具 举报

1

主题

75

回帖

78

积分

初级会员

积分
78
发表于 2022-5-6 15:33:58 | 显示全部楼层
要接收组播数据包需要先调用nx_ipv4_multicast_interface_join 除非网卡驱动启用了混杂模式,否则网卡会主动过滤MAC地址不是广播和本网卡的数据包,当然有些网卡是无法关闭混杂模式的,那么掉不掉用就无所谓了。在PC上也是一样,如果是用BSD socket,也是需要加入组播的地址后才能接收的。
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
107396
QQ
发表于 2022-5-7 01:11:02 | 显示全部楼层
catro 发表于 2022-5-6 15:33
要接收组播数据包需要先调用nx_ipv4_multicast_interface_join 除非网卡驱动启用了混杂模式,否则网卡会主 ...

感谢帮忙解答
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-5-29 15:58 , Processed in 0.304908 second(s), 28 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2023, Tencent Cloud.

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