English
Language : 

HT46RU25 Datasheet, PDF (36/63 Pages) Holtek Semiconductor Inc – A/D Type 8-Bit MCU
¨ TXEN
The TXEN bit is the Transmitter Enable Bit. When
this bit is equal to ²0² the transmitter will be disabled
with any pending transmissions being aborted. In
addition the buffer will be reset. In this situation the
TX pin can be used as a general purpose I/O pin. If
the TXEN bit is equal to ²1² the transmitter will be
enabled and if the UARTEN bit is equal to ²1² the
TX pin will be controlled by the UART. Clearing the
TXEN bit during a transmission will cause the trans-
mission to be aborted and will reset the transmitter.
If this occurs, the TX pin can be used as a general
purpose I/O pin.
· Baud rate generator
To setup the speed of the serial data communication,
the UART function contains its own dedicated baud
rate generator. The baud rate is controlled by its own
internal free running 8-bit timer, the period of which is
determined by two factors. The first of these is the
value placed in the BRG register and the second is the
value of the BRGH bit within the UCR2 control regis-
ter. The BRGH bit decides, if the baud rate generator
is to be used in a high speed mode or low speed
mode, which in turn determines the formula that is
used to calculate the baud rate. The value in the BRG
register determines the division factor, N, which is
used in the following baud rate calculation formula.
Note that N is the decimal value placed in the BRG
register and has a range of between 0 and 255.
UCR2 BRGH Bit
Baud Rate
0
fSYS
[64 (N+1)]
1
fSYS
[16 (N+1)]
HT46RU25/HT46CU25
By programming the BRGH bit which allows selection
of the related formula and programming the required
value in the BRG register, the required baud rate can
be setup. Note that because the actual baud rate is
determined using a discrete value, N, placed in the
BRG register, there will be an error associated be-
tween the actual and requested value. The following
example shows how the BRG register value N and the
error value can be calculated.
Calculating the register and error values
For a clock frequency of 8MHz, and with BRGH set to
²0² determine the BRG register value N, the actual
baud rate and the error value for a desired baud rate
of 9600.
From the above table the desired baud rate BR
=
fSYS
[64 (N+1)]
Re-arranging this equation gives N = fSYS - 1
(BRx64)
Giving a value for N = 8000000 - 1 = 12.0208
(9600x 64)
To obtain the closest value, a decimal value of 12
should be placed into the BRG register. This gives an
actual or calculated baud rate value of
BR = 8000000 = 9615
[64(12 + 1)]
Therefore the error is equal to = 0.16%
The following tables show actual values of baud rate and error values for the two values of BRGH.
Baud
Rate
K/BPS
fSYS=8MHz
BRG Kbaud Error
Baud Rates for BRGH=0
fSYS=7.159MHz
fSYS=4MHz
BRG Kbaud Error BRG Kbaud Error
fSYS=3.579545MHz
BRG Kbaud Error
0.3
¾
¾
¾
¾
¾
¾
207 0.300 0.00 185 0.300 0.00
1.2 103 1.202 0.16 92 1.203 0.23 51 1.202 0.16 46 1.19 -0.83
2.4
51 2.404 0.16 46 2.38 -0.83 25 2.404 0.16 22 2.432 1.32
4.8
25 4.807 0.16 22 4.863 1.32 12 4.808 0.16 11 4.661 -2.9
9.6
12 9.615 0.16 11 9.322 -2.9
6 8.929 -6.99 5 9.321 -2.9
19.2
6 17.857 -6.99 5 18.64 -2.9
2 20.83 8.51
2 18.643 -2.9
38.4
2 41.667 8.51
2 37.29 -2.9
1
¾
¾
1
¾
¾
57.6
1
62.5 8.51
1 55.93 -2.9
0
62.5 8.51
0 55.93 -2.9
115.2 0
125 8.51
0 111.86 -2.9
¾
¾
¾
¾
¾
¾
Baud Rates and Error Values for BRGH = 0
Rev. 1.30
36
March 9, 2007