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.

[参考译文] CCS:具有自定义流协议的 USB UART 不工作

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

https://e2e.ti.com/support/tools/code-composer-studio-group/ccs/f/code-composer-studio-forum/952678/ccs-usb-uart-with-custom-streaming-protocol-not-working

工具/软件:Code Composer Studio

我正在尝试使用 GUI Composer 上具有自定义流协议的 USB UART 与目标器件(Concerto M3)进行通信。 我有一组使用 USB UART 和串行监视器的工作代码、因此、从本质上讲、目标和 GUI 编写器都在工作。 但我无法使自定义流式传输正常工作。 我已从库中下载 Tutorial_SerialIO_Binary 示例、并已将设置更改为我的应用程序。 我已下载 ControlLEDsBinary_Generic.ino 文件并将代码移植到我自己的目标。 当我运行它时、没有与目标器件的连接。 我只是说"等待数据"。 请参见下图。  

当我运行应用程序时:

如果我检查一个串行终端、我可以看到我的目标确实是通过 UART 传输数据、但当我监控目标的 UART 缓冲区时、我看不到来自主机的任何数据。

但是、我还尝试了库中另一个名为 Serial_SendDataDemo 的示例、这个示例立即就成功了! 单击"Send Value"按钮时、我可以在目标器件上看到数据。

我不知道使其正常工作的第二个应用程序有什么不同? 但我真的想将任何内容传输到另一个 Tutorial_SerialIOBinary 示例、因为这最终是我想要实现的、完全 自定义协议通信。  

为什么 SendDataDemo 示例起作用、而不是 SerialIOBinary 示例? 即使串行 IOBInary 示例的目标应用程序代码不起作用、我甚至没有收到任何数据、左下角的连接显示正在等待数据。 但在另一个示例中、它说硬件已连接、数据正在通过。 为什么?

请提供帮助、谢谢

艾伯特

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

    您好、Albert、

    您是否在应用程序中添加了新的编解码器 JavaScript 文件并实现了编码和解码功能?

    为了使用定制编解码器、我假设您使用的是具有定制协议的流模型。 为了使 GC 应用程序进入连接状态、目标必须向主机发送(二进制或文本)数据包、并且自定义编解码器需要解码数据包并返回有效的 json 对象。

    如果您使用的是 Chrome、请按 F12调试应用程序。 在定制编解码器中的编码和解码函数处放置一个断点、查看是否调用了它们。 此外、您可能需要在菜单栏中添加选项菜单小工具、以便能够在应用中选择 COM 端口。

    此致、
    Patrick

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

    谢谢 Patrick

    是的、我添加了具有编码和解码功能的新编解码器 JavaScript 文件以及具有自定义协议的流模型。  

    我现在所做 的是以 Serial_SendDataDemo 作为基准、并使用您建议的 Chrome 调试工具。 我将所有内容都缩减为仅向目标发送纯二进制数据并对 GUI 作出响应。 它现在似乎正常工作、我收到一条"已连接硬件"消息。 仍然不确定为什么我无法使用其他 Tutorial_SerialIO_Binary 示例进行相同的操作、但我将  在该 Serial_SendDataDemo 示例上逐步构建更多示例。   

    此致

    艾伯特