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.

[参考译文] TMS320F28388D:使用 NDK 库的 UDP 通信

Guru**** 2524460 points
Other Parts Discussed in Thread: C2000WARE

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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/994892/tms320f28388d-udp-communication-using-ndk-library

器件型号:TMS320F28388D
主题中讨论的其他器件:C2000WARE

您好!

为了在 controlCARD 板(TMDCNCD28388D)和我的笔记本电脑之间实现 UDP 通信、我在板上的单独线程中创建了一个新任务。 然后,我在“tcpEchoF2838X”示例中修改了“tcpHandler”和“tcpWorker”函数,如下所示:

"tcpWorker"函数:  

"tcpHandler"函数:

在此实现中、controlCARD 板将 UDP 服务器和我的笔记本电脑设置为其 UDP 客户端。 在上面的代码中、我首先打开 UDP 套接字并将服务器(我们的板)分配给该套接字。 然后,我使用“recvfrom”和“sendto”函数实现了环回 UDP 通信。

为了测试通信,我使用了“Hercules”应用程序打开了 PC 上的 UDP 端口。 但是,当我运行该示例时,代码会停留在函数“recvfrom”中,该函数在“tcpWorker”函数中用于从 UDP 端口上的客户端接收数据。 下图显示了函数回溯的详细信息。

根据我的理解,“tcpHandler”是一个回调函数,它已在 NDK 库的源代码的较低层中用于实现 TCP 功能。 关于这一点、我认为 UDP 通信应该有一个单独的回调函数。 但是、我在 NDK 库及其文档的源代码中找不到任何 UDP 回调函数。 因此,我修改了“tcpHandler”回调函数以实现 UDP 连接。 我认为这可能是我们项目中的错误来源。 我想知道您能否指导我如何解决这个问题。

软件源和依赖项

在此项目中,我使用了以下来源来运行“tcpEchoF2838X”示例。

  • F2838xD 的"tcpEchoF2838X"示例(版本:C2000Ware_3_04_00_00)
  • 网络开发套件(NDK)(版本:3_61_01_01)
  • 网络服务(NS)(版本:2_60_01_06)
  • SYS/BIOS (版本:6_83_00_18)
  • XDC 工具(版本:3_61_02_27)
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好!

    我们尚未使用 NDK 在 f28388上测试任何基于 UDP 的应用程序。

    我们将对此进行研究、并将返回给您。

    此致、

    Yashwant

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

    您好、Yashwant、

    感谢你的答复。  

    1、这项调查在我方面非常紧迫。 使用 NDK 进行 UDP 测试时、您是否有任何特定的时间范围?

    2-我正在使用 NDK  (版本:3_61_01_01),它在内部(看起来)使用许多其他我们无法访问的编译库/ DLL。  您能否提供 NDK 的源代码、以便我们也可以对其进行研究?

    此致、

    A.

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

    假设您使用运行时对象视图来查看状态打印消息和 RTOS 任务状态、模式。  您还可以参考以下文档 NDK_f2838x_3_61_01_01/docs/NDK/NDK_Driver_Design_Guide.pdf、 SPRU524以获取 API 参考。

    遗憾的是、没有计划基于 TMDCNCD28388D 的 NDK 开发 UDP 示例。

    -yashwant