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.
工具/软件: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