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.

[参考译文] TMS320F28335:两个 TI 器件 TMS320F28335和 TMS320F28069 (带 RS232转换器)之间的 SCI 通信。

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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1409664/tms320f28335-sci-communication-in-between-two-ti-devices-tms320f28335-and-tms320f28069-with-rs232-converter

器件型号:TMS320F28335
Thread 中讨论的其他器件: TMS320F28069C2000WARE

工具与软件:

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

    尊敬的 Chaya:

    您需要回答的一些问题:

    • 您是否在内部环回模式下测试了这些器件以验证数据是否正确?
    • 您是否还确定了相关范围以帮助进行评估?
    • 您是否使用我们的任何 C2000Ware 示例作为这些器件的参考?

    此致、

    Allison

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

    您好!  

    感谢您的回复、

    1.是的,我已经用内部/外部回送进行了测试,当时运行正常。 我能够以回送方式正确接收传输的数据、而不会出现任何重复数据或数据丢失。  

    2.是的、我们已经看到示波器数据中的线也在出现。  

    3.我们没有使用任何  C2000Ware 示例、但我们参考了它。

    您能否提供正确与外部器件(具有 SCI 接口/SCI 转 RS 转232接口)通信必须采用的配置列表?

    此致、

    Chaya  

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

    尊敬的 Chaya:

    由于您收到的数据有些恰当、因此您的设置看起来不存在任何软件配置问题。 相反、根据应用发送数据的逻辑、很可能是错误。 您是否使用 SCI 中断来发送和接收 SCI 数据? 或者您是否在主循环中执行所有 SCI 操作?

    另一种可能是波特率错误导致数据误解、因为发送的值非常相似。 在研究这之前、我们先排除上述因素。

    此致、

    Delaney

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

    您好!  

    是的、我使用了 SCI 中断来发送和接收数据。 后来、我在不使用 SCI 中断的情况下尝试了测试、然后也是输出相同缺少一些数据。  

    我只在 main 中调用我的 SCI 发送器或 SCI 接收器函数、这些函数在另一个源文件中定义。  

    波特率 : 在28335方面,我们提供了波特率作为  

    LSPCLK (150000000)//150MHz
    //波特率配置

     BAUD_RATE (2400)//期望的波特率(最小
     BRR =(LSPCLK/(BAUD_RATE*8))-1 = 7811.5 = 79 (对于 SCILBAUD)

    在28069端上、我们给出了波特率作为  

    LSPCLK (90000000)//90MHz
    //波特率配置

     BAUD_RATE (2400)//期望的波特率(最小
     BRR =(LSPCLK/(BAUD_RATE*8))-1 = 4686.5 = 47 (对于 SCILBAUD)  

    实际上、现在我已经 在接收每个字节后添加了 RXFIFORESET、这样我就可以正确接收数据了。 但不确定这是否是正确的解决方案。  

    谢谢、此致、

    Chaya

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

    尊敬的 Chaya:

    为了澄清、问题在于 F28069接收到的数据、对吗? 您在 F28069 RX 端添加了 RXFIFORESET、可以解决这个问题吗?

    您可以发送 FIFO ISR 的一个片段吗?  您是否还在 SCI 初始化结束时执行 RXFIFORESET、如我们的示例中所示? 该位只是将 FIFO 指针重置为零。

    此致、

    Allison