ST STM32F100 Series Reference Manual page 614

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

Advertisement

Universal synchronous asynchronous receiver transmitter (USART)
Then, USART_BRR = 0x195 => USARTDIV = 0d25.625
Example 3:
To program USARTDIV = 0d50.99
This leads to:
DIV_Fraction = 8*0d0.99 = 0d7.92
The nearest real number is 0d8 = 0x8 => overflow of the DIV_frac[2:0] => carry must be
added up to the mantissa
DIV_Mantissa = mantissa (0d50.990 + carry) = 0d51 = 0x33
Then, USART_BRR = 0x0330 => USARTDIV = 0d51.000
Table 125. Error calculation for programmed baud rates at f
Baud rate7
S.No
Desired
1
1.2 KBps
2
2.4 KBps
3
9.6 KBps
4
19.2 KBps
19.185 KBps
5
38.4 KBps
38.462 KBps
6
57.6 KBps
57.554 KBps
7
115.2 KBps 115.942 KBps
8
230.4 KBps 228.571 KBps
9
460.8 KBps 470.588 KBps
10
921.6 KBps
11
2 MBps
12
3 MBps
1. The lower the CPU clock the lower the accuracy for a particular baud rate. The upper limit of the achievable baud rate can
be fixed with these data.
614/709
oversampling by 16
Oversampling by 16 (OVER8=0)
f
= 8 MHz
PCLK
Value
programmed
Actual
in the baud
rate register
1.2 KBps
416.6875
2.4 KBps
208.3125
9.604 KBps
52.0625
26.0625
13
8.6875
4.3125
2.1875
1.0625
NA
NA
NA
NA
NA
NA
(1)
% Error =
(Calculated -
Desired) B.rate /
Desired B.rate
0
0.01
0.04
0.08
0.16
0.08
0.64
0.79
230.769 KBps
2.12
461.538 KBps
NA
NA
NA
RM0041 Rev 6
= 8 MHz or f
PCLK
PCLK
f
= 12 MHz
PCLK
Value
programmed
Actual
in the baud
rate register
1.2 KBps
625
2.4 KBps
312.5
9.6 KBps
78.125
19.2 KBps
39.0625
38.339 KBps
19.5625
57.692 KBps
13
115.385 KBps
6.5
3.25
1.625
NA
NA
NA
NA
NA
NA
RM0041
= 12 MHz,
% Error
0
0
0
0
0.16
0.16
0.16
0.16
0.16
NA
NA
NA

Advertisement

Table of Contents
loading
Need help?

Need help?

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

Questions and answers

Subscribe to Our Youtube Channel

Table of Contents