• Save

Loading…

Flash Player 9 (or above) is needed to view presentations.
We have detected that you do not have it on your computer. To install it, go here.

Like this presentation? Why not share!

Clase USART

on

  • 9,706 views

Módulo USART - PIC16F877A

Módulo USART - PIC16F877A

Statistics

Views

Total Views
9,706
Views on SlideShare
6,798
Embed Views
2,908

Actions

Likes
1
Downloads
0
Comments
0

3 Embeds 2,908

http://eva.unicauca.edu.co 2683
http://www.eva.unicauca.edu.co 224
http://static.slidesharecdn.com 1

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

    Clase USART Clase USART Presentation Transcript

    • CIRCUITOS DIGITALES II USART: Transmisor/Receptor Síncrono/Asíncrono serie Ing. Fernando Aparicio Urbano Molano
    • USART: Transmisor/Receptor Asíncrono Serie INTRODUCCIÓN Existen dos formas de intercambiar información binaria o digital: la paralela y la serial. La comunicación paralela transmite todos los bits de un dato de manera simultánea y tiene la ventaja que la transferencia es rápida, pero la desventaja de necesitar una gran cantidad de hilos o líneas, situación que encarece los costos y se agrava cuando las distancias que separan los equipos entre los cuales se hace el intercambio es muy grande, debido a las capacitancias entre los conductores, la cual limita el correcto intercambio de datos a unos pocos metros. 2 Ing. Fernando A. Urbano M.
    • USART: Transmisor/Receptor Asíncrono Serie INTRODUCCIÓN (2) La comunicación serial transmite un bit a la vez, por lo cual es mucho más lenta, pero posee la ventaja de que necesita mucho menor número de líneas para la transferencia de la información y las distancias a la cual se puede realizar el intercambio, es mayor; a esto se suma que mediante dispositivos como los modems, la comunicación se pueda extender prácticamente a cualquier lugar. 3 Ing. Fernando A. Urbano M.
    • USART: Transmisor/Receptor Asíncrono Serie INTERFAZ DE COMUNICACIÓN TTL/RS-232 El microcontrolador PIC16F87X posee un módulo USART, usando la norma RS-232, sin embargo es necesario usar un módulo adicional para convertir las señales que maneja, a niveles TTL (0 – 5V) a niveles adecuados para que haya una correcta comunicación con el computador (PC). Dicha labor la realiza el circuito integrado MAX232 de Maxim Semiconductor. Este integrado se destaca por que maneja los niveles de voltaje positivos y negativos propios de la interface RS-232, a pesar de que se alimenta con solo una fuente sencilla de 5V. 4 Ing. Fernando A. Urbano M.
    • USART: Transmisor/Receptor Asíncrono Serie COMUNICACIÓN SERIE ASÍNCRONA El USART (Universal Synchronous Asynchronous Receiver Transmitter), o conocido como SCI (Serial Comunications Interface), puede ser configurado como un sistema full duplex o bidireccional asíncrono, adaptándose a multitud de periféricos y dispositivos que transfieren información de ésta forma, tales como el monitor CRT o el computador. USART puede configurarse de tres formas: • Asíncrona (Full duplex, bidireccional). • Síncrona-Maestro (Half duplex, unidireccional). • Síncrona-Esclavo (Half duplex, unidireccional). 5 Ing. Fernando A. Urbano M.
    • USART: Transmisor/Receptor Asíncrono Serie COMUNICACIÓN SERIE ASÍNCRONA (2) Vamos a estudiar únicamente el modo asíncrono, donde las transferencias de información se realizan sobre dos líneas TX (transmisión) y RX (recepción), saliendo y entrando los bits por dichas líneas al ritmo de una frecuencia controlada internamente por el USART. Las líneas de comunicación son los dos bits de más peso del Puerto C: RC6/TX/CK y RC7/RX/DT, donde el bit SPEN (RCSTA<7>) y los bits TRISC<7:6> tienen que activarse mediante un 1 con el fin activar dichos pines. 6 Ing. Fernando A. Urbano M.
    • USART: Transmisor/Receptor Asíncrono Serie REGISTRO TXSTA: Estado de la transmisión y Registro de control 7 Ing. Fernando A. Urbano M.
    • USART: Transmisor/Receptor Asíncrono Serie REGISTRO RCSTA: Estado de la recepción y Registro de control 8 Ing. Fernando A. Urbano M.
    • USART: Transmisor/Receptor Asíncrono Serie GENERADOR DE BAUDIOS En el protocolo asíncrono RS-232-C, la frecuencia en baudios (bits por segundo) a la que se realiza la transferencia se debe efectuar a un valor normalizado: 2400, 4800, 9600, 19200, etc. Para generar esta frecuencia en Baudios, BRG, cuyo valor es controlado por el contenido grabado en el registro SPBRG. Además del valor X cargado en el registro SPBRG, la frecuencia en baudios del generador depende del bit BRGH del registro TXSTA<2>. En caso de que BRGH sea 0 se trabaja en baja velocidad y si BRGH = 1 se trabaja en alta velocidad. Según éste bit se obtendrá el valor de una constante K necesaria en la determinación de la frecuencia de funcionamiento. 9 Ing. Fernando A. Urbano M.
    • USART: Transmisor/Receptor Asíncrono Serie GENERADOR DE BAUDIOS (2) FOSC Frecuencia en Baudios = ( K • ( X + 1) ) X es el valor cargado en el registro SPBRG Si BRGH = 0, baja velocidad y K = 64 Si BRGH = 1, alta velocidad y K = 16 De donde se tiene que: FOSC X= −1 Frecuencia • K 10 Ing. Fernando A. Urbano M.
    • USART: Transmisor/Receptor Asíncrono Serie GENERADOR DE BAUDIOS (3) Si en un PIC16F877A funcionando con una FOSC = 4 MHz Se desea trabajar con el USART en modo asíncrono y alta velocidad, con una frecuencia de 9600 baudios, calcular el valor X que hay que cargar en el registro SPBRG y el error que se origina. (Alta velocidad) K = 16 9600 = 4000000 / (16 • ( X + 1) ) 4000000 X= −1 9600 • 16 X = 25 11 Ing. Fernando A. Urbano M.
    • USART: Transmisor/Receptor Asíncrono Serie GENERADOR DE BAUDIOS (4) Si se carga el registro SPBRG con 8 la frecuencia real de trabajo será: Frecuencia = 4000000 / (16 • (25 + 1) ) = 9615 baudios El error que se genera cargando 25 en el SPBRG será: ⎛ 9615 − 9600 ⎞ Error = ⎜ ⎟ ∗100% = 0.16% ⎝ 9600 ⎠ 12 Ing. Fernando A. Urbano M.
    • USART: Transmisor/Receptor Asíncrono Serie TRANSMISOR ASÍNCRONO Pasos a seguir para implementar una transmisión en el USART: 1. Configurar las líneas RC6/TX/CK como salida y RC7/RX/DT como entrada. 2. Poner SYNC = 0 y SPEN = 1 para activar el USART en modo asíncrono. 3. Si se desea trabajar con interrupción, poner TXIE = 1, además de habilitar las interrupciones en general. 4. Si el dato consta de 9 bits, en lugar de los 8 típicos, poner el bit TX9 = 1. El noveno bit se colocará en TX9D (TXSTA). 5. Se carga el valor X adecuado en el registro SPBRG, para producir la frecuencia de trabajo deseada. Hay que controlar el bit BRGH (alta y baja velocidad). 6. Activar la transmisión con TXEN = 1. El bit TXIF tendrá valor 1, ya que TXREG se encuentra vacío. 7. Cargar en TXREG el dato a transmitir. Comienza la transmisión. 13 Ing. Fernando A. Urbano M.
    • USART: Transmisor/Receptor Asíncrono Serie RECEPTOR ASÍNCRONO Pasos a seguir para el modo recepción: 1. Se carga con el valor X al registro SPBRG para trabajar con la frecuencia deseada, controlando además el valor de BRGH. 2. Se habilita el USART en modo asíncrono con SPEN = 1 y SYNC = 0. 3. Si se desea trabajar con interrupción con la llegada del bit de STOP (parada), se pone RCIE = 1, además de habilitar las interrupciones en general. 4. Poner RX9 = 1 para permitir la recepción del bit 9 bits. 5. Para detectar la dirección, poner ADDEN = 1. 6. Se habilita la recepción poniendo CREN = 1. 7. Al completarse la recepción RCIF se pondrá a 1 y se produce una interrupción si se había permitido 8. Se lee el registro RCSTA y se averigüa si se ha producido algún error. 9. Leer los 8 bits del registro RCREG para determinar si el dispositivo ha sido direccionado. 10. Si se ha producido algún error, poner CREN = 0. 11. Si ha sido direccionado el dispositivo, poner ADDEN = 0 para permitir la recepción de la información. 14 Ing. Fernando A. Urbano M.
    • USART: Transmisor/Receptor Asíncrono Serie SIMULACIÓN DEL RS-232 EN PROTEUS ISIS 6.9 Es posible simular la transmisión serial por medio de éste terminal virtual, conectado directamente a los pines de transmisión y/o recepción. 15 Ing. Fernando A. Urbano M.
    • USART: Transmisor/Receptor Asíncrono Serie REFERENCIAS 1. PIC16F87X Data Sheet 28/40 pin 8-bit CMOS FLASH Microcontrolers. Microchip Technologies Inc. 2001. 2. ANGULO, Jose M. y otros. Microcontroladores PIC. Diseño práctico de aplicaciones. Segunda Parte: PIC16F87X. Segunda Edición McGrawHill. 2006. 3. RODRIGUEZ, Luis Alfonso y otro. Adquisición y almacenamiento de datos de 12 bits. Electrónica y Computadores. Nro. 72. CEKIT. 4. NARANJO, John Jairo. Interface Serial RS-232. Electrónica y Computadores. CEKIT. 16 Ing. Fernando A. Urbano M.