User: alciro    User
 

Microcontroladores 8051

Share |

7. Las comunicaciones en serie

Las comunicaciones en serie RS-232 es una interfaz de comunicaciones para la transmisión de datos en serie entre dispositivos electrónicos como ordenadores, módems etc. La norma RS-232C establecida por la EIA (Electronic Industries Alliance) determina las características físicas de la comunicación de datos binarios entre dispositivos, DTE (Data Terminal Equipment o Equipo Terminal de Datos) normalmente asociado a un ordenador y dispositivos DCE (Data Communication Equipment o Equipo de Comunicación de Datos) para los quipos periféricos como módems o autómatas.

Secuencia de bits de la RS-232

Bps bits por segundo.

La velocidad de transmisión de datos en las comunicaciones serie se mide en bits por segundo bps (bit rate), es decir, el número de bits que son transferidos en 1 segundo. Si el tiempo de un bit corresponde al tiempo de permanencia de un estado lógico, la velocidad de transmisión resulta la inversa del tiempo de 1 bit.

bps\ =\ \frac{1}{t}\ bits\ por\ segundo

En muchas ocasiones se realiza una equiparación directa entre bps (bit rate) y Bps (baud rate o baudios por segundo) y esto solo es cierto cuando el símbolo que se trasmite corresponde a un bit.

Los baudios (baud rate) corresponde al número se símbolos que se transmiten por segundo, todo depende de que se entienda como símbolo, si este corresponde a 1 bis ambos términos coinciden pero un baudio puede ser representado por varios bits.

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:

Baudios\ =\ \frac{2^{SMOD}}{32}*\frac{Frecuencia\ oscilador}{12*(256-TH1)}

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
           

Loading

copyright © 2007-2024  www.alciro.org  All rights reserved.         
Share |