Contents RM0031
16/508 Doc ID 15226 Rev 5
24.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 366
24.2 RTC main features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 366
24.3 RTC functional description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 366
24.3.1 Clock and prescalers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 367
24.3.2 Real-time clock and calendar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 369
24.3.3 Programmable alarm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 369
24.3.4 Periodic auto-wakeup . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 369
24.4 RTC initialization and configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . 370
24.4.1 RTC register write protection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 370
24.4.2 Calendar initialization and configuration . . . . . . . . . . . . . . . . . . . . . . . 371
24.4.3 Reading calendar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 371
24.4.4 Daylight saving time . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 371
24.4.5 Programming the alarm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 371
24.4.6 Programming the auto-wakeup timer . . . . . . . . . . . . . . . . . . . . . . . . . . 372
24.5 Resetting the RTC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 372
24.6 Reference clock output . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 373
24.7 RTC low power modes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 373
24.8 RTC interrupts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 373
24.9 RTC registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 374
24.9.1 Time register 1 (RTC_TR1) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 374
24.9.2 Time register 2 (RTC_TR2) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 374
24.9.3 Time register 3 (RTC_TR3) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 375
24.9.4 Date register 1 (RTC_DR1) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 375
24.9.5 Date register 2 (RTC_DR2) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 376
24.9.6 Date register 3 (RTC_DR3) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 376
24.9.7 Control register 1 (RTC_CR1) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 377
24.9.8 Control register 2 (RTC_CR2) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 378
24.9.9 Control register 3 (RTC_CR3) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 379
24.9.10 Initialization and status register 1 (RTC_ISR1) . . . . . . . . . . . . . . . . . . 380
24.9.11 Initialization and status register 2 (RTC_ISR2) . . . . . . . . . . . . . . . . . . 381
24.9.12 Synchronous prescaler register high (RTC_SPRERH) . . . . . . . . . . . . 381
24.9.13 Synchronous prescaler register low (RTC_SPRERL) . . . . . . . . . . . . . 382
24.9.14 Asynchronous prescaler register (RTC_APRER) . . . . . . . . . . . . . . . . 382
24.9.15 Wakeup timer register high (RTC_WUTRH) . . . . . . . . . . . . . . . . . . . . 383
24.9.16 Wakeup timer register low (RTC_WUTRL) . . . . . . . . . . . . . . . . . . . . . 383
24.9.17 Write protection register (RTC_WPR) . . . . . . . . . . . . . . . . . . . . . . . . . 384