Clase 12: Comunicación Serial Asíncrona UART-RS232.

Slides:



Advertisements
Presentaciones similares
Capítulo I Gestión de E/S 1.- Gestión de E/S 2.- Hardware de E/S 3.- Software de E/S.
Advertisements

PRESENTACION DE SISTEMAS TELEMATICOS
RS-232 EIA Recommended Standard number 232
Puerto Serie: La norma RS-232C
Control del Enlace de Datos
PROTOCOLOS Y LA INTERFAZ DE COMUNICACIÓN DE DATOS Tema IV REPÚBLICA BOLIVARIANA DE VENEZUELA UNIVERSIDAD NACIONAL EXPERIMENTAL POLITÉCNICA ANTONIO JOSÉ
Telecomunicaciones Calificación Final. Primer parcial 30%
Protocolos & Transmisión de Datos
RS-232 / RS-485 Introducción RS-232. Características RS-232.
Hardware.
MODULO DE LINEAS DE TRANSMISION
INTERFAZ DE COMUNICACIONES DEL uC PIC 18F8520 USART
“PROGRAMACIÓN GRÁFICA PARA INSTRUMENTACIÓN VIRTUAL”
Diagrama de Bloques del Sistema de Adquisición.
MICROCONTROLADORES AVANZADOS
COMUNICACIÓN SERIAL Javier Garcia Ramos.
Transmisión Asíncrona
Programación básica de la interfase RS232 C
Puertas Seriales La Puerta RS 232 C. © Cesar Guisado La Puerta Serial La puerta serial es mas dificil de conectar que la puerta paralela. En la.
Semana 4 - periferico.
Vista General del Funcionamiento del Computador y sus Interconexiones
CPU “Microprocesador de datos” Bus “ Transporte de los datos”
Tema 2: Estructura y componentes de una Computadora
Registros y Contadores
ISDN y X.25 son protocolos de enlace de datos más antiguos que en la actualidad se utilizan con menor frecuencia. Sin embargo, ISDN se sigue incluyendo.
2da. Parte Capítulos 5-12: Transmisión de Paquetes
1 Universidad Surcolombiana Tecnologia en desarrollo de software Introduccion a la tecnologia “ BUS Y PUERTO” Por : Holman Alexis Robayo Garcia.
Comunicación Serie.
INTRODUCCIÓN A LAS COMUNICACIONES DE DATOS José Estay A.
FUNDAMENTOS DE PROGRAMACIÓN
Maquinas digitales Puertos.  Retardo de propagación  Atenuación  Efecto Skin  Interferencia  CrossTalk  Señal de referencia o tierra  Simétricos.
BUS DE DATOS.
Transmisión Serial de Datos en Sistemas de Instrumentos Digitales Ing. Juan Vizcaya LABORATORIO DE INSTRUMENTACION Y CONTROL U.N.E.T.
el transmisor y el receptor están sincronizados con el mismo reloj. El receptor recibe continuamente (incluso hasta cuando no hay transmisión de bits)
Conexión entre dos computadoras.  Datos: son hechos que describen sucesos y entidades. No tienen ninguna información. Puede significar un numero, una.
COMUNICACIÓN DE DATOS DIGITALES
INTRODUCCIÓN A LAS COMUNICACIONES DE DATOS José Estay A.
MICROCONTROLADORES NOCIONES BÁSICAS. ¿QUÉ ES UN MICROCONTROLADOR? MICROCONTROLADOR = MICROPROCESADOR + MEMORIA + PERIFERICOS.
¿Qué unidades conforman el procesador?

Comunicación Punto a Punto : Es aquella en la cuál sobre un canal de comunicaciones se establece el envío de datos sólo entre un emisor y receptor. Debe.
 En computación es un conjunto de líneas de señal que el microprocesador o CPU utilizan para intercambiar datos con otros componentes como teclados,
