DRAFT
RM0091 Contents
Doc ID 018940 Rev 1 17/715
22.6.6 RTC alarm A register (RTC_ALRMAR) . . . . . . . . . . . . . . . . . . . . . . . . 484
22.6.7 RTC sub second register (RTC_SSR) . . . . . . . . . . . . . . . . . . . . . . . . . 486
22.6.8 RTC shift control register (RTC_SHIFTR) . . . . . . . . . . . . . . . . . . . . . . 487
22.6.9 RTC write protection register (RTC_WPR) . . . . . . . . . . . . . . . . . . . . . 488
22.6.10 RTC timestamp time register (RTC_TSTR) . . . . . . . . . . . . . . . . . . . . . 488
22.6.11 RTC timestamp date register (RTC_TSDR) . . . . . . . . . . . . . . . . . . . . 489
22.6.12 RTC time-stamp sub second register (RTC_TSSSR) . . . . . . . . . . . . . 489
22.6.13 RTC calibration register (RTC_CALR) . . . . . . . . . . . . . . . . . . . . . . . . . 490
22.6.14 RTC tamper and alternate function configuration register
(RTC_TAFCR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 492
22.6.15 RTC alarm A sub second register (RTC_ALRMASSR) . . . . . . . . . . . . 494
22.6.16 RTC backup registers (RTC_BKPxR) . . . . . . . . . . . . . . . . . . . . . . . . . 495
22.6.17 RTC register map . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 495
23 Inter-integrated circuit (I
2
C) interface . . . . . . . . . . . . . . . . . . . . . . . . . 497
23.1 I
2
C introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 497
23.2 I
2
C main features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 497
23.3 I2C implementation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 498
23.4 I
2
C functional description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 498
23.4.1 I2C1 block diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 499
23.4.2 I2C2 block diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 500
23.4.3 I
2
C clock requirements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 500
23.4.4 Mode selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 501
23.4.5 I
2
C initialization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 502
23.4.6 Software reset . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 505
23.4.7 Data transfer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 506
23.4.8 I2C slave mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 508
23.4.9 I2C master mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 516
23.4.10 I2Cx_TIMINGR register configuration examples: . . . . . . . . . . . . . . . . 528
23.4.11 SMBus specific features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 530
23.4.12 SMBus initialization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 533
23.4.13 SMBus: I2Cx_TIMEOUTR register configuration examples . . . . . . . . 534
23.4.14 SMBus slave mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 535
23.4.15 Wakeup from STOP on address match . . . . . . . . . . . . . . . . . . . . . . . . 542
23.4.16 Error conditions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 543
23.4.17 DMA requests . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 545
23.5 I
2
C interrupts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 546