This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] AM2634:如何与 AM2634 中的 UDP 客户端和 UDP 服务器通信

Guru**** 2508445 points
Other Parts Discussed in Thread: AM2634, SYSCONFIG

请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1554916/am2634-how-to-communicate-with-udp-client-and-udp-server-in-am2634

器件型号:AM2634
主题: SysConfig 中讨论的其他器件

工具/软件:

尊敬的团队:

我正在评估板: AM2634, SDK 10.02.00.13 版本。
我正在使用示例 enet_cpsw_udpclient 示例、因此在这里我可以 ping 通两个 IP  

现在我可以 ping 通 2ip 的命令。
  

现在我已经努力实现了 UDP 客户端和 UDP 服务器  我进行了输入连接 以太网 — 2. UDP 客户端工作正常,我可以在 Socket Tester 中看到数据。

  

但我在中遇到了问题 UDP 客户端和 UDP 服务器  在以太网 — 1 中、我尝试在插座测试仪中观察、但我无法看到任何数据、因此您可以说为什么会发生这种情况?尽管我可以看到 ping 消息。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 AK:

    1.我无法理解这里的确切设置,你想分享什么“以太网–2"是“是吗? 您是指 AM263x 上的 MAC-Port-2 吗?

     2.如果我理解正确、您在 AM263x 板上运行 UDP 客户端、同时启用了两个 MAC 端口、MAC 端口 2 工作正常、MAC 端口 1 工作、看不到任何数据、但可以 ping。 这种理解是否正确?

    3.您使用的是默认的开箱即用示例还是修改了应用程序/syscfg? 如果是、您是否可以共享更改/更新的文件?

    4.如果你有两个不同的客户端任务在运行,你有没有把它们分成两个不同的线程? 您是否以任何方式将 client-1 连接到端口 1、将 client-2 连接到端口 2?

    此致、
    Shaunak

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Shaunak:

    1.以太网–1 和以太网–2 是什么,但我从这些端口连接了以太网电缆,我给出了下面。

     2.如果我理解正确、您在 AM263x 板上运行 UDP 客户端、同时启用了两个 MAC 端口、MAC 端口 2 工作正常、MAC 端口 1 工作、看不到任何数据、但可以 ping。 这种理解是正确的吗?

    答案:  是的、上面提到的是正确的...

    3. 您使用的是默认的开箱即用示例还是修改了应用程序/syscfg? 如果是、您是否可以共享更改/更新的文件?

    答案:  我使用的 是你给我的同一个例子,我没有做任何修改 sysfg 只有修改,我做的是,我添加了 NETIF 实例为 2。

    但是、如果我在 SysConfig 中配置了一个 Netif、我会观察到一点 以太网 1 (UDP 和 TCP 工作正常)、如果我们 在 SysConfig 中配置了 2 个 Netif、则只有 Ethernet-2 工作正常、但 Ethernet-1 不工作、但 ping 工作正常。

    您能说为什么会发生这种情况吗? 您能向侧面核实一下吗? 欢迎您的重播!!!

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 AK:

    1.您可以共享失败案例的应用程序日志吗?

    2.您是否看到为两个 NetIF 分配的 IP?

    3.您希望 UDP 通过两个 MAC 端口进行通信吗? 我理解的电流流动如下:

    启用两个 MAC 端口并使用单个 NetIF 时、此 NetIF 用于 CPSW 的主机端口(您获得的单个 IP 地址用于主机端口、而不是 MAC 端口)、因为无论 MAC 端口连接 (1 或 2) 如何、两个 MAC 端口都已启用、所以两者都可以正常工作。

    当两个 MAC 端口都启用并且两个 NetIF 都启用时、我们会强制 CPSW 进入仅 MAC 模式。 这次为 MAC 端口而不是主机端口分配了 IP 地址、无论哪个 UDP 客户端连接到服务器、都与服务器独立通信。 如果首先连接 MAC 端口 1、则具有 MAC 端口 1 IP 的客户端将进行通信;如果 MAC 端口 2 首先连接、则客户端具有 MAC 端口 2 的 IP 将进行通信。

    我们可以确保链路/以太网没有中断、因为我们可以独立 ping 两个 IP。  

    此处的开放端是应用程序的实际期望值。

    1.如果要在 2 个不同的 MAC 端口上运行两个具有两个不同 IP 的客户端,则需要修改应用程序以运行两个不同的客户端任务。

    2.如果你想运行一个单一的客户端,一个 IP 地址与 UDP 服务器对话,那么你可以禁用第二个主题,连接两个 MAC 端口,将设备连接到服务器,并期望两个端口与服务器通信。  

    您观察到的上述情况并不是真正的故障、但我认为默认应用的作用与此处的预期不同。

    此致、
    Shaunak