Modulator/Demodulator
“Organización y Arquitectura de Computadores” William Stallings
Componentes del Hardware
Sesión 11: - Comparador, Captura y PWM. 2009/1 Circuitos Digitales III 2010/1 Circuitos Digitales III 2010/1 Circuitos Digitales III 2010/1 Sistemas Digitales.
Sesión 10: Conversión Análoga a Digital
Sesión 08: Interrupciones - IRQ. 2009/1 Circuitos Digitales III 2010/1 Circuitos Digitales III 2010/1 Circuitos Digitales III 2010/1 Sistemas Digitales.
Comunicaciones asíncronas locales RS 232. mayo de 2005Cesar Guisado Introducción Debido a que los computadores son dispositivos digitales, utilizan.
TARJETAS DE RED.
Clase 14: Memoria EEPROM.
Clase 13: Protocolo de Comunicación I 2 C. 2009/1 Circuitos Digitales III 2010/1 Circuitos Digitales III 2010/1 Circuitos Digitales III 2010/1 Circuitos.
Sesión 6: Repaso LCD - Keyboard. 2009/1 Circuitos Digitales III 2010/1 Circuitos Digitales III 2010/1 Circuitos Digitales III 2010/1Universidad Santo.
Sesión 07: Interrupciones. 2009/1 Circuitos Digitales III 2010/1 Circuitos Digitales III 2010/1 Circuitos Digitales III 2010/1 Sistemas Digitales II Universidad.
X.25.
Modelo OSI Surgimiento del Modelo OSI ¿Que es el Modelo OSI?
ANGIE MARCELA FRANCO BETANCURT
Br. Hugo Volcanes Br. Katiusca Díaz.  Control de Enlace de Datos  Control de Flujo  Detección de Errores  Comprobación de Paridad  Código Hamming.
Puertos externos.
INTEGRANTES: ONEIDA OSORIO VILLA, JUAN CAMILO SÁNCHEZ BAENA, JOANNA SÁNCHEZ, LUISA VILLA, JIMMY MORALES, BRIAM ZAMBRANO.
MODEM Modulator/Demodulator. El por qué de los MODEMS El sistema telefónico análogo sigue siendo la principal facilidad utilizada para comunicación de.
Dispositivos que componen una red.
MODOS DE TRANSMISION Pucallpa 15 de Enero del 2009.
Sistemas de Comunicación Avanzados Profesor: Héctor Abarca A. Sistemas de Comunicación de Datos II. Héctor Abarca A.
Comunicación SimplexHalf DúplexFull Dúplex Se realiza en un solo sentido Se realiza en ambos sentidos ambos sentidos simultáneamente DISPOSITIVOS Y MEDIOS.
Unidad 1. Características y operación de puertos estándar.
Módulo Serial Asicrónico SCI (Serial Communications Interface Module)
BUSES DE DATOS.
RS-232 / RS-485 Introducción RS-232. Características RS-232.
RS-232 / RS-485 Introducción RS-232. Características RS-232. Estructura de un carácter. Señales más usadas RS-232. Introducción RS-485. Características.
Transcripción de la presentación:

Clase 12: Comunicación Serial Asíncrona UART-RS232.

Antes de Comenzar Conociendo la CPU y sus Periféricos… CPU MEMORIA ADC 11010110 ADC E/S SIM 1 1 1 IRQ SCI TIMER

Agenda para la clase 1 Protocolo UART y RS-232 generalidades de este protocolo de comunicación serial 2 Módulo SCI Características de este módulo para comunicación serial en un PIC 3 Manipulación del SCI Transmisión y recepción de caracteres mediante este módulo 4 Ejemplo Comunicación PC – MCU empleando el protocolo serial UART y RS-232

A continuación… Protocolo UART y RS-232 Protocolo UART y RS-232 Módulo SCI de los PIC Manipulación del SCI Ejemplo comunicación PC - MCU

Comunicación Serial CPU ¿Cómo se transmite el dato 10011100 serialmente? Esquemas de Comunicación o Especificación Eléctrica: UART. (Protocolo) RS-232. (Eléctrica) RS-485. (Eléctrica) Universal Serial Bus (USB). (Ambos) Serial ATA. (Ambos) PCI Express. (Ambos) Un valor puede estar representado por n bits (con n > 1). La CPU normalmente transfiere bits a la memoria de manera paralela. De igual forma lo hace con los periféricos. Un periférico particular puede disponer de un canal de comunicación con una sola línea. En el anterior esquema, solo un bit puede ser transmitido al tiempo. CPU UART Memoria MUNDO EXTERIOR La CPU lo toma de memoria La CPU se lo pasa a la UART El dato se transmite serialmente. 8 10011100 10011100 1 1 1 1

Protocolo UART CPU MPU UART P1 UART P2 P5 P3 P4 Universal Asynchronous Receiver Transmitter Pieza de hardware que convierte datos paralelos en una secuencia de bits y viceversa. Circuito integrado usado normalmente en los computadores para transferir datos entre CPU y periféricos. Ahora, las CPUs modernas incluyen una UART propia como periférico interno. Los MCUs también incluyen esta unidad (o parte de ella). Anteriormente Ahora CPU UART MPU P1 UART P2 P5 P3 P4

