Atmel ARM-Based Evaluation Kit AT91SAM9N12-EK AT91SAM9N12-EK Data Sheet

Product codes
AT91SAM9N12-EK
Page of 1104
758
SAM9N12/SAM9CN11/SAM9CN12 [DATASHEET]
11063K–ATARM–05-Nov-13
40.7.1 Baud 
Rate 
Generator
The Baud Rate Generator provides the bit period clock named the Baud Rate Clock to both the receiver and the
transmitter.
The Baud Rate Generator clock source can be selected by setting the USCLKS field in the Mode Register (US_MR)
between:
The Master Clock MCK
A division of the Master Clock, the divider being product dependent, but generally set to 8
The external clock, available on the SCK pin
The Baud Rate Generator is based upon a 16-bit divider, which is programmed with the CD field of the Baud Rate
Generator Register (US_BRGR). If a zero is written to CD, the Baud Rate Generator does not generate any clock. If a
one is written to CD, the divider is bypassed and becomes inactive.
If the external SCK clock is selected, the duration of the low and high levels of the signal provided on the SCK pin must
be longer than a Master Clock (MCK) period. The frequency of the signal provided on SCK must be at least 3 times lower
than MCK in USART mode, or 6 times lower in SPI mode.
Figure 40-3.  Baud Rate Generator
40.7.1.1 Baud Rate in Asynchronous Mode 
If the USART is programmed to operate in asynchronous mode, the selected clock is first divided by CD, which is field
programmed in the US_BRGR. The resulting clock is provided to the receiver as a sampling clock and then divided by 16
or 8, depending on the programming of the OVER bit in the US_MR. 
If OVER is set, the receiver sampling is eight times higher than the baud rate clock. If OVER is cleared, the sampling is
performed at 16 times the baud rate clock.
The baud rate is calculated as per the following formula:
This gives a maximum baud rate of MCK divided by 8, assuming that MCK is the highest possible clock and that the
OVER bit is set.
MCK/DIV
16-bit Counter
0
Baud Rate 
Clock
CD
CD
Sampling
Divider
0
1
>1
Sampling 
Clock
Reserved
MCK
SCK
USCLKS
OVER
SCK
SYNC
SYNC
USCLKS = 3
1
0
2
3
0
1
0
1
FIDI
Baudrate
SelectedClock
8 2
Over
(
)CD
(
)
--------------------------------------------
=