Modulo usart
INTRODUCCION
El modulo transmisor receptor sincrónico asincrónico universal (USART) es
uno de los dos módulos de entrada salida serie (El otro es el modulo SSP). El modulo
USART también es conocido como Interfase de comunicación Serie (SCI). Este modulo
puede ser configurado como un sistema de comunicación asincrónico full duplex para
comunicarse con dispositivosperiféricos tales como CRT y computadoras personales o
como un sistema de comunicación sincrónico half duplex para comunicarse con
dispositivos periféricos tales como conversores A/D, D/A y EEPROMS serie entre otros
dispositivos.
En este capitulo nos enfocaremos en la transmisión y recepción asincrónica. Veremos
como configurar el microcontrolador para realizar estas dos tareas.
Modulo USARTCONFIGURACION
El modulo puede ser configurado en los siguientes modos:
• Asynchronous (full duplex)
• Synchronous - Master (half duplex)
• Synchronous - Slave (half duplex)
El modo Asincrónico USART, que es el que veremos en este capitulo, cuenta
con los siguientes elementos
•
•
•
Generador de Baud Rate (BRG).
Transmisor Asincrónico.
Receptor Asincrónico.
DESIGNACION DE LOSPUERTOS
El modo de transmisión asincrónica utiliza los puertos RB2/TX/CK (pin 8) para
la transmisión de datos y el RB1/RX/DT (pin 7) para la recepción de datos. Para
configurar dichos puertos como entrada o salida debemos configurar el registro TRISB.
EL bit 2 del Puerto B debe ser configurado como salida y el bit 1 como entrada.
Prof. Lasarte Matías
2
Año 2010
Modulo USART
MODOASINCRONICO
En este modo el USART utiliza el formato Standard “nonreturn to zero (NZR)”,
este formato contempla: un bit de inicio, ocho o nueve bits de datos y un bit de parada. El
formato más común es con 8 bits de datos.
Tanto en la transmisión como en la recepción USART siempre se envía y se recibe el bit
menos significativo (LSb) primero. Los módulos de transmisión y recepción USART sonfuncionalmente independientes pero usan el mismo formato de datos y la misma
velocidad de transmisión (Baud Rate).
Obs.: El modo Asincrónico se selecciona poniendo a cero el bit SYNC del
registro TXSTA.
GENERADOR DE BAUD RATE (BRG)
El generador de baud rate se utiliza tanto para el modo sincrónico como para el
modo asincrónico del USART. Este es un generador de 8 bits dedicadoexclusivamente
al modulo. El registro SPBRG es el encargado de controlar el periodo del timer de 8 bits.
En el modo asincrónico el bit BRGH (TXSTA) también controla el Baud Rate. Para
el caso de transmisión sincrónica el bit BRGH es ignorado.
La siguiente figura muestra la formula para el calculo de el baud rate para diferentes
modos del modulo USART.
Con el baud rate a utilizar y la frecuencia deoscilación, se puede calcular el
valor entero mas cercano para el valor SPBRG (0 a 255) usando la formula de la tabla
anterior.
CALCULO GENERADOR DE BAUDIOS
Despejando X:
X = ( Fosc/ (FrecuenciaBaudios* K) ) – 1
Con BRGH = 1 tendremos K = 16, obtener una frecuencia de 9600 Bps
X = ( 4 Mhz / (9600 * 16) ) – 1
X = 25.042 Aproximando 25
Prof. Lasarte Matías
3
Año 2010
Modulo USARTProf. Lasarte Matías
4
Año 2010
Modulo USART
TRANSMISION ASINCRONICA
En la siguiente figura se muestra el diagrama en bloques del transmisor
USART, en el cual se puede observar que el corazón del transmisor es el “registro de
desplazamiento del transmisor (TSR)”. El registro de desplazamiento obtiene sus datos
del registro donde se almacena el dato a transmitir, registroTXREG, conocido como
registro buffer de transmisión. Por su parte el registro TSR no es cargado hasta tanto el
bit de stop del envío previo no haya sido enviado. Tan pronto como el bit de stop es
enviado, el TSR se carga con un nuevo dato que proviene del registro TXREG. Una vez
que el registro TXREG transfiere el dato al registro TSR (Esto ocurre en un ciclo de
maquina), el registro TXREG se...
Regístrate para leer el documento completo.