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.

[参考译文] TMS320F280025C:内部时钟比外部时钟的计时器精度更好

Guru**** 2390755 points


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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1450070/tms320f280025c-timer-accuracy-strangely-better-with-internal-clock-vs-external

器件型号:TMS320F280025C

工具与软件:

你(们)好、

我有一个系统在 INT_myCPUTIMER1_ISR 之外运行、每1ms 触发一次。 直到现在、我们已经让系统脱离内部振荡器计时、我注意到、随着时间的推移、该计时器相对于 RTC 的精度为99.76%。  

我们有一个10 MHz 外部 振荡器器件型号: SG-210STF 10.0000ML5  、连接到 GPIO19_X1、最近我通过  在 device.h 文件中取消注释#define USE_PLL_SRC_XTAL 并注释#define USE_PLL_SRC_INTOSC 来为系统时钟使用它。

我还更改了以下代码以指示单端振荡器:

#define DEVICE_setCLOCK_CFG (SYSCTL_OSCSRC_XTAL_SE | SYSCTL_IMULT (30)|\
SYSCTL_REFDIV (1)| SYSCTL_ODIV (3)|\
SYSCTL_SYSDIV (1)| SYSCTL_PLL_ENABLE |\
SYSCTL_DCC_BASE_0)

此代码之前为:  

#define DEVICE_setCLOCK_CFG (SYSCTL_OSCSRC_OSC2 | SYSCTL_IMULT (30)|\
SYSCTL_REFDIV (1)| SYSCTL_ODIV (3)|\
SYSCTL_SYSDIV (1)| SYSCTL_PLL_ENABLE |\
SYSCTL_DCC_BASE_0)

现在运行我们的代码、我注意到在采用新配置时、 与 RTC 相比、计时器精度仅为99%。  这是很奇怪的、因为我们外部晶振的精度应该远远高于此值。

您是否有任何想法、这是如何实现的? 我并未在这两种配置之间修改我们的计时器设置。 我们的时钟信号示波器看起来也很干净。 (已随附)。

提前感谢、

Steven

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

    Steven、您好。

    我假设您查找计时器精度的方法是准确的?

    我不知道更准确的时钟会如何降低计时器的精度

    谢谢