Documente Academic
Documente Profesional
Documente Cultură
6 SEMESTRE / Grupo B
La comparacin entre la transmisin en serie y en paralelo se puede explicar usando una analoga
con las carreteras: una carretera tradicional de un nico carril (en una carretera de ida y vuelta) por
cada sentido corresponde a la transmisin en serie, y una carretera autova con varios carriles por
sentido corresponde a la transmisin en paralelo, siendo los vehculos los bits que circulan por el
cable.
1
Originalmente, los puertos seriales slo podan enviar datos, no recibir, por lo que se desarrollaron
puertos bidireccionales (que son los que se encuentran en los equipos actuales). Por lo tanto, los
puertos seriales bidireccionales necesitan dos hilos para que la comunicacin pueda efectuarse. La
comunicacin serial se lleva a cabo asincrnicamente, es decir que no es necesaria una seal (o
reloj) de sincronizacin: los datos pueden enviarse en intervalos aleatorios. A su vez, el perifrico
debe poder distinguir los caracteres (un carcter tiene 8 bits de longitud) entre la sucesin de bits
que se est enviando. sta es la razn por la cual en este tipo de transmisin, cada carcter se
encuentra precedido por un bit de ARRANQUE y seguido por un bit de PARADA. Estos bits de
control, necesarios para la transmisin serial, desperdician un 20% del ancho de banda (cada 10 bits
enviados, 8 se utilizan para cifrar el carcter y 2 para la recepcin). Los puertos seriales, por lo
general, estn integrados a la placa madre, motivo por el cual los conectores que se hallan detrs
de la carcasa y se encuentran conectados a la placa madre mediante un cable, pueden utilizarse
para conectar un elemento exterior. Generalmente, los conectores seriales tienen 9 25 clavijas y
tienen la siguiente forma (conectores DB9 y DB25 respectivamente):
Un PC posee normalmente entre uno y cuatro puertos seriales. Puerto serie asincrnico A travs de
este tipo de puerto la comunicacin se establece usando un protocolo de transmisin asncrono. En
este caso, se enva en primer lugar una seal inicial anterior al primer bit de cada byte, carcter o
palabra codificada. Una vez enviado el cdigo correspondiente, se enva inmediatamente una seal
de stop despus de cada palabra codificada. La seal de inicio (start) sirve para preparar al
mecanismo de recepcin o receptor, la llegada y registro de un smbolo, mientras que la seal de
stop sirve para predisponer al mecanismo de recepcin para que tome un descanso y se prepare
para la recepcin del nuevo smbolo. La tpica transmisin start-stop es la que se usa en la
transmisin de cdigos ASCII a travs del puerto RS-232, como la que se establece en las
operaciones con teletipos.
El puerto serie RS-232 (tambin conocido como COM) es del tipo asincrnico, utiliza cableado simple
desde 3 hilos hasta 25 y conecta computadoras o microcontroladores a todo tipo de perifricos,
desde terminales a impresoras y mdems pasando por mouses. La interfaz entre el RS-232 y el
microprocesador generalmente se realiza mediante el chip UART 8250 (computadoras de 8 y 16 bits,
PC XT) o el 16550 (IBM Personal Computer/AT y posteriores). El RS-232 original tena un conector
2
tipo DB-25, sin embargo la mayora de dichos pines no se utilizaban, por lo que IBM estandariz con
su gama IBM Personal System/2 el uso del conector DB-9 (ya introducido en el AT) que se usaba,
de manera mayoritaria en computadoras. Sin embargo, a excepcin del mouse, el resto de perifricos
solan presentar el DB-25 La norma RS-422, similar al RS-232, es un estndar utilizado en el mbito
industrial. Puertos serie modernos Uno de los defectos de los puertos serie iniciales era su lentitud
en comparacin con los puertos paralelos -hablamos de 19.2 kbits por segundo- sin embargo, con
el paso del tiempo, estn apareciendo multitud de puertos serie de alta velocidad que los hacen muy
interesantes ya que presentan las ventajas del menor cableado y solucionan el problema de la
merma de velocidad usando un mayor apantallamiento, y ms barato, usando la tcnica del par
trenzado. Por ello, el puerto RS-232, e incluso multitud de puertos paralelos, se estn sustituyendo
remplazndose por los nuevos puertos serie como el USB, el FireWire o el Serial ATA. Tipos de
comunicacin en serie Simplex En este caso el emisor y el receptor estn perfectamente definidos y
la comunicacin es unidireccional. Este tipo de comunicaciones se emplean, usualmente, en redes
de radiodifusin, donde los receptores no necesitan enviar ningn tipo de dato al transmisor. Duplex,
half duplex o semi-duplex En este caso ambos extremos del sistema de comunicacin cumplen
funciones de transmisor y receptor y los datos se desplazan en ambos sentidos pero no de manera
simultnea. Este tipo de comunicacin se utiliza habitualmente en la interaccin entre terminales y
una computadora central. Full Duplex El sistema es similar al duplex, pero los datos se desplazan
en ambos sentidos simultneamente. Para que sea posible ambos emisores poseen diferentes
frecuencias de transmisin o dos caminos de comunicacin separados, mientras que la
comunicacin semi-duplex necesita normalmente uno solo. Para el intercambio de datos entre
computadores este tipo de comunicaciones son ms eficientes que las transmisiones semi-
dplex.letty.
Caractersticas tcnicas
Caractersticas del puerto serial COM
En el mbito de la electrnica comercial se le denomina como conector DB9 ("D-
subminiature type B, 9 pin"), esto es D-subminiatura tipo B, con 9 pines.
Se utilizaba principalmente para la conexin del ratn (Mouse), algunos tipos antiguos de
escneres y actualmente para dispositivos como PDAs ("Personal Digital Assistant")
asistentes personales digitales.
Cada puerto, permite conectar solamente 1 dispositivo.
Para conectar y desconectar los dispositivos, as como para que la computadora los
reconozca de manera correcta, es necesario apagar y reiniciar la computadora.
3
Terminales elctricas del puerto serial.
El puerto serial cuenta con 9 contactos tipo pin; se muestran las lneas elctricas y su descripcin
bsica.
4
Velocidad de transmisin del puerto serial COM
La forma de medir la velocidad de transmisin del puerto serial es en KiloBytes/segundo (KB/s):
Aplicaciones
Advanced Serial Port Terminal est especficamente desarrollada para establecer conexin con un
puerto serie y enviar/recibir datos en ese puerto. Nuestra aplicacin de terminal de puerto serie es
una utilidad imprescindible ya que puede enviar y recibir varios datos (cadenas ASCII, binario, octal
y hexadecimal), redirigir el flujo de entrada/salida de datos a un archive especfico, verificar y
solucionar problemas de configuracin del modem sin sobrecargar el puerto serie.
5
Para configurar o inicializar el puerto serie, bastar con utilizar el servicio 00 de la interrupcin,
colocando en el registro AL los valores equivalentes a los parmetros, como se puede observar en
la figura 2. Con ste mtodo es posible obtener frecuencias de transmisin que van desde los 110
hasta los 9600 baudios.
6
Para enviar un dato por el puerto serial, bastar con colocar en el registro AH el valor 01
correspondiente a este servicio y en el registro AL el dato a ser enviado, invocando de nuevo la
interrupcin 14H. La lectura de un dato que ha llegado al puerto se logra con el servicio 02, el cual
devuelve en el registro AL el dato. La lectura del estado del puerto se consigue a travs del servicio
03 de esta misma interrupcin, y retorna en el registro AX el estado del puerto, el cual contendr los
bits que se muestran en la figura 3.
Por ejemplo, podemos utilizar el lenguaje ensamblador para configurar el puerto serial para 1200
baudios, sin bit de paridad, sin bit de parada y 8 bits, realizando el siguiente programa:
Este programa (en donde todas las cantidades estn expresadas en hexadecimal) se puede tornar
ejecutable utilizando algunos de los ensambladores para PC, o utilizando el comando DEBUG del
DOS.
Otra forma de seleccionar los parmetros de la comunicacin y lograr sta, es mediante la
modificacin y consulta de los registros correspondientes al circuito integrado que maneja la
7
comunicacin serial: el UART 8250 o similar. Como se sabe, este circuito integrado puede ser
manejado como un puerto, en el cual es posible la escritura o lectura de sus estados.
Otra, exigencia, es que el nmero del puerto sobre el que se va a realizar la transferencia de datos
debe estar sealado por le registro DX, a excepcin de los casos en los cuales el nmero del puerto
es inferior a 255 (FFh), en cuyo caso la instruccin que lee o escribe puede sealar directamente el
puerto.
Ejemplo 1.
Conexin entre dos computadoras mediante el cable serial, una computadora se deja escuchando
mediante el hyperterminal (dejando la configuracin predeterminada) y la otra computadora es
donde se ejecuta el programa.
data segment
data ends
code segment
assume cs:code,ds:data,ss:pila
inicio:
mov AH,00; INICIALIZO PUERTO
mov AL, 11100111b ;paramertos de puerto POR DEFAULT
mov DX,00 ;puerto com1
INT 14h
8
MOV AL, 52; caracter a ser enviado
INT 14h
Ejemplo 2.
El siguiente es un cdigo empleado para establecer una comunicacin serial entre un computador y
un microcontrolador de la marca Motorola de referencia HC908GP32.
El condigo consiste en enviar caracteres desde teclado de un computador conectado por el puerto
serial hasta el microcontrolador, este a su vez tiene conectado por su puerto PTB un display de 7
segmentos de la siguiente manera:
Display de 7 segmentos Microcontrolador PC
El microcontrolador recibe los caracteres desde el PC si son numero desde 0 hasta 9 entonces los
muestra en el display de la contrario muestra la letra E indicando error.
El siguiente es el cdigo que se debe quemar en el microcontrolador explicado paso a paso.
9
MAIN: BSET 0, CONFIG1; de deshabilita el COP
; Se configura todo el sistema para establecer la comunicacin
MOV #$03, SCBR
BSET 6, SCC1
BSET 2, SCC2
BSET 3, SCC2
MOV #$FF, DDRB; configure todo el Puerto B como salida
INICIO: MOV #$00, PTB; apaga todo el puerto
LDHX #MSG; carga el mensaje INGRESE UN NUMERO
TX: LDA, X
CMP #$FF
BEQ PRINT
BRCLR TC, SCISR,*; Espera que se envi un dato al micro
STA SCDR
AIX #$01
BRA TX
PRINT: BSR DELAY
BRCLR SCRF, SCISR,*
LDA SCDR
CMP #$39
BGT ERROR
CMP #$30
BLO ERROR
SUB #$30
STA DATO
LDHX #TABLA; carga el nmero correspondiente en la tabla
TXA
ADD DATO
TAX
LDA , X
EOR #$80
STA PTB; enva el nmero correspondiente al display
BSR DELAY
BRA INICIO
ERROR:
MOV #$F9, PTB; enva la letra E al display
BSR DELAY; va a la subrutina para esperar un tiempo
10
BRA INICIO; vuelve al inicio del programa
; genera una rutina temporizadora con la variable VAR
DELAY: MOV #$00, CONT
SIGA: CLR VAR
LAZO: NOP
NOP
NOP
NOP
NOP
DEC VAR
BNE LAZO
DEC CONT
BNE SIGA
RTS
; enva un mensaje al computador INGRESE UN NUMERO
MSG: DB INGRESE UN NUMERO, $FF
TABLA: DB 3F; tabla de los nmero del 0 al 9
DB 06
DB 5B
DB 4F
DB 66
DB 6D
DB 7D
DB 07
DB 7F
DB 67
ORG RST
DW MAIN; regresa al comienzo del programa
END; termina el programa
11
Bibliografa
http://hgr.tripod.com/puertos_ensamblador.html
https://mteheran.wordpress.com/2008/08/18/programa-de-comunicacion-serial-en-assembler-para-
el-microntrolador-hc908gp32/
http://www.informaticamoderna.com/El_puerto_serial.htm
http://lomejorbueno.blogspot.mx/2012/10/arquitectura-de-puerto-serial.html
https://zonaemec.files.wordpress.com/2014/08/6_puertos-conexic3b3n.pdf
12