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/TMS570LS1227:使用 SCI 而不是 LIN/SCI2时出现问题

Guru**** 2761535 points

Other Parts Discussed in Thread: HALCOGEN, TMS570LS1227

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

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/793377/ccs-tms570ls1227-issue-using-sci-instead-of-lin-sci2

器件型号:TMS570LS1227
主题中讨论的其他器件:HALCOGEN

工具/软件:Code Composer Studio

您好!

我将 TMS570LS1227-PGE μ µC 用于惯性传感器项目。 所需的特性之一是在 μ µC 和其他器件(PC)之间使用 UART 通信。

首先、对于原型设计、我使用了 LIN/SCI2端口(在 scilinREG 上调用 sciSend)、通过 USB 链路的端口、一切都运行良好。

既然我们想制作自己的卡、我尝试通过 SCI 端口(sciREG)进行通信。 这是加载的2个程序之间唯一发生变化的地方:sciREG 而不是 scilinREG。 但是、这一点根本不起作用:通信在 PC 端不起作用、在使用 SCIRX/TX 引脚(引脚38/39)上的示波器进行检查时、我们看到的情况非常奇怪:它看起来更像是时钟或010101之类的东西。 实际帧。

在我们自己的电路板或 TMS570 Hercule LaunchPad 上进行的观察和测试是相同的(μ µC 的引脚38/39连接到 launchpad 上的引脚 J11-333/34)

我使用的是 FreeRTOS、配置有 HalCogen - TMS570ls-1224PGE-FreeRTOS、因为我找不到适用于 tms570ls1227的 FreeRTOS 项目...

是否有任何线索知道问题可能是什么?

感谢你的帮助

Audry

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好!
    您是否更改了引脚多路复用? SCI 与 NHET 和 ePWM 复用。

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

    您好、感谢您的回答。
    因此,我们似乎弄糊涂了示波器,没有看到正确的引脚----
    但是、由于我们解决了这个问题并查看了正确的引脚、我面临的问题如下:
    -Code 在 launchpad 和原电路板之间是相同的。
    -代码使用 SCI (而非 LIN/SCI2)来发送数据。 该引脚连接到 launchpad 上的引脚 J11-33/J11-34或 J2-3/J2-4
    在 launchpad 上、μ µC 发送的数据以及在 PC 上接收的数据均正常
    在主板上、即使代码相同、在 SCI_TX 引脚上读取的数据也是错误的:字节看起来是反相的(字节问题或类似问题)。
    我的意思是、数据被传送到 TX 引脚、但是一旦我们使用串行监视器将它们传送到 PC 上、数据肯定不正确。
    我不理解、因为 launchpad 和自制电路板之间的代码/配置/引脚多路复用器完全相同。 只有硬件不同、但无法找出任何可能会导致发送数据但错误的硬件问题。 (可能未发送任何数据)

    下面的屏幕截图显示了 Launchpad SCI TX 信号为蓝色、而自制板 SCI TX 信号 为灰色。

    代码是相同的、但正如您看到的、信号是不同的...

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好!
    关于 FreeRTOS 移植、请查看以下文档 :www.ti.com/.../spna237.pdf

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

    你(们)好

    感谢您的回答。

    似乎自制电路板上的石英为20MHz、launchpad 上的石英为16MHz。

    我在 halcogen 的时钟选项卡中进行了更改(将3 16值更改为20):现在看起来效果更好、但仍然不如在 launchpad 上。

    我是否忘记了关于不同石英频率的其他一些设置? 我担心这种差异会带来什么影响...

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

    此致、
    米罗
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    是的、我已经这么做了、波特率被设定为120000、这给出了实际的波特率120192
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好!
    改变振荡器频率会影响 PLL 频率。 如果在改变振荡器时钟后 PLL 设置没有改变、这可能导致系统和外设频率超出范围。 例如、对于 PGE 封装、f_HCLK 的最大值为160MHz、对于 ZWT 封装、最大值为180MHz。 f_vclk 时钟的最大值为100Mhz。 请检查所有频率是否都处于建议的工作条件下-请参阅器件数据表中的表5.5。

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

    您好!

    实际上、在使用示波器检查石英频率时、我发现实际频率不是精确的20MHz、而是20.1。

    HalCogen 做了改变,现在一切都很好!

    我还更改了 PLL 设置、以确保我尊重范围(低于160MHz)、但它没有这样做、即使 PLL 频率为 arround 220 MHz (这肯定是超出范围的)...

    无论如何、问题很明显是由于石英频率与 µC μ s 设置不一致。

    如果能解释为什么它即使在没有更改 PLL 设置(超出范围)的情况下也能正常工作、而对振荡器设置进行了更改、但这是我自己所知的、系统无论如何都能正常工作...

    感谢你的帮助。