Sony CXD5602 User Manual page 211

Table of Contents

Advertisement

Difference Calculation between CXD5602 and CXD5247
RTC of CXD5602 operates at 32.7 kHz clock frequency. Meanwhile, RTC of CXD5247 operates at 512 Hz clock
frequency. For this reason, there might be time difference between the PMIC and the LSI when CXD5247
(hereinafter called PMIC) is synchronized with CXD5602 (hereinafter called LSI). Accordingly, calculate the
difference Δ in advance. Then, set the time for the synchronization taking into account it. How to calculate the
difference Δ is shown below.
1. Set the time that External Alarm Flag is output from PMIC to the LSI using the offset time.
PMIC will output External Alarm Flag to the LSI at the set time.
2. Right after receiving External Alarm Flag, the LSI reads RTC Counter value inside RTC by using
Rt(Post/Pre)Cnt.
3. Hold the lower 6 bits of RtPreCnt as difference Δ between PMIC and the LSI.
Hold difference Δ in Flash Memories or the like before getting into Deep Sleep mode.
4. Clear the PMIC External Alarm Flag.
3.6.5.3.4
Synchronization Between Internal RTCs
This function is used when synchronization of time counter value is performed between RTC0 and RTC1. When a
synchronization request is issued to one RTC, it takes in the RTC Counter value of another RTC and gets
synchronized with another RTC.
When you synchronize RTC0 with RTC Counter value of RTC1, write "1" on RtcSyncReq of RTC0.
When you synchronize RTC1 with RTC Counter value of RTC0, write "1" on RtcSyncReq of RTC1.
You can check whether synchronization has been completed in the following two ways.
polling to WrRegReq of one RTC, which wrote 1 on RtcSyncReq register, and confirming that it
returns to "0"
receiving interrupt request CntUpdateFlg which means that RTC has been updated
3.6.5.3.5
Alarm Output Setting
This function is used to set time for Alarm Output. The sequence is as follows taking Alarm0 as an example.
When you want to use Alarm1, read each register in the sequence replacing Flg0/En0/Cnt0 part with
Flg1/En1/Cnt1. Likewise, when you want to use Alarm2, read each register in the sequence replacing
Flg0/En0/Cnt0 part with Flg2/En2/Cnt2.
When you set Alarm output time (first time)
1. Write "1" on AlmClr.Flg0 and AlmClr.ErrFlg0 registers.
Clear Normal and Error Alarm Flags to "0".
2. Write "1" on AlmOutEn0.En and AlmOutEn0.ErrEn registers at the same time.
Enable O(Err)Alarm0 to be output.
-211/1010-
CXD5602 User Manual

Hide quick links:

Advertisement

Table of Contents
loading

Table of Contents