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/TMS320F28335:与 BeagleBone Black 进行 SCI 通信

Guru**** 2587365 points
Other Parts Discussed in Thread: C2000WARE, TMDSCNCD28335

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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/764367/ccs-tms320f28335-sci-communication-with-beaglebone-black

器件型号:TMS320F28335
主题中讨论的其他器件:C2000WARETMDSCNCD28335

工具/软件:Code Composer Studio

您好!

在我的项目中、我需要在具有集线站的 BBB 和 F28335之间进行 SCI/UART 通信。 我使用的是28335上 BBB 的 UART0和 SCI-A 端口。 我没有在28335上接收到任何数据、但我已使用 DSO 检查 BBB 的 Rx 引脚。 它正在发送正确的数据。 我已在 SW1关闭和打开的情况下进行检查、但遇到相同的问题。 那么、您能否指导我解决问题的原因、即是否存在连接问题?

提前感谢

Suraj

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

    问题听起来像是坞站上的 J9上缺少跳线。 您可以在 JTAG 接头(J2)和 controlCARD 连接器(J1)之间靠近33号 GPIO 引脚的位置找到 J9。 该跳线 J9用于连接板载 USB 转 UART 桥接器 RX-Slave。

    请参阅以下主题:

    e2e.ti.com/.../665480

    但愿这对您有所帮助。 如果您的问题得到了解答、请单击绿色的"验证答案"按钮。 谢谢。

    - Ken
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    Ken 先生、您好!
    我不使用 USB、因此我认为无需安装 J9。 我直接将 UART0引脚与 SCI-A 引脚相连、这两个引脚的接地都组合在一起。 TX-Rx 和 Rx-Tx。 无论以何种方式考虑您的建议、我都会在 J9已填充的情况下进行检查、然后返回给您。 如果我错了、请指导我。

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

    您能否告诉我您是连接到 J3引脚1 (TX)和4 (RX)还是连接到 J4引脚3 (GPIO29 - TX)和 J5引脚4 (GPIO28 - RX)?

    - Ken
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    主席先生,
    我连接到 J4 (gpio29-Tx)和 J5 (gpio28-Rx)引脚
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    Suraj

    F28335 controlCARD 包括一个用于 SCI 通信的收发器。 请参阅 controlCARD 原理图:

    c\ti\c2000\C2000Ware_ \boards\controlCARDs\TMDSCNCD28335\F28335controlCARD_HWDevPkg_ZJZ[R2.2]\F28335_controlCARD_ZJZ_Schematic_[R2.2]

    收发器电路位于底部中心。 请注意、SW1需要关闭。 尝试连接到 J3引脚1 (TX)和4 (RX)

    但愿这对您有所帮助。 如果您的问题得到了解答、请单击绿色的"验证答案"按钮。 谢谢。

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

    您好!

    根据您的建议、我使用开关1闭合时的28335的 J3 (Rx 和 Tx)连接了 BeagleBone Black Tx 和 Rx 引脚。 我也使情况变得很普遍。 在软件中、当我使用 SCI-A (即 GPIO 28和29)时、我使用 DSO 检查了 GPIO 28的波形。 但波形会反转、因此我得到的结果是错误的。 现在该怎么办? 我可以直接将 Rx 和 Tx 连接到 GPIO 引脚而不通过 OnCard RS232吗? 它能起作用吗?

    谢谢

    Suraj

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

    好消息是、您现在正在接收信号。 您能不能告诉我您的 BeagleBone 是否具有收发器、或者您是否正在使用收发器? 通常、RS232收发器会使信号反相。 通常在通信链路的两侧都有收发器、这可以消除反转。 如果您没有将收发器与 BeagleBone 配合使用、则只有一个反相位无法消除。 这将说明您所经历的情况。

    如需参考、请参阅:

    e2e.ti.com/.../2611929

    但愿这对您有所帮助。 如果您的问题得到了解答、请单击绿色的"验证答案"按钮。 谢谢。

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

    您好!

    我没有使用任何外部收发器。 此处使用的是 OnCard 收发器、它将信号反相。 那么、现在我使用逆变器来获得正确的信号。 但发生了一件奇怪的事情。 序列是指每当我将 J3的接地端连接到 BeagleBone 的 GND 时、我会获取错误的数据、但会出现一些错误。 在下一部分中、我断开 GND 并在 F28335中获取正确的数据。 但是、如果我更改传输的数据、那么 F28335也会保留之前的数据、而不管传输的是什么、直到我再次建立接地连接。 基本上、为了获得正确的数据、首先我必须使用组合接地进行传输并获得错误的数据、然后在第二步中断开接地并进行传输以获得正确的数据。 您能否向我解释一下在这里可以做些什么、或者为什么会发生这种情况? 为了测试通信、我现在只传输单个字符。

    谢谢

    Suraj

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

    我不熟悉 BeagleBone Black、但我在网上找到了它的原理图。 它显示 UART0连接到缓冲器/驱动器、这可能是问题的一部分。 请尝试改用 UART1吗? 根据 BBB 原理图、显示 UART1可用于扩展接头 P9引脚24和26 (TX 和 RX)、但请仔细检查。 接下来、在 F28335集线站上、确保跳线 J9未被组装、并且在 controlCARD 上、确保 SW1打开。 现在、使用 J4引脚3 (GPIO29 - TX)和 J5引脚4 (GPIO28 - RX)将 BBB 直接连接到集线站、并确保每个板都具有 TX 到 RX 和 RX 到 TX。 我知道您以前曾尝试过这种方法、但您使用的是 UART0。 请告诉我这是否适用于 UART1。

    我希望这对您有所帮助、如果此操作能解决您的问题、请单击绿色的"验证答案"按钮。 谢谢。

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

    您好、先生、

    根据您的建议、我将 BeagleBone 的 UART1与 F28335的 SCI-A 端口直接相连。 但我在 DSO 上的 BeagleBone 的 UART1的 TX 引脚上找不到任何信号。 启用引脚多路复用等时可能存在一些问题 我试图弄清楚它、但仍然没有结果。 最后、我通过直接将 UART0引脚与 F28335和 SW1的 J4引脚3和 J5引脚4相连来解决该问题。 我认为两个电路板的引脚上具有相同的电压电平、因此无需通过收发器。 无论如何,我的问题现在已经解决了。  

    感谢您的支持

    Suraj