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.

[参考译文] TM4C123BE6PZ:休眠问题:需要紧急帮助。

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

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/586930/tm4c123be6pz-hibernate-issue-urgent-help-needed

器件型号:TM4C123BE6PZ
主题中讨论的其他器件:EnergiaTM4C123

我们在使用休眠模块时遇到问题。

void init_rtc (){
 SysCtlPeripheralEnable (SYSCTL_Periph_HIBERNATE);
 HibernateEnableExpClk (F_CPU);
 HibernateClockConfig (HIBERNATE_OSC_HIGRHIVE);
 HibernateRTCTrimSet (32767);
 HibernateRTCEnable();
 HibernateRTCMatchSet (0、HibernateRTCGet ()+5);
 HibernateIntRegister (HibernateHandler);
 HibernateIntEnable (HIBERNATE_INT_RTC_MATH_0);

 //设置日历模式。 HibernateCounterMode()始终是必需的,但可以设置为12小时模式
 休眠计数器模式(HIBERNATE_COUNTER_24HR);
 if (!HibernateIsActivate()){

   //将您的设置代码放在这里,运行一次:
   //setup_time();
   //启用休眠外设。 我使用的是 Energia、因此我使用 F_CPU 来设置时钟频率

   HibernateRTCSet (1475489985);
   //我们为 RTC 设置一个中断。 您可以更改该值

   Debug_info ("//---------------- 执行 RTC 初始化代码。。。 ------ /");
   
 }
 否则{
   debug_info ("//---------- 休眠模式已经激活了--- /");
    }

上面是休眠和 RTC 的初始化代码。

信息:

1.3.3V 电池连接到器件。

使用 TM4c123BE6PZ 的定制板

系统大部分时间工作正常、但有时会无限卡在:

 HibernateEnableExpClk (F_CPU);(问题1)

这会强制执行看门狗触发、同样的事情会不断发生。

问题2:

有时、器件在从休眠模式唤醒后无法检测休眠状态、因此默认时间被激活:

   HibernateRTCSet (1475489985);<-执行此操作 并加载默认时间。

需要紧急建议。

此致、

Suchit Patel

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好!
    我看到您正在将 RTC 配置为日历模式、就像在 HibernateCounterMode (HIBERNATE_COUNTER_24HR)中一样。 但是、TM4C123器件不提供日历模式。 首先修复这个问题、看看它是否会产生影响。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    我`ll 这一点。 为了确认这种情况、需要一段时间、因为这会随机发生。 `ll 能够解决问题、我会回来。

    谢谢、

    查尔斯。