0% encontró este documento útil (0 votos)
24 vistas11 páginas

Puertos Seriey Paralelo

El documento describe los puertos seriales y paralelos, incluyendo sus registros y cómo acceder a ellos desde programas. También presenta ejemplos de código para configurar y usar estos puertos.

Cargado por

ALan
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
24 vistas11 páginas

Puertos Seriey Paralelo

El documento describe los puertos seriales y paralelos, incluyendo sus registros y cómo acceder a ellos desde programas. También presenta ejemplos de código para configurar y usar estos puertos.

Cargado por

ALan
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd

INTITUTO TECNOLOGICO SUPERIOR DE LERDO

Ingeniería en sistemas computacionales


Nombre: López Garza Alan
Num. De control: 192310649
Sección: 6X6A
Nombre del docente: Christian Álvarez Muñoz
Unidad 4
Actividad: Actividad 13. Puerto Serial y Paralelo (Sección A)
Materia: Lenguajes de interfaz
Fecha: 06/08/2022
 Investigar los registros relacionados con el manejo de puertos: paralelo (LPT1,
LPT2 y LPT3) y serial (COM1, COM2, COM3)

Puerto Serie
En el interior de puerto serie hay un chip para la entrada y salida de caracteres y para la
conversión de palabras de datos en las correspondientes señales del puerto serie: lo que se
denomina UART (Universal Asynchronus Receiver Transmitter-Emisor y Receptor Asíncrono
Universal; su abreviatura SIO (Serial Input/Output). Este chip lleva el nombre 8250. A
continuación, se detallan los tipos de UARTS (para PC s):

Tabla de registros
Programación
Cuando escribe un programa de comunicaciones, la comunicación entre
el software y el UART puede darse tanto en modo polling como en modo
interrupción. En modo polling es responsabilidad del software consultar
a través del Line Control Register el estado del UART a espacios de
tiempo regulares. Sólo así puede determinar si se ha recibido un nuevo
carácter o si el último carácter enviado se encuentra realmente en
camino. Es decir que se consulta primero el Line Status Register para
saber si hay algún carácter disponible en el RBR. Si es así, se lee el
carácter y a continuación se inicia el proceso de nuevo. Si todavía no
hay caracteres preparados en el buffer interno, el UART,
inmediatamente después de la lectura del carácter del RBR, activará de
nuevo el bit correspondiente del Line Status Register de modo que este
carácter sea automáticamente recogido en el próximo bucle.
Acceso a los registros
Son accesibles desde diferentes puertos que se orientan en la dirección
de base del puerto serie. Esta dirección de base puede, teóricamente
escogerse a voluntad, pero en la práctica:
NOMBRE Address
COM 1 3F8h
COM 2 2F8h
COM 3 3E8h
COM 4 2E8h

En la tabla se muestran los “Standard port addresses”. Ellos deberían


funcionar para la mayoría de las PC's.
Para tener la certeza de no pasar por alto al puerto serie, lo mejor es no
fijar las direcciones de puerto desde un principio en los programas y
consultar una de las cuatro variables del BIOS en las que se encuentran
las direcciones de base de los cuatro como máximo puertos serie que
puede soportar la BIOS, obteniéndose con seguridad la dirección actual
del puerto serie deseado. Si observamos los registros del UART existen
dos direcciones de puerto (puerto base +0 y puerto base +1) son
ocupadas por varios registros. Para poder diferenciar entre los distintos
registros al acceder al puerto correspondiente se utiliza el bit más
significativo en el Line Control Register.
Ejemplo
En el ejemplo se utiliza el lenguaje ensamblador para configurar el puerto serial
para 1200 baudios, sin su bit de paridad, sin bit de parada y 8 bits:

mov ah,0 ; Servicio 00 de INT 14h: inicializa el puerto

mov a1,83 ; Configuración: 1200 baudios, no paridad, sin bit de parada, 8 bits de

datosmov dx,00 ; Selecciona el puerto COM1

int 14 ; Interrupción del BIOS

mov ah,4c ; Servicio 4ch de INT 21h:

terminarint 21 ; Interrupción servicio del DOS

Puerto paralelo
Puertos de Entrada / Salida (E/S)
Los puertos de E/S se constituyen en el medio por el cual el
microprocesador de un computador se comunica con su entorno.
Existen puertos para cada interacción de la unidad de procesamiento
principal con sus dispositivos auxiliares. Así, existe un puerto de entrada
del teclado, un puerto de salida para el vídeo, un puerto de entrada para
el ratón, etc. El PC puede direccionar hasta 64K puertos de E/S. Cada
puerto se designa por un número. A continuación se listan las
direcciones en hexadecimal de los puertos más usuales de E/S.
Descripción general
Con la llegada de clonicos al mercado, se crea un controlador de
múltiples entradas y salidas (Multi I/O) donde se instalan controladores
de discos, puertos serie, puerto de juegos y el puerto paralelo. En la
actualidad el puerto paralelo se incluye comúnmente incluido en la placa
madre de la computadora (MotherBoard). No obstante, la conexión del
puerto con el mundo externo no ha sufrido modificaciones. Este puerto
utiliza un conector hembra DB25 en la computadora y un conector
especial macho llamado Centronic que tiene 36 pines.
Descripción del conector DB25 del PC y el conector DB25 del Centronic

El puerto paralelo está formado por 17 líneas de señales y 8 líneas de


tierra.
Las líneas de señales están formadas por tres grupos: 4 Líneas de
control 5 Líneas de estado 8 Líneas de datos En el diseño original las
líneas de control son usadas para la interface, control e intercambio de
mensajes desde el PC a la impresora.
Las líneas de estado son usadas para intercambio de mensajes,
indicadores de estado desde la impresora al PC (falta papel, impresora
ocupada, error en la impresora).
Las líneas de datos suministran los datos de impresión del PC hacia la
impresora y solamente en esa dirección. Las nuevas implementaciones
del puerto permiten una comunicación bidireccional mediante estas
líneas.
Cada una de estas líneas (control, estado, datos) puede ser
referenciada de modo independiente mediante un registro.
Los registros del puerto paralelo
Cada registro del puerto paralelo es dirigido mediante una dirección. El
puerto paralelo tiene tres registros: Registro de datos Registro de estado
Registro de control
En la tabla que se ve a continuación se muestra la relación que existe
entre las líneas físicas del conector del PC y los registros.
DB25 Señal Regis Tipo Activo Sentido
tro
1 Control C0- Salida Bajo Indirecto
0
2 Dato 0 D0 Salida Alto directo
3 Dato 1 D1 Salida Alto Directo
4 Dato 2 D2 Salida Alto Directo
5 Dato 3 D3 Salida Alto Directo
6 Dato 4 D4 Salida Alto Directo
7 Dato 5 D5 Salida Alto Directo
8 Dato 6 D6 Salida Alto Directo
9 Dato 7 D7 Salida Alto Directo
10 Estado S6+ Entrad Alto Directo
6 a
11 Estado S7- Entrad Bajo Invertido
7 a
12 Estado S5+ Entrad Alto Directo
5 a
13 Estado S4+ Entrad Alto Directo
4 a
14 Control C1- Salida Bajo Indirecto
1
15 Estado S3+ Entrad Alto Directo
3 a
16 Control C2+ Salida Alto Directo
2
17 Control C3- Salida Bajo Indirecto
3
18 - 25 Tierra

Ejemplo
Este programa se encarga de encender una determinada cantidad deLEDS
conectados al puerto paralelo en función del carácter ingresado por teclado:

STACK SEGMENT PARA STACK

'STACK'DB 256 DUP(0)

STACK ENDS

ASSUME CS:COD

,DS:CODCOD SEGMENT
MES1 DB 'Encender y Apagar LED con puerto

paralelo','$'MES2 DB 'Oprimir S para salir','$'

MES3 DB 'Fin del programa','$'

MENSAJE DW 0

MAIN PROC

FARMOV

AX,CS MOV

DS,AX

MOV MENSAJE,OFFSET MES1

CALL ESCRIBIR

MOV MENSAJE,OFFSET MES2

CALL ESCRIBIR

bucle:

MOV AH,1

MOV

DL,0FFH

INT 21H

CMP

AL,'S'JE

SALIR

MOV

DX,378H

OUT DX,AL
JMP bucle

MAIN

ENDP

ESCRIBIR PROC

NEARPUSH AX

PUSH DX

MOV

AH,09H

MOV

DX,MENSAJE

INT 21H

MOV

AH,06

MOV

DL,0DH

INT 21H

MOV

AH,06H

MOV

DL,0AH

INT 21H

POP DX

POP

AX

RET
ESCRIBIR ENDP

SALIR:

MOV
AH,06

MOV

DL,0DH

INT 21H

MOV

AH,06H

MOV

DL,0AH

INT 21H

MOV MENSAJE,OFFSET MES3

CALL ESCRIBIR

MOV

AH,4CH

INT 21H

COD

ENDS

END MAIN
Bibliografía
[Link]
del-%20puerto-serial/

[Link]
COM/[Link]

[Link]

También podría gustarte