Electrónica industrial y microcontroladores
El puerto com en las computadoras es como se ve en la imagen siguiente:
Comenzaremos por una descripción de lo que es el puerto serie en las computadoras
El estándar RS-232C
El puerto serie RS-232C, presente en todos los ordenadores actuales, es la forma mas comúnmente usada para realizar transmisiones de datos entre Ordenadores. El RS-232C es un estándar que constituye la tercera revisión de la antigua norma RS-232, propuesta por la EIA (Asociación de Industrias Electrónicas), realizándose posteriormente un versión internacional por el CCITT, conocida como V.24. Las diferencias entre ambas son mínimas, por lo que a veces se habla indistintamente de V.24 y de RS-232C (incluso sin el Sufijo "C"), refiriéndose siempre al mismo estándar.
Descripcion fisica de las conexiones del puerto serie.
Originalmente, el uso primario de un puerto serie era de conectar un modem a la computadora. La asignación de los pines refleja eso:
- Carrier Detect (Portador detector)- Determina si el modem está conectado a una línea telefónica en funcionamiento.
- Receive Data (RX) (Receptor)- La computadora recibe la información enviada por el modem.
- Transmit Data (TX) (Transmisor)- La computadora envía información al modem.
- Data Terminal Ready - La computadora le dice al modem que está listo para hablar.
- Signal Ground (Tierra)- Este pin es aterrizado.
- Data Set Ready - El Modem le dice a la computadora que esta listo para hablar.
- Request To Send =(RTS)(Solicitar para envió)- La computadora le pregunta al modem si esta puede enviar información.
- Clear To Send =(CTS)– El modem le dice a la computadora que ya le puede enviar información.
- Ring Indicator - Una vez que una llamada ha tomado lugar, la computadora reconoce por esta señal (enviada por el modem) que una llamada es detectada.
Para las comunicaciones los pines mas importantes son TXD(transmite datos) y RXD (recive datos), ademas de GND, los demás pines se pueden utilizar para establecer algún tipo de control sobre los dispositivos. Entonces los terminales que usaremos para comunicar nuestros dispocitivos seran TXD y RXD.
Niveles de tensión
Los voltajes enviados por los pines TX y RX pueden ser de 2 estados, Encendido o Apagado. Encendido (valor binario "1") significa que el pin está transmitiendo una señal entre -3 y -25 voltios, mientras que Apagado (valor binario de "0") quiere decir que está transmitiendo una señal entre +3 y +25 voltios.NIVEL | TTL | RS232c |
ALTO (1 LOGICO) | 5 V | de -3v a -25v |
BAJO (0 LOGICO) | 0 V | de 3v a 25v |
Para la adaptacion de niveles podemos usar varios esquemas pero nosotros por ahora solo usaremos el mas difundido que es el MAX232 que es un circuito que nos permite hacer una adaptacion rapida facil y eficiente, esto lo veremos mas adelante.
Protocolo estandar de comunicacion serie.
Velocidad de comunicacion (Los baudios)
El baudio es equivalente a expresar la cantidad de informacion por la linea en un segundo tambien conosido como BPS (Bits por Segundo).La velocidad está estandarizada según la norma RS-232C en baudios: 75, 110, 150, 300, 600, 1200, 2400, 4800, 9600, 19200.
Existen dos formas de comunicación serial: la sincrona y la asíncrona.
Comunicación sincrónica: además de una línea sobre la que se transfieren los datos, se necesita otra que contenga pulsos de reloj que indiquen cuando un dato es valido; la duración de el BIT esta determinada por la duración del pulso de sincronismo.
Comunicación asincrónica: los pulsos de reloj no son necesarios y se acude a otros mecanismos para realiza la lectura/escritura de los datos; la duración de cada BIT esta determinada por la velocidad con la cual se realiza la transferencia de datos.
Conformacion de un byte de datos transmitido
Dedifinicion de algunos terminos usados:
Bit start: Para empezar a transmitir datos, el transmisor coloca esta línea en bajo durante el tiempo de un BIT, lo cual se conoce como bit de arranque.
Bit de datos: luego del bit start los bits de datos son enviados al receptor empezando por el bit menos significativo (osea el primero de derecha a izquierda) terminando con el bit mas significativo.
Bit de parida: este bit suele no utilizarse y sirve para correccion de errores, se puede establecer paridad par o impar.
Bit stop: los bits de parada (Stop) que pueden se 1 ó 2, en los cuales la línea regresa a un estado alto. Al concluir esta operación el transmisor estará preparado para transmitir el siguiente dato.
La anterior figura muestra la estructura de un carácter que se transmite serialmente de forma asíncrona. Normalmente, cuando no se realiza ninguna transferencia de datos, la línea de el transmisor es pasiva ( idle ) y permanece en un estado alto. Para empezar a transmitir datos, el transmisor coloca esta línea en bajo durante el tiempo de un BIT, lo cual se conoce como bit de arranque ( start BIT ) y a continuación, empieza a transmitir con el mismo intervalo de tiempo los bits correspondientes al dato que pueden se 7 u 8 bits ). Empezando por el menos significativo (LSB), y terminando con el mas significativo (MSB). Al finalizar se agrega el bit de paridad (Parity), si es que esta activada esta opción, y los bits de parada (Stop) que pueden se 1 ó 2, en los cuales la línea regresa a un estado alto. Al concluir esta operación el transmisor estará preparado para transmitir el siguiente dato.
El receptor no esta sincronizado con el transmisor y desconoce cuando va a recibir los datos. La transición de alto a bajo de la línea del transmisor activa el receptor y este genera un conteo de tiempo de tal manera que realiza una lectura de la línea medio BIT después de el evento; si la lectura realizada es un estado alto, asume que la transición ocurrida fue ocasionada por ruido en la línea; si por el contrario, la lectura es un estado bajo, considera como valida la transición y empieza a realizar lecturas secuenciales a intervalos de un BIT hasta conformar el dato trasmitido.
El receptor puede tomar el BIT de paridad para determinar la existencia o no de errores y realizar las acciones correspondientes al igual que los bits de parada para situaciones similares.
Lógicamente, tanto el transmisor como el receptor deberán tener los mismos parámetros de velocidad, paridad, numero de bits del dato transmitido y bits de parada.
Lógicamente, tanto el transmisor como el receptor deberán tener los mismos parámetros de velocidad, paridad, numero de bits del dato transmitido y bits de parada.
Para la comunicacion con microcontroladores usaremos la transmicion asíncrona.
Control del flujo de datos:Para evitar pérdidas de datos, el receptor tiene que poder detener la transmisión de datos, si no se pueden procesar más datos. Este llamado Handshake puede realizarse de dos maneras:
- Handshake de Software:
El receptor envía signos especiales al transmisor para el control del flujo de datos. Está muy divulgado el Handshake XON/XOFF, con el que se usan los signos ASCII 11H y 13H. - Handshake de Hardware:
El receptor dirige el flujo de datos a través del nivel de líneas especiales de Handshake
Un aspecto importante de la comunicación serial es el concepto de control de flujo. Esta es la habilidad de un dispositivo de decirle a otro que pare de enviar datos por un tiempo. Los comandos Request to send (RTS), Clear To Send(CTS), Data Terminal Ready(DTR) y Data Set Ready(DSR), son usados para permitir el control de flujo.
Con este control de flujo, el modem puede parar el flujo de datos de la computadora antes de que agote el buffer del modem. La computadora está enviando constantemente una señal de Petición de Envió (RTS) y verificando por una señal en el pin Libre para enviar (CTS). Si no hay una respuesta por este pin, la computadora para de enviar información, esperando hasta que le llegue la señal CTS para resumir. Esto permite que el modem mantenga un flujo de datos corriendo finamente.
Software para el puerto serie. (Programa Mikroterminal)
Para todos los ejemplos expresados en este tutorial vamos a usar este programa que he desarrollado expecialmente para el puerto serie. Este programa tambien trabaja 485-Full duplex
Cable usado para el puerto serie.
Este cable puede ser adquirido en tiendas de electrónica, y es conocido como cable serie o de comunicación serie en Colombia, en otras regiones puede tener otro nombre.
Como armar un cable de comunicacion serie.
Para hacerlo necesitaras dos conectores DB9 uno macho y el otro hembra, la hembra ira directamente al conector ubicado en el PC y el macho se conectara al prototipo de trabajo. Para hacer la coneccion basta con unir los terminales uno a uno, el 1-1, 2-2, ... y asi, los mas importantes para la comunicacion232
Prueba del puerto serie
Es importante determinar el buen funcionamiento del puerto serie para estar seguros de que funciona.Prueba de comunicacion TX-RX, en esta prueba vamos a conectar los pines del puerto 2 y 3 juntos respectivamente, luego de esto activaremos el programa y prosedemos a escribir en la seccion de texto blanca del programa mikroterminal, debemos recordar ejecutar el programa y extablecer la conexion al puerto usado, luego presionamos el boton Send y deberemos ver los datos que enviamos apareser en la parte negra del programa mikroterminal.
El MAX232
Es un integrado especialmente diseñado para la comunicacion con el puerto serie, nos permite una comunicacion excelente y libre de ruidos, con un alcanze hasta los 100 metros sin errores. También hay formas de conectar el puerto serie sin el integrado adaptador pero eso lo trataremos mas adelante en este mismo post.
Descarga la hoja de datos directamente del fabricante aqui.
Descarga la hoja de datos directamente del fabricante aqui.
A continuación podemos ver una las conexiones de este circuito integrado:
EL circuito que hay que armar para lograr el correcto funcionamiento es el siguiente:
En esta imagen podemos ver como conectar el puerto serie del PC al MAX232 usando el cable serie.
Nota: tema en construcción
Si usted tiene una publicación impresa y desea publicar este articulo puede solicitar una copia detallada enviándome un correo y certificando la propiedad de esta publicación.
Necesita ayuda con su proyecto?
Vea tambien en: electrónica industrial y desarrollo de circuitos
Autor.
Ingeniero:
Mariano Rocha
email: electroIngenia.2011@gmail.com
Barranquilla/Colombia
Necesita ayuda con su proyecto?
Vea tambien en: electrónica industrial y desarrollo de circuitos
Autor.
Ingeniero:
Mariano Rocha
email: electroIngenia.2011@gmail.com
Barranquilla/Colombia
Los comentarios estan habilitados para que deje sus inquietudes y sugerencias












2 comentarios:
Disculapa en si para que ocupo un puerto COM?
Disculapa en si para que ocupo un puerto COM?
R. Para comunicarte con el microcontrolador desde el computador
Publicar un comentario en la entrada
Para consultas dirijase directamente a contacto.