RM0091 Contents
Doc ID 018940 Rev 1 19/742
25.5.10 LIN (local interconnection network) mode . . . . . . . . . . . . . . . . . . . . . . 592
25.5.11 USART synchronous mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 594
25.5.12 Single-wire half-duplex communication . . . . . . . . . . . . . . . . . . . . . . . . 596
25.5.13 Smartcard mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 597
25.5.14 IrDA SIR ENDEC block . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 601
25.5.15 Continuous communication using DMA . . . . . . . . . . . . . . . . . . . . . . . . 604
25.5.16 Hardware flow control and RS485 Driver Enable . . . . . . . . . . . . . . . . 606
25.5.17 Wakeup from Stop mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 608
25.6 USART interrupts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 609
25.7 USART registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 611
25.7.1 Control register 1 (USART_CR1) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 611
25.7.2 Control register 2 (USART_CR2) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 614
25.7.3 Control register 3 (USART_CR3) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 618
25.7.4 Baud rate register (USART_BRR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 621
25.7.5 Guard time and prescaler register (USART_GTPR) . . . . . . . . . . . . . . 622
25.7.6 Receiver timeout register (USART_RTOR) . . . . . . . . . . . . . . . . . . . . . 623
25.7.7 Request register (USART_RQR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 624
25.7.8 Interrupt & status register (USART_ISR) . . . . . . . . . . . . . . . . . . . . . . . 625
25.7.9 Interrupt flag clear register (USART_ICR) . . . . . . . . . . . . . . . . . . . . . . 629
25.7.10 Receive data register (USART_RDR) . . . . . . . . . . . . . . . . . . . . . . . . . 631
25.7.11 Transmit data register (USART_TDR) . . . . . . . . . . . . . . . . . . . . . . . . . 632
25.7.12 USART register map . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 633
26 Serial peripheral interface / inter-IC sound (SPI/I2S) . . . . . . . . . . . . . 634
26.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 634
26.1.1 SPI main features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 634
26.1.2 SPI extended features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 635
26.1.3 I²S features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 635
26.2 SPI/I2S implementation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 635
26.3 SPI functional description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 635
26.3.1 General description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 635
26.3.2 Communications between one master and one slave . . . . . . . . . . . . . 636
26.3.3 Standard multi-slave communication . . . . . . . . . . . . . . . . . . . . . . . . . . 638
26.3.4 Slave select (NSS) pin management . . . . . . . . . . . . . . . . . . . . . . . . . . 639
26.3.5 Communication formats . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 640
26.3.6 Initialize SPI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 642
26.3.7 Data transmission and reception procedures . . . . . . . . . . . . . . . . . . . 643