Parity Control; Table 159. Frame Formats - ST STM32F446 Series Reference Manual

Advanced arm-based 32-bit mcus
Hide thumbs Also See for STM32F446 Series:
Table of Contents

Advertisement

Universal synchronous asynchronous receiver transmitter (USART)
25.4.7

Parity control

Parity control (generation of parity bit in transmission and parity checking in reception) can
be enabled by setting the PCE bit in the USART_CR1 register. Depending on the frame
length defined by the M bit, the possible USART frame formats are as listed in
M bit
1. Legends: SB: start bit, STB: stop bit, PB: parity bit.
Even parity
The parity bit is calculated to obtain an even number of "1s" inside the frame made of the 7
or 8 LSB bits (depending on whether M is equal to 0 or 1) and the parity bit.
E.g.: data=00110101; 4 bits set => parity bit will be 0 if even parity is selected (PS bit in
USART_CR1 = 0).
Odd parity
The parity bit is calculated to obtain an odd number of "1s" inside the frame made of the 7 or
8 LSB bits (depending on whether M is equal to 0 or 1) and the parity bit.
E.g.: data=00110101; 4 bits set => parity bit will be 1 if odd parity is selected (PS bit in
USART_CR1 = 1).
Parity checking in reception
If the parity check fails, the PE flag is set in the USART_SR register and an interrupt is
generated if PEIE is set in the USART_CR1 register. The PE flag is cleared by a software
sequence (a read from the status register followed by a read or write access to the
USART_DR data register).
Note:
In case of wakeup by an address mark: the MSB bit of the data is taken into account to
identify an address but not the parity bit. And the receiver does not check the parity of the
address data (PE is not set in case of a parity error).
Parity generation in transmission
If the PCE bit is set in USART_CR1, then the MSB bit of the data written in the data register
is transmitted but is changed by the parity bit (even number of "1s" if even parity is selected
(PS=0) or an odd number of "1s" if odd parity is selected (PS=1)).
Note:
The software routine that manages the transmission can activate the software sequence
that clears the PE flag (a read from the status register followed by a read or write access to
the data register). When operating in half-duplex mode, depending on the software, this can
cause the PE flag to be unexpectedly cleared.
820/1328
PCE bit
0
0
0
1
1
0
1
1

Table 159. Frame formats

| SB | 7-bit data | PB | STB |
| SB | 8-bit data PB | STB |
RM0390 Rev 4
(1)
USART frame
| SB | 8 bit data | STB |
| SB | 9-bit data | STB |
RM0390
Table
159.

Advertisement

Table of Contents
loading
Need help?

Need help?

Do you have a question about the STM32F446 Series and is the answer not in the manual?

This manual is also suitable for:

Rm0390

Table of Contents

Save PDF