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/TMS320F280049C:使用 C2000 F28004x controlCARD +集线站[R5.0]无法接收 SCI 功能

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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/927494/ccs-tms320f280049c-can-t-receiver-in-sci-function-with-c2000-f28004x-controlcard-docking-station-r5-0

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

工具/软件:Code Composer Studio

尊敬的先生:

C:\ti\c2000\C2000Ware_DigitalPower_SDK_2_00_01_00\c2000ware\driverlib\f28004x\examples 目录中运行 sci_ex1_echoback 项目示例时,SCI 函数中无法接收器。

但是发送功能正确、捕获和引脚连接如下:

GPIO28为 SCI_A-RXD、位于 HSEC 引脚的引脚76中、连接到 PC 的 TXD。

GPIO29是 SCI_A-TXD、位于 HSEC 引脚的引脚78中、连接到 PC 的 RxD。

集线站的 GND 连接到 RS232的 GND。

PC 中的 RS232应用程序是 Tera Term Putty

在输入字符时,PC 应用程序中没有字符。

问题出在哪里?

任何人的帮助都将不胜感激。

 

最恰当的考虑

Hung-Jin Chen

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

    您好!

    感谢您的提问! 正确的是、由于 Terra Term 显示了器件的输出、因此传输功能正常工作。 当您暂停调试窗口(在 Code Composer Studio 中运行->暂停)时,此代码卡在哪个函数中? 暂停程序后、您能否提供"Debug"选项卡的屏幕截图? 如果它停留在"SCI_readCharBlockingFIFO"函数中、则可能是没有数据到达器件。

    为了进一步调试、您是否能够将逻辑分析仪或示波器连接到 C2000器件的 TX 和 RX 引脚以监控进出的数据? 这将使我们能够迅速解决几个潜在问题。

    谢谢!

    Vince

    ------------------------------------------------------------------

    如果我能够回答您的问题、请按下下面绿色的"已验证"按钮、谢谢!

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

    尊敬的 Vince:

    感谢您的回复。

    我在主例程中为 for_loop 设置“while”循环中的断点以执行程序。

    while (SCI_getRxFIFOStatus (base)=SCI_FIFO_RX0);

    奇怪的是 Tera Term 无法完全显示 msg 字符串"\ r \ n \ n \ nHello World!\0"、如下图所示。

    然后单击>> Y,再单击

    此时将完全显示 msg 字符串。

    然后、在激活 Tera Term Windows 后键入字符。

    程序在以下3个程序中的1个中停止。

    如果 Step_into 程序将围绕这3个例程循环、并且无法读取 PC 键盘输入的字符。

    我是否知道:

    1.为什么不能一次性输出 msg 字符串?

    2.如何更改此程序,以便可以正常读取 PC 键盘输入的字符。

     

    最恰当的考虑

    Hung-Jin Chen

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

    您好!

    感谢您的后续消息和您提供的详细信息! 答案如下:

    1.为什么不能一次性输出 msg 字符串?

    答:当使用调试器的"step"函数时、一个向前阶跃有时会中断 SCI 输出并阻止字符串的其余部分完成。 在正常运行的代码中(没有断点和没有单步执行)、所有文本将正确显示、因为不会发出调试器暂停请求。

    2. 如何更改此程序,以便可以正常读取 PC 键盘输入的字符。

    答:设备似乎一直在等待设备的传入通信。 您能否监控 C2000-SCIRX 线路并查看来自 PC 的数据是否到达 C2000? RS232和/或 Terra 术语可能只能接收、但不能发送数据(也可以是 Terra 术语中的设置)。

    请提供 C2000-SCIRX 线的示波器或逻辑分析仪图、以便我们可以将问题缩小到软件/硬件! 谢谢!

    此致、

    Vince

    ------------------------------------------------------------------

    如果我能够回答您的问题、请按下下面绿色的"已验证"按钮、谢谢!

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

    尊敬的 Vince:

    到目前为止、我仍然只能从 F280049输出到 PC、并且无法通过 RS232读取 PC 发送的字符;因为我使用示波器来监控 SCIRxD (GPIO28)、并且在 Tera Term 实用程序中键入字符时没有信号。

    但是、您是否能提供帮助?您是否能够实际连接一次 RS232测试?

    感谢您的帮助!!!

    此致

    Hung-Jin Chen

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

    您好!

    感谢您调试这个! 我们的怀疑似乎是正确的、Terra Term 或 RS232未正确输出 C2000要接收的任何数据。 遗憾的是、这意味着我们无法直接帮助进一步调试您的设置、因为我们无法支持其他器件、但我们可以在通信到达 C2000器件后继续调试!

    同时、我对 RS232的调试有一些建议:

    *请尝试其他终端应用程序(PuTTY 可能会有所帮助)

    *请确保 PC 上安装了正确的驱动程序,用于在这两个设备之间进行转换的 RS232设备

    *请确保所需的所有连接均已安全正确地连接(欧姆值测试可能是有益的)

    *重要提示:确保您使用的 RS232设备的逻辑电平是您使用的 SCI 端口的正确电压电平(3.3V 而非5V)。

    如果您有任何疑问、请告诉我!

    此致、

    Vince

    ------------------------------------------------------------------

    如果我能够回答您的问题、请按下下面绿色的"已验证"按钮、谢谢!

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

    尊敬的 Vince:

    我已经解决了从 PC 发送 RS232但 F280049未接收 RS232的问题。 这是因为 F280049 controlCARD 上 S1:A 开关的 PIN2和引脚3在出厂时设置为 ON;现在、将它们更改为 OFF。

    非常感谢您今天的帮助。

    此致

    Hung-Jin Chen