Está en la página 1de 20

4.

3 PROGRAMACIÓN
DEL PUERTO SERIAL
Covarrubias Núñez Karen Lizeth
Cruz Marin Eligardo
Duran Ocampo Miguel Angel
Soberano Pereida Yanitzin Yareli
Interfaz
● Es el puerto (circuito físico) a través del que se envían o reciben señales desde
un sistema o subsistemas hacia otros.
● También se refiere a una zona o localización de la memoria de acceso aleatorio
(RAM) de la computadora que se asocia con un puerto físico o un canal de
comunicación, y que proporciona un espacio para el almacenamiento temporal
de la información que se va a transferir entre la localización de memoria y el
canal de comunicación.

Figura 1.1 cable Figura 1.2 Memoria Figura 1.1 cable


de conexión USB de conexión
Comunicación con la CPU
La interfaz de E/S es requerida cuando los dispositivos son ejecutados por el
procesador. La interfaz debe ser necesariamente lógica para interpretar la dirección
de los dispositivos generados por el procesador. Si se intercambian diferentes
formatos de datos, la interfaz debe ser capaz de convertir datos en serie a paralelo y
viceversa. Los dispositivos de E/S se comunican por interrupciones con el
procesador, si una interrupción es recibida, el procesador la atenderá con la rutina
de interrupción correspondiente a dicha interrupción.
PUERTO SERIAL
Un puerto serie o puerto en serie es una interfaz de comunicaciones de
datos digitales, frecuentemente utilizado por computadoras y periféricos,
donde la información es transmitida bit a bit.

Figura 2.1 pines de conector RS-232


HISTORIA
Se ha usado y sigue usándose para conectar las computadoras a
dispositivos como terminales o módems. Los ratones, teclados, y otros
periféricos también se conectaban de esta forma.
Otras interfaces como Ethernet, FireWire, y USB mandaban datos como
un flujo en serie

USB serie(Antes) Servidor de Ethernet de puerto serie(Actualidad)

versión transferencia Ventajas


✓ Mayor capacidad de
(1.0): 188 Kb/s ✓ Reducción de cableado
comunicación
Tabla 1.1 transferencia de USB serie Tabla 1.2 Ventajas de Servidor Ethernet de puerto serie
¿DÓNDE SE ENCUENTRA HOY EN DÍA?
En la mayoría de los periféricos en serie, la interfaz USB ha reemplazado al
puerto serie por ser más rápida. La mayor parte de las computadoras están
conectados a dispositivos externos a través de USB y, a menudo, ni siquiera
llegan a tener un puerto serie.

Antes Ahora

Figura 3.1 Puertos de computadoras con Figura 3.2 Puertos de computadoras con
puerto en serie puertos usb
¿DÓNDE SE ENCUENTRA HOY EN DÍA?
Los dispositivos de redes, como
routers y switches, a menudo
tienen puertos serie para
modificar su configuración. Los
puertos serie se usan
frecuentemente en estas áreas Figura 3.3 Switch cisco

porque son sencillos, baratos y


permiten la interoperabilidad
entre dispositivos.

Figura 3.3 Router cisco


RS-232
Es una interfaz que designa una norma para el intercambio de datos
binarios serie entre un DTE (Data Terminal Equipment, "Equipo Terminal
de Datos"), como por ejemplo una computadora, y un DCE (Data
Communication Equipment, "Equipo de Comunicación de Datos"), por
ejemplo un módem.

Figura 4.1
Figura 4.2
TRANSMISIÓN DE DATOS
Originalmente, los puertos seriales solo podían 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 comunicación pueda
efectuarse.

Figura 5.1
PUERTO SERIE ASINCRÓNICO
En este tipo de puerto se envía en primer lugar una señal inicial anterior
al primer bit de cada byte, carácter o palabra codificada. Una vez enviado
el código correspondiente, se envía inmediatamente una señal de parada
(stop) después de cada palabra codificada.

Se usa en la transmisión de códigos ASCII a través del puerto RS-232,


como la que se establece en las operaciones con teletipos.

Figura 6.1
PUERTOS SERIE MODERNOS
Puerto USB:
FireWire:

Figura 6.2

Figura 6.1
Puerto ATA:
TIPOS DE COMUNICACIÓN EN SERIE
▪ Símplex: En este caso el emisor y el receptor están perfectamente definidos y la
comunicación es unidireccional.
▪ Semi-dúplex: En este caso ambos extremos del sistema de comunicación
cumplen funciones de transmisor y receptor, y los datos se desplazan en ambos
sentidos pero no de manera simultánea.
▪ Dúplex: El sistema es similar al semi-dúplex, pero los datos se desplazan en
ambos sentidos simultáneamente. Para que sea posible ambos emisores poseen
diferentes frecuencias de transmisión o dos caminos de comunicación
separados.
Pines DB9
Número de clavija Nombre Designación

1 CD (Carrier Detect) Detector de transmisión

2 RXD (Receive Data) Recepción de datos

3 TXD (Transmit Data) Transmisión de datos

4 DTR (Data Terminal Ready) Terminal de datos listo

5 GND (Signal Ground) Señal de tierra

6 DSR (Data Set Ready) Ajuste de datos listo

7 RTS (Request To Send) Solicitud de envío

8 CTS (Clear To Send) Listo para enviar

9 RI (Ring Indicator) Indicador de llamada

Tabla 3
Pines DB25
Número de Pin Nombre
2 TXD: Transmitir datos
3 RXD: Recibir datos
4 RTS: Permiso para transmitir

5 CTS: Listo para enviar


6 DSR: Ajuste de datos listo
7 GND: Señal de tierra
8 CD: Detector de transmisión

20 DTR: Terminal de datos lista

22 RI: Indicador de llamada


Tabla 4
INT 14H
Se dispone de cuatro funciones diferentes dentro de Int 14H, que
permite acceder a los controladores de los puertos de comunicaciones
serie.
En lenguaje ensamblador, se puede acudir a la interrupción 14H de la
ROM-BIOS para configurar, leer, escribir o simplemente para conocer
el estado del puerto.

Servicio Descripción

00 Inicializar puerto serie


01 Enviar un dato
02 Recibir un dato
03 Obtener el estado del puerto
¿Cómo configurar la int 14?
Para configurar o inicializar el puerto serie, bastará con utilizar el
servicio 00 de la interrupción, colocando en el registro AL los
valores equivalentes a los parámetros, como se puede observar en
la figura 7. Con éste método es posible obtener frecuencias de
transmisión que van desde los 110 hasta los 9600 baudios.
Figura 7
¿Cómo configurar la int 14?
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
interrupción 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 través del servicio
03 de esta misma interrupción, y retorna en el registro AX el estado
del puerto.
Ejemplo
mov ah, función ;AH contiene un tipo de función
mov dx, puertonúmero ;DX selecciona el puerto de comunicaciones
;se cargan los demás registros
;con valores específicos de la función
int 14h ;llamar al ROM BIOS

Se conservan los registros de segmento, tales como BX, CX, DX, SI, DI y
BP. El registro AX se emplea para devolver resultados o status. Observe
que los números de puerto de comunicaciones que se seleccionan con
Int 14H comienzan en cero, aunque a nivel MS-DOS se numeran desde
uno (COM1, COM2, etc.).
Ejemplo didáctico
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:

mov ah,0 ;servicio 00 de INT 14h: inicializar puerto


mov al,83h ;configuración: 1200 baudios, no paridad,
;un bit de parada, 8 bits de datos
mov dx,00 ;Seleccionar puerto COM1
int 14 ;interrupción del BIOS