
www.national.com
68
16.4
The USART baud rate is determined by the system clock fre-
quency and the values programmed into the UnPSR and Un-
BAUD registers. Unless the system clock frequency is an
exact multiple of the desired baud rate, there will be a small
amount of error in the resulting baud rate clock.
The method of baud rate calculation depends on whether the
USART is configured to operate in the asynchronous or syn-
chronous mode.
BAUD RATE CALCULATIONS
16.4.1
The equation for calculating the baud rate in asynchronous
mode is:
Baud Rate in Asynchronous Mode
where BR is the baud rate, SYS_CLK is the system clock, N
is the value of the baud rate divisor + 1, and P is the prescaler
divide factor selected by the value in the UnPSR register.
Assuming a system clock of 5 MHz and a desired baud rate
of 9600, the NxP term according to the equation above is:
The NxP term is then divided by each Prescaler Factor from
Table18 to obtain a value closest to an integer. The factor for
this example is 6.5.
The baud rate register is programmed with a baud rate divi-
sor of 4 (N = baud rate divisor +1). This produces a baud
clock of:
Note that the percent error is much lower than would be pos-
sible without the non-integer prescaler factor. Refer to the ta-
ble below for more examples.
16.4.2
The equation for calculating the baud rate in synchronous
mode is:
Baud Rate in Synchronous Mode
where BR is the baud rate, SYS_CLK is the system clock, N
is the value of the baud rate divisor + 1, and P is the prescaler
divide factor selected by the value in the UnPSR register.
Use the same procedure to determine the values of N and P
as in the asynchronous mode. In this case, however, only in-
teger prescaler values are allowed.
System
Clock
Desired
Baud Rate
N
P
Actual
Baud Rate
Percent
Error
4 MHz
5 MHz
10 MHz
20 MHz
9600
9600
19200
19200
2
5 6.5
5 6.5
5
13
9615.385
9615.385
19230.769
19230.769
0.16
0.16
0.16
0.16
13
BR
_
CLK
16
N
×
P
×
(
)
---SYS
=
N
P
×
5
6
×
10
)
)
---16
32.552
=
=
N
36.5
5.008 (N = 5)
=
=
BR
5
6
10
5
6.5
16
×
(
)
---------------------------------
9615.385
=
=
%
error
-9615.9600
9600
–
(
)
0.16
=
=
BR
_
CLK
N
×
P
×
)
2
=