首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >配置Wifly模块以接收UDP数据包

配置Wifly模块以接收UDP数据包
EN

Stack Overflow用户
提问于 2014-04-18 05:41:35
回答 1查看 1.5K关注 0票数 0

我有一个RN-171线蝇模块连接一个微控制器.

我正在使用UDP协议与模块进行通信。此外,我正在使用固件的UDP自动对功能来设置主机ip.一旦模块接收到UDP数据包,它就会将主机IP地址设置为接收数据的ip。现在,如果不进入命令模式,则无法更改此主机ip。

我希望模块以如下方式运行:每次接收UDP数据包时,它都会将主机ip更新为来自该信号的ip地址。

另外,我可以使用TCP协议,但它一次只允许一个连接。我使用TCP协议面临的另一个问题是,如果我尝试与模块启动第二个TCP连接,它不仅会拒绝第二个连接,而且还会挂起第一个稳定连接。即使第二个连接启动没有挂起模块,它只是被拒绝,我将准备好使用TCP。

关于这个问题,我已经在网上做了很多研究,但是由于这些模块没有被广泛使用,所以它们的支持非常有限。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-04-25 11:47:50

我已经广泛使用RN-171,并且在他们的支持系统中有许多解析票。

根据WiFly命令参考、高级特性和应用程序用户指南,您不能使用该模块打开多个TCP端口。(缺省编号为2000)

不幸的是,关于UDP功能,您无能为力。如果您有一个新主机希望通过UDP进行通信,请通过TCP连接到模块,进入命令模式并使用"$$$“、"set ip host 0.0.0.0”、"save“、"exit”命令设置地址。或者,您可以输入新主机的ip地址,而不是0.0.0.0:"$$$“、"set ip host ###.###.###.###”、"exit“。将"###.###.###.###“替换为设备的ip地址。

这样,如果同时有多个设备通过UDP进行通信,则不会产生错误的主机ip。此外,由于不使用"save",自动配对仍将保存到EEPROM内存中。此外,您还可以在"ip flags 0x##“之前发送"exit",这样您也可以通过使用将此位设置为零的十六进制值将bit6设置为0 (UDP自动配对禁用)。

2013年夏天微芯片技术支持测试的一个问题是,你不能使用RN-171作为其他RN-171的访问点,因为它们有一个固件错误阻止一个人这样做,而且,截至2014年1月发布的固件v4.41,还没有修复或计划。

我本人不推荐最新的固件版本v4.41,因为它似乎不适用于大多数路由器;不过,软AP模式在这方面工作良好。另一方面,v4.00.1更兼容,但是在切断电源时应该小心,因为如果您在进行闪存时切断电源,则可能会出现灾难性的砖块问题--模块可能会永远锁定其内存。

我建议注册并打开一个微芯片票,它通常会在两个工作日内得到答复,而且它们非常支持。然而,他们的固件更新周期相当长,新的更新通常需要一年左右的时间。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/23148116

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档