S32K144 RTC setting

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

S32K144 RTC setting

746 Views
Hoon
Contributor I

Hello. I'm using S32K144.

After entering VLPS mode, I try to wake up every 2 hours, but there is only 1~128Hz in the Time Seconds setting. In this case, is there only a way to wake up every 2 hours using the alarm list?

Hoon_0-1677223048980.png

 

0 Kudos
3 Replies

736 Views
danielmartynek
NXP TechSupport
NXP TechSupport

Hello @Hoon,

The RTC Time Alarm Register (TAR) is 32bit wide.

So yes, with TSIC = 0b000 (1Hz), the alarm can be set up to 0xFFFFFFFF = 4,294,967,295 seconds.

danielmartynek_0-1677227557221.png

 

Regards,

Daniel

 

0 Kudos

719 Views
Hoon
Contributor I

Hello, @danielmartynek 

Thank you for support !.

I understood that there are two ways to set RTC. 

  a. Time Seconds

  b. Alarm list

Hoon_0-1677456532310.png

Are Time Seconds and Alarm List related to RTC setting?
Or are they different ways? What is the difference?

 

Additionally, RTC is used to operate every minute with the following settings.

According to your guide, Time and Interval are the same values in the Alarm list, so do I have to do the same values for both items?

The reason why I did so is that the 2020/01/01, 0s setting in Configurations is the initial value, and the 2020/01/01, 54s setting in Alarm list is the final value. The reason for setting it to 54s was that RTC operated every minute when it was set to 54s through debugging operations.

Hoon_0-1677457383993.png

 

 

 

0 Kudos

714 Views
danielmartynek
NXP TechSupport
NXP TechSupport

Hello @Hoon,

These are two different features of the RTC module / driver.

Time seconds: the module can update the Time Second Register every second (1Hz) or different period / freq.

Alarm list: with your configuration, the alarm will be called after 54s if you call these two functions before the timer is started.

RTC_DRV_SetTimeDate(RTCTIMER1, &rtcTimer1_StartTime0);
RTC_DRV_ConfigureAlarm(RTCTIMER1, &alarmConfig0);
RTC_DRV_StartCounter(RTCTIMER1);

The reason why it is 60s instead of the 54s configured is because the LPO clock source is not precise.

 

Regards,

Daniel

 

 

0 Kudos