INICIO WEB

              
                      bolaverd.gif (257 bytes) Transmisión de datos
                      bolaverd.gif (257 bytes) Recepción de datos
                      bolaverd.gif (257 bytes) Control de la UART
                                 globul2a.gif (67 bytes) Registro de datos de I/O de la UART - UDR
                                 globul2a.gif (67 bytes) Registro de estado de la UART - USR
                                 globul2a.gif (67 bytes) Registro de control de la UART - UCR
                      bolaverd.gif (257 bytes) Generador de Baud rate
                                            globul2a.gif (67 bytes) Registro de Baud rate de la UART - UBRR

       150.gif (1063 bytes)

                

Los AT90S8515 ofrecen un Receptor y Transmisor Asíncrono Universal full duplex (UART) con registros de recepción y transmisión separados. Las características principales son:

  • Generador de una gran variedad de baud rates (bps)
  • Altas tasas de Baud Rates a bajas frecuencias de XTAL
  • Datos de 8 o 9 bits
  • Filtro de ruido
  • Detector de desbordamiento
  • Detección de error de estructura
  • Detección de falso bit de start
  • Tres Interrupciones distintas para TX Completo, registro de datos TX Vacío y RX Completo

          

TRANSMISIÓN DE DATOS

En la siguiente figura se muestra un bloque esquemático del transmisor de la UART. (Si desea ver esta imagen en una página completa pulse AQUÍ)

           

Transmisor_UART.gif (968598 bytes)

Figura. Transmisor del UART

           

La transmisión de los datos se comienza escribiendo los datos a transmitir en el registro de datos de I/O de la UART, UDR. Los datos se transfieren de la UDR al registro de desplazamiento de Transmisión cuando:

• Un nuevo carácter se ha escrito en UDR después de que el bit de stop del carácter anterior haya sido enviado. El registro de desplazamiento es cargado inmediatamente.

• Un nuevo carácter se ha escrito en UDR antes de que el bit de stop del carácter anterior haya sido enviado. El registro de desplazamiento es cargado cuando el bit de stop del carácter a transmitir haya sido enviado.

         

Si el registro de desplazamiento Transmisor de 10 (11)-bit está vacío, el dato se transfiere de UDR al registro de desplazamiento. En este momento el bit UDRE (registro de datos del UART vacío) en el registro de estado del UART, USR, está a set. Cuando este bit está a set (uno), el UART está listo para recibir el próximo carácter. Al mismo tiempo que el dato se transfiere de UDR al registro de desplazamiento de 10(11)-bit, el bit 0 del registro de desplazamiento es borrado (bit de start) y el bit 9 o 10 está a set (bit de stop). Si se selecciona una palabra de datos de 9-bit (el bit CHR9 en el registro de control del UART, UCR está a set), el bit TXB8 en UCR se transfiere al bit 9 en el registro de desplazamiento de transmisión.

En el clock del baud rate que sigue a la operación de transferencia al registro de desplazamiento, el bit de start se desplaza fuera en el pin TXD. Entonces le siguen los datos siendo LSB el primero. Cuando el bit de stop se ha desplazado fuera, el registro de desplazamiento es cargado si cualquier nuevo dato se ha escrito al UDR durante la transmisión. Durante la carga, UDRE está a set. Si no hay ningún nuevo dato para enviar en el registro UDR cuando el bit de stop se desplaza fuera, el flag UDRE permanecerá a set hasta que UDR sea escrito de nuevo. Cuando ningún nuevo dato se ha escrito y el bit de stop ha estado presente en TXD en la duración de un bit, el flag TX Completo (TXC) en USR está a set.

El bit TXEN en UCR habilita el Transmisor del UART cuando está a set (uno). Cuando este bit se borra (cero), el pin PD1 puede usarse para I/O general. Cuando TXEN está a set, el Transmisor del UART se conectará a PD1 que está obligado a ser un pin de salida sin tener en cuenta la situación del bit DDD1 en DDRD.

              
                                         

ARRIBA