Bootstrap loader
ST10F276
Table 32. BRP and PT0 values
BRP
PT0_min
PT0_max
Comments
0
464
1450
1
1451
2900
2
2901
4350
3
4351
5800
4
5801
7250
5
7251
8700
..
..
..
43
20416
63800
44
20880
65250
45
21344
66700
Possible timer overflow
..
..
..
63
X
X
The error coming from the measurement of the 29 bit is:
e1 = 6 / [PT0]
It is maximal for the smallest BRP value and the smallest number of ticks in PT0. Therefore:
e1 Max = 1.29%
To improve precision, the aim is to have the smallest BRP so that the time quantum is the
smallest possible. Thus, an error on the calculation of time quanta in a bit time is minimal.
In order to do so, the value of PT0 is divided into ranges of 1450 ticks. In the algorithm, PT0
is divided by 1451 and the result is BRP.
The calculated BRP value is then used to divide PT0 in order to have the value of (1 +
Tseg1 + Tseg2). A table is made to set the values for Tseg1 and Tseg2 according to the
value of (1 + Tseg1 + Tseg2). These values of Tseg1 and Tseg2 are chosen in order to
reach a sample point between 70% and 80% of the bit time.
During the calculation of (1 + Tseg1 + Tseg2), an error e2 can be introduced by the division.
This error is of 1 time quantum maximum.
To compensate for any possible error on bit rate, the (Re)Synchronization Jump Width is
fixed to 2 time quanta.
62/229