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.

[参考译文] TMS320F28386D:CM DEVICE_DELAY_US 时间减半

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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1001640/tms320f28386d-cm-device_delay_us-time-half

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

您好!

我通过以下示例测试 GPIO LED 闪烁:"C:\ti\c2000Ware_3_02_00_00\driverlib\f2838x\examples\C28x_cm\led\led_ex1_C28x_cm_blinky_cpu1.c 和 led_ex1_C28x_cm_ky_cm_cm"。

在 CM 中、我发现 DEVICE_DELAY_US (50000)定时器延迟错误。 虽然应该是500ms、但示波器中的 GPIO 信号只有250ms。

我尝试过几次延时时间、所有这些都是半时。

如何解决?

谢谢

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

    您好、Frederick、

    我们已经在3.03版本中修复了此问题。 这个宏是在假定它从 SxRAM 运行的情况下开发的、这比 CxRAM 慢2倍。  

    我们已经更新了宏、并且正在使用 CxRAM 在 RAM 和闪存配置中运行延迟函数。

    此致、

    Veena

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

    您好、 Veena、

    我应该从 C2000Ware 3.03中替换哪个文件?

    在.map 文件中 ,sysctl_delay()函数位于闪存段而不是 RamFuncs 中

    谢谢

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

    我们也在闪存配置中使该函数从 RAM 运行。 我们将代码加载到闪存中、但将其复制到 CxRAM 中。 我相信这也出现在3.02版本中。 如果没有、请使用最新的 sysctl.h 文件

    此外、请使用更新后的 cm.h 文件(包含  用于 DEVICE_DELAY_US 宏的更新定义)和链接器命令文件(其中 ramfuncs 始终映射到 CxRAM)

    此致、

    Veena