Comunicacion serial pic 16f887

Comunicacion serial pic 16f887

código c de comunicación serie uart

En este tutorial estudiaremos el componente de comunicación USART (Universal Synchronous Asynchronous Receiver Transmitter) ubicado dentro del PIC. Es un componente de comunicación universal (Síncrono/Asíncrono), que puede ser utilizado como transmisor o como receptor. Veremos:

Mostraremos cómo configurar USART para permitir la comunicación entre PIC a PIC o entre PIC a un ordenador personal. Comenzaremos con la definición de los conceptos de medios. Hay dos opciones a diferenciar cuando se habla de transmisión de información en las líneas de transmisión:

Esto significa que el emisor y el receptor están sincronizados entre sí por la misma frecuencia de reloj. La frecuencia de reloj puede transmitirse junto con la información, mientras que está codificada en la propia información, o en muchos casos hay un cable adicional para el reloj.

Cuando se utiliza la comunicación asíncrona, el transmisor y el receptor se abstienen de transmitir largas secuencias de bits porque no hay una sincronización completa entre el transmisor, que envía los datos, y el receptor, que los recibe.

ejemplos de comunicación en serie del pic18f

Los microcontroladores PIC, obviamente, pueden hacer algo más que encender los LEDs o leer los estados de los botones. Los microcontroladores también pueden comunicarse con otro microcontrolador o con otros dispositivos como sensores, tarjetas de memoria, etc. A menudo la comunicación se realiza en serie, donde los bits de datos se envían de uno en uno.

El artículo sobre la comunicación en serie de los microcontroladores proporciona más información sobre este método de comunicación.  En este artículo, veremos cómo implementar la comunicación en serie con PICs tanto en lenguaje ensamblador como en XC8.

Aunque puedes implementar las comunicaciones serie a través de «bit-banging», es decir, poniendo un pin alto o bajo en intervalos de tiempo específicos (también conocido como software serie), usar el módulo hardware USART es un enfoque mucho más fiable y fácil.

El software serie ofrece la ventaja de asignar pines de transmisión y recepción a cualquier pin de salida. Esto es útil cuando te quedas sin pines y necesitas comunicarte con múltiples dispositivos. En cambio, la USART por hardware utiliza exclusivamente los pines RC6 (TX) y RC7 (RX).

pic16f877a ejemplo de interrupción uart

3.8 Módulos de comunicación serie El microcontrolador PIC16F887 dispone de varios módulos de comunicación serie independientes y cada uno de ellos puede ser configurado para operar en varios modos diferentes, lo que los hace insustituibles en muchas situaciones. Recuerda lo que te aconsejamos sobre los módulos CCP, pues lo mismo se aplica aquí. No te agobies con detalles sobre el funcionamiento de todos ellos, sólo selecciona uno y aprende sólo lo que realmente necesitas.

El módulo EUSART (Enhanced Universal Synchronous Asynchronous Receiver Transmitter) es una unidad periférica de comunicación de E/S en serie. También se conoce como Interfaz de Comunicaciones Serie (SCI). Contiene todos los generadores de reloj, registros de desplazamiento y búferes de datos necesarios para realizar una transferencia de datos en serie independientemente de la ejecución del programa principal. Como su nombre indica, además de utilizar el reloj para la sincronización, este módulo también puede establecer una conexión asíncrona, lo que lo hace único para algunas de las aplicaciones. Por ejemplo, en caso de que sea difícil o imposible proporcionar canales especiales para el reloj y la transferencia de datos (por ejemplo, control remoto por radio o infrarrojos), el módulo EUSART es definitivamente la mejor solución posible.

ejemplo de pic uart

En este tutorial aprendemos a habilitar la comunicación UART con el microcontrolador PIC y cómo transferir datos hacia y desde el ordenador. Hasta ahora, hemos cubierto todos los módulos básicos como ADC, temporizadores, PWM y también hemos aprendido a interconectar LCDs y pantallas de 7 segmentos.    Ahora, vamos a equiparnos con una nueva herramienta de comunicación llamada UART que se utiliza ampliamente en la mayoría de los proyectos de microcontroladores. Revisa aquí nuestros tutoriales completos de microcontroladores PIC usando MPLAB y XC8.

Aquí hemos utilizado PIC16F877A MCU, que tiene un módulo llamado «Addressable Universal Synchronous Asynchronous Receiver and Transmitter» conocido como USART.    USART es un sistema de comunicación de dos hilos en el que los datos fluyen en serie. USART es también una comunicación full-duplex, lo que significa que puede enviar y recibir datos al mismo tiempo lo que puede ser usado para comunicarse con dispositivos periféricos, como terminales CRT y ordenadores personales.

También existen dos modos diferentes, el de 8 bits y el de 9 bits, en este tutorial configuraremos el módulo USART para que funcione en modo asíncrono con el sistema de comunicación de 8 bits, ya que es el tipo de comunicación más utilizado. Al ser asíncrona no necesita enviar señal de reloj junto con las señales de datos. La UART utiliza dos líneas de datos para enviar (Tx) y recibir (Rx) datos. La tierra de ambos dispositivos también debe hacerse común. Este tipo de comunicación no comparte un reloj común, por lo que una tierra común es muy importante para que el sistema funcione.

Entradas relacionadas

Esta web utiliza cookies propias para su correcto funcionamiento. Al hacer clic en el botón Aceptar, acepta el uso de estas tecnologías y el procesamiento de tus datos para estos propósitos. Más información
Privacidad