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.

[参考译文] TM4C129XNCZAD:实时时钟滞后

Guru**** 2391835 points


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

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1050117/tm4c129xnczad-real-time-clock-lagging

器件型号:TM4C129XNCZAD

尊敬的先生:

我们已经使用 TM4C129XCNZAD 开发了自己的 PCB 板、 并使用了处理器的内置休眠 RTC 功能。

初始化代码  

void Hibernate RTC_Init (void)

SysCtlPeripheralEnable (SYSCTL_Periph_HIBERNATE);

HibernateEnableExpClk (ui32SysClock);
HibernateClockConfig (HIBERNATE_OSC_LFIOSC);

//启用 RTC 模式。
HibernateRTCEnable();
//将休眠模块计数器配置为24小时日历模式。
休眠计数器模式(HIBERNATE_COUNTER_24HR);

我们将使用  TI 示例中已经可用的 DateTime.C 文件以及   DateTimeDisplayGet 函数 来获取 日期时间。

我们还将3V 纽扣电池连接到了 VBAT 引脚、以维持除垢器。

此时、日期时间设置和读取功能正常。 它与 PC 的系统时钟同步。

我们将电路板 保持关闭超过12小时 、发现  时间滞后1小时。

 为什么它滞后?

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

    您好、Rajesh、

     -您能否在定制板上运行 TivaWare HIBERNATE_Calendar 示例? 也许您需要对其进行修改、使其进入休眠状态的时间更长。 您能重复同样的问题吗? 我只是想确保您的代码有任何问题。 如果您可以使用 TivaWare 示例重复相同的问题、则我们需要调查您的硬件。

    -您能否在 LaunchPad 上运行代码。 您能重复同样的问题吗?

    -在定制电路板上运行您自己的代码,但只能将电路板关闭1.5小时、3小时和6小时。 您是否看到时间按比例滞后。 换言之、如果您将电路板保持关闭6小时、您是否会看到时间滞后1/2小时。 同样、如果电路板关闭3小时、时间滞后1/4小时?

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

    您好、Rajesh、

     -您能否在定制板上运行 TivaWare HIBERNATE_Calendar 示例? 也许您需要对其进行修改、使其进入休眠状态的时间更长。 您能重复同样的问题吗? 我只是想确保您的代码有任何问题。 如果您可以使用 TivaWare 示例重复相同的问题、则我们需要调查您的硬件。

    -您能否在 LaunchPad 上运行代码。 您能重复同样的问题吗?

    -在定制电路板上运行您自己的代码,但只能将电路板关闭1.5小时、3小时和6小时。 您是否看到时间按比例滞后? 换言之、如果您将电路板保持关闭6小时、您是否会看到时间滞后1/2小时。 同样、如果电路板关闭3小时、您是否会看到1/4小时的时间滞后? 我想通过做这个实验,我们可以更好地了解发生了什么。  

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

    尊敬的先生:

    我们 在 TM4C129XCNZAD 开发板中进行了相同的实验、并将用于油底壳  

    已连接3V 电池@VBAT 引脚。

    我们设置了时间07:10:10 p.m 、并与 系统 时间同步 、然后关闭电路板。

    现在大约14小时左右开始电路板设计、检查系统时间、发现比系统时间长15-16分钟。

    为什么会这样?

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

    您好、Rajesh、

     感谢您提供来自开发板的数据点。 您的描述告诉我、RTC 在开发板中运行得太快、在您自己的板中运行得太慢。 请参阅数据表、了解如何使用 RTC 调整来补偿过快或过慢的 RTC 时钟。 下面这篇文章也进行了相同的讨论。  https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/728026/tm4c123gh6pz-using-the-rtc-with-the-trim-register?tisearch=e2e-sitesearch&keymatch=RTC%2520trim#

     我建议您从1分钟休眠时间开始、并查看使用 TRIM 进行的补偿量。 一旦您获得正确补偿的1分钟时间、则将休眠时间延长至10分钟左右。 请勿从休眠时间开始、例如12小时、因为每次实验都需要等待太长的时间。