7. Las comunicaciones en serie
7.1. El Timer 1 como generador de Baudios
El registro TMOD (89H, 137)
Registro de configuración de los temporizadores/contadores Timer 0 y Timer 1.
| MSB |
|
|
|
|
|
|
LSB |
| GATE |
C/T |
M1 |
M0 |
GATE |
C/T |
M1 |
M0 |
| Timer 1 |
Timer 0 |
M0 y M1. Selección del modo de operación del temporizador.
| M1 |
M0 |
Selección del modo de operación
|
| 0 |
0 |
Modo 0 |
Temporizador/contador de 13 bits |
| 0 |
1 |
Modo 1 |
Temporizador/contador de 16 bits |
| 1 |
0 |
Modo 2 |
Temporizador/contador de 8 bits con autorecarga |
| 1 |
1 |
Modo 3 |
Varios contadores |
C/T. Funcionamiento como contador o como temporizador.
0 -> Contador, los pulsos se toman de la señal de reloj.
1 -> Temporizador, pulsos del terminal Tx.
GATE. Establece el control del timer.
0 -> Hace que el Timer se controle mediante el bit TRx. Si TRx es 1 se pone en macha el Timerx y con TRx a 0 se para (x identifica al timer 0 ó 1).
1-> El Timer se controla por hardware, mediante el estado de la entrada (pin) INTx.
Para que el Timer 1 funcione como generador de baudios se ha de configurar en modo 2 (temporizador de 8 bits con autorecarga).
Timer en Modo 2, auto-recarga de 8 bits

Timer 1 en modo 2, temporizador de 8 bits con autorecarga
Baudios (bits por segundo)
Si se utiliza el Timer 1 como generador de baudios cuando se trabaja en Modo 1 y 3 (UART de velocidad variable) el cálculo de la velocidad en Baudios o bis por segundo viene establecido pos la siguiente fórmula:
})
En la tabla inferior se puede observar la comparación de las configuraciones de los valores de recarga del Timer 1 en función de las distintas velocidades de comunicación posibles. Para poder obtener un conjunto de velocidades de comunicación normalizadas es necesario utilizar un cristal de cuarzo de 11,0592 MHz.
| Baudios (bits por segundo) |
Frecuencia del reloj |
SMOD |
Timer 1 |
| C/T |
Modo |
Valor de recarga |
| Modo 0: 1 M (máx.) |
12 MHz |
X |
X |
X |
X |
| Modo 2: 375 K |
12 MHz |
1 |
X |
X |
X |
| Modo 1, 3: 62,5 K |
12 MHz |
1 |
0 |
2 |
FFH |
| 19200 |
11,0592 MHz |
1 |
0 |
2 |
FDH |
| 9600 |
11,0592 MHz |
0 |
0 |
2 |
FDH |
| 4800 |
11,0592 MHz |
0 |
0 |
2 |
FAH |
| 2400 |
11,0592 MHz |
0 |
0 |
2 |
F4H |
| 1200 |
11,0592 MHz |
0 |
0 |
2 |
E8H |
| 137500 |
11,0592 MHz |
0 |
0 |
2 |
1DH |
| 110000 |
6 MHz |
0 |
0 |
2 |
72H |
| 110000 |
12 MHz |
0 |
0 |
1 |
FEEBH |
| |
|
|
|
|
|