Download Using the hardware real-time clock (RTC)
Transcript
Contents AN3371 Contents 1 Overview of the STM32 advanced RTC . . . . . . . . . . . . . . . . . . . . . . . . . . 6 1.1 1.2 1.3 1.4 RTC calendar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6 1.1.1 Initializing the calendar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7 1.1.2 RTC clock configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8 RTC alarms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 1.2.1 RTC alarm configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 1.2.2 Alarm sub-second configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12 RTC periodic wakeup unit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14 1.3.1 Programming the Auto-wakeup unit . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14 1.3.2 Maximum and minimum RTC wakeup period . . . . . . . . . . . . . . . . . . . . 15 RTC digital calibration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17 1.4.1 RTC coarse calibration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17 1.4.2 RTC smooth calibration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18 1.5 Synchronizing the RTC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19 1.6 RTC reference clock detection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20 1.7 Time-stamp function . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21 1.8 RTC tamper detection function . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22 1.8.1 Edge detection on tamper input . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22 1.8.2 Level detection on tamper input . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23 1.8.3 Active time-stamp on tamper detection event . . . . . . . . . . . . . . . . . . . . 25 1.9 Backup registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25 1.10 RTC and low-power modes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25 1.11 Alternate function RTC outputs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26 1.12 1.11.1 RTC_CALIB output . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26 1.11.2 RTC_ALARM output . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 RTC security aspects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 1.12.1 RTC register write protection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 1.12.2 Enter/exit initialization mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 1.12.3 RTC clock synchronization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30 2 Advanced RTC features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31 3 RTC firmware driver API . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33 2/45 Doc ID 018624 Rev 5