Protocolo UART Trama o Frame en la transmisión: Si no hay transmisión, la línea permanece a ‘1’ lógico. Debe satisfacer que la trama de n bits junto con P tenga un número par de ‘1’s. Para iniciar una transmisión, la línea debe cambiar de ‘1’ a ‘0’ lógico La transmisión de otra trama puede comenzar justo después del STOP. Indica, finalización de la trama. Duración entre 1 y 2 bits. Debe satisfacer que la trama de n bits junto con P tenga un número impar de ‘1’s. Trama o Frame en la transmisión: Línea en espera (Stand-By). Bit de Start. 5 a 8 Bits de datos. Paridad: Par, Impar, sin Paridad. Bit de Stop. LSB MSB START ‘1’ B0 B1 B2 B3 B4 B5 B6 B7 P ‘0’ START STOP tBIT Velocidad = bps = 1/tbit

Protocolo UART Velocidad de transferencia de datos Bits por Segundo. Incorrectamente se usa el término de baudios. 9600bps, 19200bps, etc. Un símbolo se puede representar con un solo bit para este caso. Un símbolo se puede representar con dos bits para este caso. 1 seg Baudios = 8 BPS = 8 1 seg Baudios = 8 BPS = 16

Protocolo UART Funcionamiento UART 10011100 10011100 BUFFER TX UART BUFFER RX Registro Desplazamiento Tx Registro Desplazamiento Rx 10011100 P 1 L 1 H 1 1 L 1 L L 1 L 1 L P 1 L 1 L L 1 L 1 L H P 1 H P 1 H P 1 H P 1 H P 1 L H P 1 H P 1 H P H P 1 H P 1 H 1 1 L 1 1 P H

Norma RS-232 Usado para conectar DTEs y DCEs Especificación Eléctrica. DTE: Equipo Terminal de Datos. DCE: Equipo de Comunicación de Datos. PC y Modem. DTE DTE MEDIO COMUNICACIÓN DCE DCE

La misma TRAMA de la UART, teniendo en cuenta los niveles RS-232 Norma RS-232 Trama basada en UART. Representación de ‘1’ y ‘0’ Un ‘1’ se denomina Marca (Mark) Representado por un voltaje entre -15V y -3V. Un ‘0’ se denomina Espacio (Space) Representado por un voltaje entre 3V y 15V. Si no se transmiten datos, la señal debe permanecer en Marca: RS-232 Idle State Se utilizan los bits de Start y Stop como sincronización. La misma TRAMA de la UART, teniendo en cuenta los niveles RS-232 START ‘0’ = 3V y 15V B0 B1 B2 B3 B4 B5 B6 B7 P ‘1’ = -15V y -3V START STOP

Norma RS-232 Conexión DTE (PC) – DCE (MODEM): DTE DCE Ambos equipos se alistan para la comunicación. Establecimiento de Conexión. El otro equipo se apodera del canal. DTE no va a Tx más… DTR: Equipo Terminal Listo. DSR: Equipo de Comunicación Listo. MODEM comprueba que el medio esté disponible El MODEM está recibiendo una llamada… Señal de RING… DTE quiere Tx… Tx Rx DTR DSR RI RTS CTS CD DTE DCE MEDIO COMUNICACIÓN Portadora detectada MODEM informa a DTE que puede Tx…

Norma RS-232 Conexión DTE – DTE: Full Fuplex. DTE Transmisión, Recepción. Establecimiento de Conexión. Control de Flujo. Tx Rx DTR DSR RI RTS CTS DCD DTE

A continuación… Protocolo UART y RS-232 Módulo SCI de losPIC Manipulación del SCI Ejemplo comunicación PC - MCU

Módulo SCI de un PIC MCU DTE SCI SCI RELOJ TX/RX PROG Módulo SCI como UART dentro del MCU. Tasas de Baudios Programable Transmisión Recepción Para algunos MCUs, se puede elegir como fuente de reloj, el bus interno o la frecuencia externa MCU SCI DTE Registro TXREG para Tx y RCREG para Rx Se pueden escoger las tasas de velocidad SCI RELOJ PROG Tx Rx TX/RX BUS CONFIG Comunicación Full Dúplex, una línea para Tx y otra para Rx EXT

Módulo SCI de un PIC El nombre genérico de los pines de E/S es: Rx (Recepción de Datos). Tx (Transmisión de Datos). Las líneas de E/S están compartidas con pines de los puertos: RC7/RxD (PIC16F887) RC6/TxD (PIC16F887) Al habilitar la Tx/Rx, los pines TxD/RxD se convierten en pines del módulo SCI.

Módulo SCI de un PIC Los registros asociados al módulo SCI son: SPBRG: Generador del ratio de baudios. TXSTA: Estado de transmisión y control. RCSTA: Estado de recepción y control. TXREG: Registro de datos de transmisión. RCREG: Registro de datos de recepción. PIR1: Flag de interrupción. PIE1: Habilitación de la interrupción.

Módulo SCI de un PIC Formato de Transmisión: 8 Bit de Datos. START B0 B1 B2 B3 B4 B5 B6 B7 P STOP START B0 B1 B2 B3 B4 B5 B6 B7 STOP B8 P

A continuación… Protocolo UART y RS-232 Módulo SCI de los PIC Manipulación del SCI Manipulación del SCI Ejemplo comunicación PC - MCU

Manipulación del SCI Configuración genérica del UART: #USE RS232 (opciones) Esta directiva permite configurar varios parámetros del UART: Velocidad de transmisión Pines utilizados Bit de paridad Modos de operación Tiempos

Manipulación del SCI Estas opciones se pueden modificar en cualquier parte del programa, pero siempre después de haber definido la directiva #USE DELAY Esta directiva habilita el uso de funciones tales como: GETCH PUTCHAR PRINTF

Manipulación del SCI Ejemplos: #use delay (clock=4000000) OPCIÓN DESCRIPCIÓN BAUD = x Velocidad de Baudios XMIT = pin Pin de transmisión RCV = pin Pin de recepción RESTART_WDT Provoca que la función GETC( ) borre el WDT si espera un carácter. PARITY = x Donde x es N, E, O. BITS = x Donde x es 5-9 STOP = x Número de bits de stop (por defecto 1) Ejemplos: #use delay (clock=4000000) #use rs232(BAUD=9600, XMIT=PIN_C6, RCV=PIN_C7, BITS=8) #use rs232(BAUD=19200, XMIT=PIN_C6, RCV=PIN_C7)

Manipulación del SCI Configuración de la Velocidad Tx/Rx: Es la misma tanto para Transmisión como Recepción Para una frecuencia de 4MHz y una rata de transmisión de 9600 ¿Cuánto sería el error el la velocidad de transmisión?

Manipulación del SCI Configuración del UART: setup_uart(baud); baud es una constante que define la velocidad. 1 enciende el USART 0 apaga el UART. Con cualquier valor de velocidad, el USART se enciende.

Transmisión Transmisión de datos: putc(data); putchar(data); Data es un carácter de 8 bits. Esta función envía un carácter mediante el pin XMIT. La directiva #USE RS232 debe situarse siempre antes de utilizar esta función.

Transmisión Transmisión cadenas de caracteres constantes: puts (string); string es una cadena de caracteres constante o matriz de caracteres terminada con un \0. La función puts() manda los caracteres de la cadena, uno a uno, a través del bus RS-232 utilizando la función putc(); Al terminar la cadena envía: RETURN(13)

Transmisión Transmisión cadenas de caracteres y variables: printf(fname,cstring,values); fname especifica la función a utilizar para escribir la cadena en el módulo indicado. Para escribir en el bus RS-232 se utiliza la función putc (funcion por defecto). cstring es una cadena de caracteres o matriz de caracteres terminada con un \0. values son los valores a incluir en la cadena. Estos de envían de acuerdo al formato selecionado: %c %u %s…

Recepción Recepción de datos: value = getc(); value = getc(h); value = getchar(); values es un carácter de 8 bits. Estas funciones esperan recibir un carácter por la línea RS-232 y devuelve

Recepción Para evitar esperas en la recepción se puede utilizar las interrupciones: #INT_RDA enable_interrupts(INT_RDA); La interrupción ocurre cuando existe un valor en buffer de recepción.

A continuación… Protocolo UART y RS-232 Módulo SCI de los PIC Manipulación del SCI Ejemplo comunicación PC - MCU Ejemplo comunicación PC - MCU

Ejemplos Desarrollar un programa que (1): Imprima mensajes en la ventana. Realice eco de los caracteres escritos en el HyperTerminal. Desarrollar un programa que (2): Imprima mensajes en la ventana Un menú que permita al usuario ingresar su nombre, apellido y edad. Además debe poder imprimir la información suministrada.

Fin de la clase 12