Casa / Ajuste / Puerto de comunicación de hardware. Asignación de pines del puerto COM (RS232). Puertos internos de una computadora personal

Puerto de comunicación de hardware. Asignación de pines del puerto COM (RS232). Puertos internos de una computadora personal

Descripción de la interfaz RS-232, el formato de los conectores utilizados y el propósito de los pines, designaciones de señales, protocolo de intercambio de datos.

descripción general

La interfaz RS-232, oficialmente llamada "EIA/TIA-232-E" pero más conocida como la interfaz "puerto COM", fue una vez una de las interfaces más comunes en la tecnología informática. Todavía se encuentra en las computadoras de escritorio, a pesar de la llegada de interfaces más rápidas e inteligentes, como USB y FireWare. Desde el punto de vista de los radioaficionados, sus ventajas incluyen una baja velocidad mínima y la facilidad de implementar el protocolo en un dispositivo casero.

La interfaz física está implementada por uno de los dos tipos de conectores: DB-9M o DB-25M, este último prácticamente nunca se encuentra en las computadoras que se producen actualmente.

Asignación de pines del conector de 9 pines


Tipo DB-9M macho de 9 pines
Numeración de pines en el lado del pin
La dirección de las señales es relativa al host (computadora)
Contacto Señal Dirección Descripción
1 CD Entrada Portador detectado
2 RXD Entrada Datos recibidos
3 TXD Salida Datos transferidos
4 DTR Salida Anfitrión listo
5 TIERRA - cable común
6 DSR Entrada Dispositivo listo
7 estrategia en tiempo real Salida El anfitrión está listo para transferir
8 CTS Entrada Dispositivo listo para recibir
9 RHODE ISLAND. Entrada Llamada detectada

Asignación de pines del conector de 25 pines

Contacto Señal Dirección Descripción
1 BLINDAJE - Pantalla
2 TXD Salida Datos transferidos
3 RXD Entrada Datos recibidos
4 estrategia en tiempo real Salida El anfitrión está listo para transferir
5 CTS Entrada Dispositivo listo para recibir
6 DSR Entrada Dispositivo listo
7 TIERRA - cable común
8 CD Entrada Portador detectado
9 - - Reservar
10 - - Reservar
11 - - No utilizado
12 SCD Entrada Portador #2 detectado
13 SCTS Entrada Dispositivo listo para recibir #2
Contacto Señal Dirección Descripción
14 STXD Salida Datos transferidos #2
15 CVR Entrada Temporización del transmisor
16 SRXD Entrada Recibir datos #2
17 RCC Entrada Sincronización del receptor
18 LLOOP Salida bucle local
19 SRTS Salida Anfitrión listo para transferir #2
20 DTR Salida Anfitrión listo
21 RLOOP Salida Bucle exterior
22 RHODE ISLAND. Entrada Llamada detectada
23 RRD Entrada Tasa de datos determinada
24 TRCO Salida Temporización del transmisor externo
25 PRUEBA Entrada Modo de prueba

En las tablas se puede ver que la interfaz de 25 pines se distingue por la presencia de un segundo canal de transmisión y recepción completo (señales marcadas como "#2"), así como numerosas señales de control y control adicionales. Sin embargo, a menudo, a pesar de la presencia de un conector "ancho" en la computadora, las señales adicionales simplemente no están conectadas.

Características electricas

Niveles lógicos del transmisor:"0" - de +5 a +15 voltios, "1" - de -5 a -15 voltios.

Niveles lógicos del receptor:"0" - por encima de +3 voltios, "1" - por debajo de -3 voltios.

La impedancia de entrada del receptor no es inferior a 3 kOhm.

Estas características están definidas por el estándar como mínimas, garantizando la compatibilidad de los dispositivos, sin embargo, las características reales suelen ser mucho mejores, lo que permite, por un lado, alimentar dispositivos de baja potencia desde el puerto (por ejemplo, numerosos cables de datos de fabricación propia). por celulares), y por otro lado, aplicar a la entrada del puerto invertido Nivel TTL en lugar de señal bipolar.

Descripción de las principales señales de la interfaz

CD- El dispositivo establece esta señal cuando detecta una portadora en la señal recibida. Por lo general, esta señal la utilizan los módems, que de esta manera informan al host que han detectado un módem en funcionamiento en el otro extremo de la línea.

RXD- Línea que recibe datos del dispositivo host. Se describe en detalle en la sección "Protocolo de intercambio de datos".

TXD- Enlace de datos del host al dispositivo. Se describe en detalle en la sección "Protocolo de intercambio de datos".

DTR- El host establece esta señal cuando está listo para intercambiar datos. De hecho, la señal se establece cuando se abre el puerto. programa de comunicacion y permanece en este estado mientras el puerto está abierto.

DSR- El dispositivo establece esta señal cuando está encendido y listo para comunicarse con el host. Esta y las señales anteriores (DTR) deben configurarse para la comunicación.

estrategia en tiempo real- El host establece esta señal antes de comenzar a transmitir datos al dispositivo y también indica que está listo para recibir datos del dispositivo. Se utiliza para el control de comunicación de hardware.

CTS- El dispositivo afirma esta señal en respuesta a la configuración previa del host (RTS) cuando está listo para recibir datos (por ejemplo, cuando los datos anteriores enviados por el host han sido transmitidos por el módem en la línea o hay espacio libre en el tampón intermedio).

RHODE ISLAND.- El dispositivo (generalmente un módem) establece esta señal cuando recibe una llamada de un sistema remoto, por ejemplo, cuando recibe llamada telefónica si el módem está configurado para recibir llamadas.

Protocolo de comunicación

En el protocolo RS-232, existen dos métodos de control de intercambio de datos: hardware y software, así como dos modos de transmisión: síncrono y asíncrono. El protocolo permite utilizar cualquiera de los métodos de control junto con cualquier modo de transmisión. También permite el funcionamiento sin control de flujo, lo que significa que el host y el dispositivo siempre están listos para recibir datos cuando se establece la conexión (se establecen las señales DTR y DSR).

método de control de hardware implementado utilizando las señales RTS y CTS. Para transmitir datos, el host (computadora) configura la señal RTS y espera a que el dispositivo configure la señal CTS, y luego comienza a transmitir datos siempre que la señal CTS esté configurada. El host verifica la señal CTS justo antes del inicio de la transmisión del siguiente byte, por lo que el byte que ya comenzó a transmitirse se transmitirá por completo independientemente del valor de CTS. En el modo de comunicación semidúplex (dispositivo y host transmiten datos a su vez, en modo full-duplex pueden hacerlo al mismo tiempo), la eliminación de la señal RTS por parte del host significa que cambia al modo de recepción.

Método de control de software consiste en la transmisión por el lado receptor de los caracteres especiales para detener (código de carácter 0x13, denominado XOFF) y reanudar (código de carácter 0x11, denominado XON) la transmisión. Al recibir estos caracteres, el lado transmisor debe detener la transmisión o reanudarla en consecuencia (si hay datos esperando para ser transmitidos). Este método es más simple en términos de implementación de hardware, sin embargo, proporciona una respuesta más lenta y, en consecuencia, requiere una notificación previa al transmisor cuando el espacio libre en el búfer de recepción disminuye hasta cierto límite.

Modo de transferencia síncrona implica un intercambio continuo de datos, cuando los bits se suceden sin pausas adicionales a una velocidad determinada. Este modo por puerto COM No soportado.

Modo de Transferencia Asíncrona es que cada byte de datos (y el bit de paridad, si está presente) está "envuelto" con una secuencia de reloj de un bit de inicio cero y uno o más bits de parada. El diagrama de flujo de datos en modo asíncrono se muestra en la figura.

Uno de los posibles algoritmos de operación del receptor. próximo:

  1. Espere el nivel "0" de la señal de recepción (RXD en el caso de un host, TXD en el caso de un dispositivo).
  2. Cuente la mitad de la duración del bit y compruebe que el nivel de la señal sigue siendo "0"
  3. Cuente la duración total del bit y escriba el nivel de señal actual en el bit de datos menos significativo (bit 0)
  4. Repita el punto anterior para todos los demás bits de datos
  5. Cuente la duración total de bits y el nivel de señal actual que se usará para verificar la recepción correcta usando paridad (ver a continuación)
  6. Cuente la duración total del bit y asegúrese de que el nivel de señal actual sea "1".

En informática, un puerto serie es una interfaz de comunicación serie a través de la cual se transmite o emite información a la vez. Durante la mayor parte de la historia de las computadoras personales, los datos se transfirieron a través de puertos seriales a dispositivos como módems, terminales y varios periféricos.

Aunque las interfaces como Ethernet, FireWire y USB envían datos como un flujo en serie, el término "puerto en serie" generalmente identifica Hardware, más o menos compatible con el estándar RS-232, diseñado para interactuar con un módem o dispositivo de comunicación similar.

Las computadoras modernas sin puertos seriales pueden requerir convertidores seriales para garantizar la compatibilidad con los dispositivos seriales RS-232. Los puertos seriales todavía se usan en aplicaciones tales como sistemas de automatización industrial, instrumentos científicos, sistemas de punto de venta y algunos productos industriales y de consumo. Las computadoras del servidor pueden usar el puerto serie como una consola de administración o diagnóstico. Los equipos de red (como enrutadores y conmutadores) suelen utilizar la consola serie para la configuración. Los puertos seriales continúan usándose en estas áreas porque son simples, baratos y las características de su consola están altamente estandarizadas y generalizadas.

Asignación de pines del puerto COM (RS232)

hay 2 variedades puerto de comunicaciones a, un conector antiguo de 25 pines y un conector más nuevo de 9 pines que lo reemplazó.

A continuación se muestra un diagrama de un conector RS232 estándar típico de 9 pines con conectores, este tipo de conector también se denomina conector DB9.

  1. Detección de portadora (DCD).
  2. Recibir datos (RXD).
  3. Transmisión de datos (TXD).
  4. Receptor listo para intercambiar (DTR).
  5. Tierra (GND).
  6. Fuente lista para intercambiar (DSR).
  7. Solicitud de envío (RTS).
  8. Listo para Transferir (CTS).
  9. Señal de llamada (RI).

Información del pin del adaptador de puerto serie RJ-45 a DB-9 para el conmutador

El puerto de la consola es una interfaz serie RS-232 que utiliza un conector RJ-45 para conectarse a un dispositivo de control, como una PC o una computadora portátil. Si su computadora portátil o PC no tiene un pin de conector DB-9 y desea conectar su computadora portátil o PC al conmutador, use una combinación de adaptador RJ-45 y DB-9.

DB-9RJ-45
Obtener datos2 3
Transferencia de datos3 6
Disposición a intercambiar4 7
Tierra5 5
Tierra5 4
Disposición a intercambiar6 2
Solicitud de transferencia7 8
Listo para transferir8 1

Colores de alambre:

1 negro
2 marrones
3 rojo
4 naranja
5 amarillo
6 verde
7 azul
8 Gris (o blanco)

Saludos amigos. Seguimos estudiando el bloque del sistema. Hoy hablaré sobre los puertos de la computadora. ¿Lo que es? Con el rápido desarrollo de las tecnologías de Internet, el concepto de "puerto", "socket" se escucha ampliamente. Esta es otra rama, y ​​no hablaremos de eso hoy. El tema de este artículo contiene información sobre conectores (o puertos) puramente "de hierro", "reales" que están diseñados para conectarse varios dispositivos a la unidad del sistema.

El hardware también está mejorando y con cada generación descubrimos nuevos tipos de conectores (o puertos) en las unidades del sistema compradas. Varios de los llamados dispositivos periféricos están conectados a ellos. Unidad del sistema + monitor = computadora. Todo lo que se conecta a ellos (impresoras, escáneres, programadores, tarjetas de video, monitores, etc.) son periféricos.

Hay muchos puertos en la computadora. están en tarjeta madre bloque del sistema y son conectores (la mayoría en la parte trasera). Algunos de los conectores también se muestran en el panel frontal y también están conectados a la placa base.

También se puede instalar adicionalmente dispositivos adicionales a través de ranuras de expansión especiales. Estos dispositivos incluyen tarjetas gráficas discretas, tarjetas de red, adaptadores wifi, concentradores USB, lectores de tarjetas, cerraduras electrónicas, tarjetas de video y mucho más.

La presencia de ranuras de expansión le permite ensamblar una computadora de forma independiente como un diseñador, según sus preferencias, sin gastar un día más. Porque los desarrolladores han estandarizado durante mucho tiempo el equipo fabricado. Si es necesario, puede actualizarlo. Esta es la razón principal por la que las computadoras compatibles con IBM-PC (como se llama a dicha plataforma) alguna vez fueron expulsadas del mercado Apple Macintosh.

Las unidades de su sistema originalmente no eran separables y el equipo no era reemplazable. Es imposible actualizar un dispositivo de este tipo, y se reduce la capacidad de mantenimiento de dicho dispositivo.

Lista corta de puertos de computadora

Debe poder distinguir visualmente los conectores entre sí. El fabricante no siempre indica sus nombres. Dado que los conectores están agrupados en el panel posterior de la unidad del sistema, comenzaremos con él. Todos los puertos tienen un nombre en inglés, no hay nada que hacer. Brevemente se pueden dividir:

  1. Puertos seriales;
  2. Puerto paralelo;
  3. Puertos para computadora y mouse;
  4. puertos USB;
  5. puertos SCSI;
  6. puertos de vídeo;
  7. Conectores de cable de red;
  8. conectores de audio;
  9. Lectores de tarjetas;

Algunas de estas variedades ya se han hundido en el olvido y ya no se pueden encontrar en las placas base modernas. Otras variedades, por el contrario, amplían su funcionalidad y hay placas base para gourmets, amantes del audio o video de buena calidad.


Dichas placas también pueden admitir formatos de audio o video de terceros (Sony, Philips), y luego puede encontrar el conector apropiado en dicha computadora. Los puertos de audio y video pueden presumir de una variedad especial en la actualidad.

Puertos de computadora para conectar periféricos

Puerto serial— ya está obsoleto hoy. Pero para los especialistas que reparan dispositivos electrónicos, son valiosos. Inicialmente, este puerto se usaba para conectar un módem. La tasa de transferencia de datos es típica: de 110 a 115200 bits por segundo. Por lo general, había dos de ellos con conectores. DB 9 tipo de papá:

La velocidad es suficiente para que el programador flashee el microcontrolador o teléfono móvil. O para el intercambio de datos con una fuente de alimentación ininterrumpida. Estos puertos se llaman COM1 y COM2.

Puerto paralelo- familiar para muchos, porque estaba destinado principalmente a conectar una impresora. También una especie casi extinta. También se utilizó para conectar llaves de seguridad de hardware.


El conector se utiliza para la conexión. DB25 como "mamá". La tasa de transferencia de datos es baja, pero es suficiente para un programador o una impresora láser antigua. La mayoría de las computadoras más antiguas siempre tenían dos puertos serie y uno paralelo.

Puertos para teclado y mouse familiar para todos los usuarios. EN computadoras modernas son morados y verdes. Los enchufes del ratón y del teclado son del mismo color. Es difícil de confundir. Los conectores son de seis pines (mini-Din) tipo "madre". Fueron inventados en Alemania y se convirtió en el estándar. Otro nombre para IBM/PC2

desde que se utilizaron por primera vez en la ya mencionada plataforma IBM PC. Si los conectores se mezclan al conectar, los dispositivos no funcionarán. Una ventaja definitiva: ahorre puertos USB. Menos: asegúrese de reiniciar la computadora si está conectada incorrectamente. Por cierto, también una especie en extinción. En muchas computadoras modernas, este puerto queda solo uno, y al mismo tiempo está pintado de verde púrpura. Solo puede conectarle un dispositivo, ya sea un mouse o un teclado.

puertos USB Bus serie universal, ( Bus serie universal). Desde 1998 ha ido desplazando a otros puertos; Incluso en radios de automóviles y videocámaras encontrará este conector hoy. En las primeras generaciones, la tasa de transferencia de datos era de unos 12 Mb/s. - alucinante para aquellos tiempos. Hoy usamos USB 3, que tiene una velocidad de 5 Gbps

Estos puertos no han cambiado externamente. La computadora tiene conectores tipo A. El conector de cualquier dispositivo conectado se denomina "B". Tiene cuatro contactos, dos para corriente, dos para transmisión de datos. En consecuencia, hay el doble de pines en los puertos USB 3.0.

puertos SCSI(Interfaz de sistemas informáticos pequeños) . Una cosa bastante específica y rara entre nosotros; Creo que no lo encontrarás en el extranjero con un usuario común. Creo que los dispositivos con tales interfaces se fabricaron por encargo, para uso corporativo. Este - interfaz de red para el intercambio de datos, a velocidades de hasta 160 Mbps.


Una vez me encontré con una computadora portátil traída de Estados Unidos en 1999 por Dell. Tenía uno de estos puertos multi-pin. Estaba ubicado de tal manera que solo podía usarse colocando la computadora portátil sobre la mesa. El conector en sí está cerrado con cortinas sobre resortes. En consecuencia, en algún lugar de América también había mesas en las que está integrado este conector ... Lo traes, lo pones sobre la mesa y se conecta a la red corporativa.

Las variedades de la interfaz ya nos son familiares. db-25, así como 50 de alta densidad, 68 pines de alta densidad, SCA de 80 pines, Centronics. También era posible conectar discos duros a esta interfaz. El responsable de la conexión es una placa especial: el adaptador de host.


Puertos de video. Tampoco puedes confundirlos con otros. El puerto de video estándar es un conector VGA tipo D hembra azul de 15 pines. Se utiliza para conectar un monitor. Este es un estándar antiguo adoptado en 1987. No todas las placas base lo tienen. Si no lo tiene "a bordo", puede encontrarlo en la parte inferior de la unidad del sistema. Una tarjeta de video está instalada en la ranura de expansión:

Si decide instalar una tarjeta de video además de la que ya tiene ("a bordo"), esta última ya no funcionará. Esto esta bien. El monitor solo funcionará cuando esté conectado al instalado.

En las tarjetas de video modernas, el puerto VGA ya se ha vuelto difícil de encontrar; están siendo reemplazados por otra variedad: DVI. En una placa base de transición, se ve así:

Muy a menudo hay casos en que falla una tarjeta de video VGA. Después de comprar uno nuevo, resulta que solo tiene puertos DVI, en este caso, debe comprar un adaptador e instalarlo en el conector DVI:

Preste atención al tipo de adaptador. El hecho es que los conectores DVI también son diferentes: las nuevas y costosas tarjetas de video tienen puertos DVI-D o DVI-I. Los adaptadores no son intercambiables, consulta este punto con el vendedor.

En este caso, no necesitará comprar un monitor nuevo. Los nuevos monitores hasta ahora también vienen con dos tipos de conectores: VGA y DVI.

puerto hdmi¿Dónde ahora sin él en el siglo XXI? La interfaz multimedia está diseñada para transmitir video y audio de alta definición con protección contra copias. Reemplaza simultáneamente tanto el video anterior como algunos puertos de audio (SCART, VGA, YPbPr, RCA, S-Video.). Probablemente esta interfaz eventualmente reemplazará todo lo demás. Se puede encontrar en cualquier equipo digital, desde una cámara hasta una computadora (o computadora portátil).

El tamaño es comparable a un puerto USB y la velocidad de transferencia de datos es enorme en comparación con la anterior: hasta 48 Gbps. La transmisión de datos se realiza a través de un cable con buena protección contra interferencias. El cable se puede conectar a una computadora portátil y a un televisor y ver videos. La longitud del cable no debe exceder los 10 metros, de lo contrario se necesita un amplificador/repetidor de señal.

Pro tomas de audio No hablaré en detalle. Todo se ve casi igual que en un reproductor de DVD doméstico cuando se trata de algo especial. Un ejemplo de esto es el conector SPDiF, que podría instalarse en una ranura de expansión:

Estándar de audio de SONY y PHILIPS, esta tarjeta se conecta a la placa base mediante un conector al conector correspondiente. Los conectores estándar para conectar un micrófono, parlantes, auriculares se ven así:

Si desea audio HD, es posible que deba conectar el adaptador adecuado aquí. Lea la documentación de su placa base:

puertos de red Es imposible prescindir de ellos en nuestro tiempo. Obtenemos Internet a través de una interfaz de red por cable o por radio. Las placas base tienen un conector incorporado estándar RJ45 para conectar un cable de internet:

En las computadoras más antiguas, el estándar de velocidad era de 100 Mbps, las tarjetas de red modernas dan 1000 Mbps. Si una tarjeta de red no es suficiente para usted, puede comprar una adicional e insertarla en la ranura de expansión:

Esta tarjeta es adecuada para la ranura PCI. Hay opciones más pequeñas para PCI-express:

Especifique la tasa de transferencia de datos de una tarjeta en particular al comprar. Para amantes redes inalámbricas También hay una amplia selección de adaptadores Wi-Fi:

También se pueden conectar a ranuras de expansión PCI o PCI Express. Sin embargo, si no desea hurgar en la unidad del sistema, también puede comprar un USB, una variante de dicha tarjeta:

Lo insertas en el puerto e ingresas la contraseña WIFI. Y tienes otro periférico conectado. Muchos modelos de impresoras domésticas también tienen un adaptador WIi-Fi y, con esta configuración, puede imprimir de forma inalámbrica. Afortunadamente, hoy existe una amplia variedad y tarjetas de red e impresoras.

¿Cómo deshabilitar los puertos USB al apagar la computadora?

Finalmente, te diré cómo resolver un problema. Tengo un auricular con micrófono para grabar videos y chatear por Skype. A los chinos les encanta empujar donde sea necesario y no necesitan LED para la belleza. Cuando la computadora está apagada, la luz de fondo aún permanece encendida, ya que está alimentada por el puerto USB.

El teclado también brilla, lo que no es muy conveniente por la noche, aunque no está mal (si escribes en la oscuridad). Para desconectar la alimentación de los puertos de forma permanente, intente escribir la combinación de teclas Ganar+R y en la línea "Ejecutar" pegue el comando powercfg /h apagado.

Entonces necesitas apagar la computadora. Lo más probable es que los síntomas desaparezcan. Este comando desactiva el modo de suspensión y la computadora se desconecta por completo. Puede buscar en el panel de control la configuración de energía en el "Plan de energía", pero hay modelos de placas donde esta configuración se desactiva a través del BIOS. Y en los más avanzados, esta función no está deshabilitada ni oculta muy profundamente. Se supone que es muy conveniente cargar dispositivos por la noche.

En casos difíciles, la documentación de la placa base puede ayudar. Encuentre el puente deseado (puente) y apague manualmente la alimentación. Pero es demasiado difícil. Y la forma más fácil es comprar un concentrador USB con interruptores y conectarle los periféricos necesarios. Y no sufras. ¡Adiós, hasta que nos volvamos a encontrar!

Un puerto COM, o puerto serie, es una interfaz serie bidireccional diseñada para intercambiar datos de bytes. Al principio, este puerto se usaba para conectar el terminal, y luego para el módem y el mouse. Ahora es costumbre usarlo para conectar la fuente, así como para comunicarse con el procesamiento de los sistemas informáticos integrados.

Uso

Entonces, antes de hablar con más detalle sobre qué es un puerto COM, debemos mirar al pasado para comprender su significado. Literalmente, hace 15 años, se utilizó un método para conectar dispositivos a una computadora mediante un conector estándar especial ubicado en el panel posterior de la unidad del sistema mediante un cable serie RS-232 especial. Este método tiene muchas desventajas. Dicho cable, según los estándares modernos, proporciona una tasa de transferencia de datos extremadamente baja: alrededor de cien kilobits por segundo. Además de cuando se realizó la conexión física de los conectores, fue necesario apagar el equipo, y ellos mismos se unieron entre sí con tornillos que garantizaban la confiabilidad, mientras que sus dimensiones diferían en un tamaño considerable.

Un poco de historia

El puerto COM en las computadoras de esa época tradicionalmente se numeraba 1 o 2, ya que generalmente no había más de dos. Se pueden instalar puertos adicionales si es necesario. Cuando el usuario ha configurado software, se requería no confundir e instalar correctamente exactamente aquel al que se proporcionó la conexión equipo necesario. Cada puerto COM requería la configuración de velocidad correcta, así como una serie de otros parámetros misteriosos que solo conocía un círculo reducido de especialistas. Para que la conexión del equipo fuera exitosa, todos los parámetros necesarios tenían que ser encontrados en algún lugar o seleccionados experimentalmente, ya que en este caso no había una configuración automática. Además, la conexión a través del puerto COM permitía la conexión de cualquier software con equipos externos arbitrarios, incluso completamente incompatibles, lo que provocaba una gran cantidad de errores durante el proceso de configuración.

Modernidad

Ahora la conexión a través del puerto COM se reemplaza completamente por más metodo moderno, que no requiere conocimientos especiales para su implementación, es decir, a través de un puerto USB. Este método carece de todas las desventajas mencionadas anteriormente. Sin embargo, los estándares modernos para la compatibilidad de conectar todo tipo de equipos GPS y software muy heterogéneo se formaron hace bastante tiempo en torno al concepto de puertos COM, que se han vuelto arcaicos en este momento.

Esto se debe a que inicialmente casi cualquier equipo, incluido el GPS, era externo, y su conexión con la computadora se realizaba a través de un cable serial conectado a uno de los puertos del hardware. Durante el proceso de configuración, el usuario debía seleccionar correctamente el número de puerto y la velocidad de transmisión de datos a través de él. En ese momento, surgió el estándar principal para transmitir datos desde un receptor GPS a un programa, que ahora se llama NMEA-0183. De hecho, este estándar requiere que todos los desarrolladores, incluso del hardware y software más moderno, intercambien datos a través de puertos COM. Y todo esto en las condiciones de que en las computadoras modernas, así como en las PDA, el estándar USB ha sido durante mucho tiempo el principal. Y una característica más es que recientemente los receptores GPS se han instalado cada vez más directamente dentro de la carcasa del dispositivo, es decir, no hay un cable de conexión entre este y el dispositivo principal.

Puertos COM virtuales

Se inventó una salida, a saber, se desarrollaron puertos COM "virtuales". Resulta que el dispositivo interno de la PDA, por ejemplo, un receptor GPS, está simulado en software en forma de puerto COM, mientras que en términos de hardware no lo es. Al mismo tiempo, un programa que está diseñado para interactuar a través de dicho estándar no hace ninguna diferencia en cómo se implementa. Aquí se permite la presencia de una simulación virtual, y no la presencia obligatoria de una implementación hardware. Por lo tanto, es posible garantizar la compatibilidad de los programas GPS antiguos con equipos modernos.

Cambios realizados

Al mismo tiempo, la gestión del puerto COM no ha cambiado significativamente. El usuario, a la manera antigua, debe realizar configuraciones complejas casi manualmente. Sin embargo, un puerto COM moderno ya no es ese dispositivo voluminoso ubicado en el panel posterior de la unidad del sistema, sino un dispositivo completamente diferente. Y aquí el punto es que desde el punto de vista del software, todas sus implementaciones parecen sin rostro, es decir, no hay diferencia entre puertos virtuales y reales. Para el software, los puertos se diferencian únicamente por los números que les asignan los fabricantes de PDA de forma completamente aleatoria. Por ejemplo, el receptor ASUS suele estar ubicado en COM5, mientras que PocketLOOX 560 muestra el receptor en COM8. Resulta que un programa que quiere recibir datos de un receptor GPS inicialmente no tiene ninguna información confiable sobre el número condicional, bajo el cual aparece el puerto, que se prescribe apropiado para el receptor en este PDA.

¿Cómo funciona todo?

Dado que entre todos los puertos COM disponibles, puede búsqueda automática adecuado, el procedimiento para una encuesta de este tipo es bastante poco fiable y bastante engorroso. Esto se debe al hecho de que los dispositivos que se muestran en el sistema como puertos COM pueden ser bastante diversos y no tienen nada que ver con el GPS, pueden responder de manera completamente impredecible a dicha encuesta. Por ejemplo, en una PDA hay puertos asociados con un módem celular interno, con USB, con un puerto de infrarrojos, así como con otros elementos. Acceder a ellos mediante un programa diseñado para funcionar con un dispositivo específico puede provocar una reacción completamente impredecible, así como varios fallos de funcionamiento, lo que a menudo hace que la PDA se bloquee. Es por eso que un intento de abrir un puerto COM puede dar lugar a situaciones inesperadas, hasta encender Bluetooth o Y puede haber casos más incomprensibles.

Operación del puerto COM

Para los puertos COM, se utiliza como base un chip transceptor universal asíncrono. Este microcircuito existe en varias variedades: Intel 16550A, 16550, 16450, 8250. Para cada puerto COM, contiene registros de receptor y transmisor de datos, así como una serie de registros de control a los que se puede acceder a través de programas BIOS, Windows y MS DOS. En Últimas Versiones microchip tiene un conjunto de búferes para el almacenamiento temporal de datos transmitidos y recibidos. Gracias a esta posibilidad, es posible interrumpir el trabajo del procesador central con menos frecuencia, así como coordinar la velocidad de transmisión de datos.

parámetros principales

El dispositivo de puerto COM asume las siguientes características:

La dirección base del puerto de entrada y salida de información;

números de interrupción de hardware;

El tamaño de un bloque de información;

La velocidad a la que se transmiten los datos;

Modo de detección de honestidad;

método de gestión del flujo de información;

El número de bits de parada.

¿Cómo verificar el puerto COM de la computadora? ¿A qué prestar atención?

Como se mencionó anteriormente, este tipo de puerto es una interfaz bidireccional para una vía serial a nivel de bit. Una característica distintiva en comparación con el puerto paralelo aquí es la transferencia de datos bit a bit. La anatomía de un puerto COM es tal que no es el único en una computadora que utiliza un método de transferencia de datos en serie. Por ejemplo, las interfaces como Ethernet o USB también usan un principio similar, pero sucedió históricamente que es costumbre llamar al puerto de la serie estándar RS232.

Muy a menudo, se requiere abrir un puerto COM para reparar y diagnosticar una computadora, mientras que también se debe verificar su operatividad. Es muy fácil quemar un elemento. La mayoría de las veces, esto sucede debido a la falla del usuario, que desconecta el dispositivo incorrectamente, sacando el conector mientras la interfaz está conectada. La forma más fácil de verificar si la interfaz funciona es conectarle un mouse. Sin embargo, es muy difícil obtener una imagen completa, ya que el manipulador usa solo la mitad de las líneas de señal de las ocho disponibles. Solo el uso de un enchufe y programa especial permitirá una verificación de rendimiento. Para estos fines, ya existe un software especialmente desarrollado.

A veces hay que solucionar el problema de la comunicación dispositivo electronico con una computadora, ya sea solo intercambio de datos o control remoto. Este artículo describe cómo se puede hacer esto usando el puerto serie. Su principal ventaja es que el software estándar Interfaz de Windows(API) permite controlar directamente las líneas de salida, dando control directo sobre ellas, y tiene la función de esperar algún evento asociado al puerto COM. Además, el estándar RS-232, según el cual se realizan los puertos COM, permite conectar y desconectar cables durante el funcionamiento del dispositivo (conexión en caliente).

Descripción

Puerto COM (puerto serie)– una interfaz bidireccional que transmite datos en forma serial (bit a bit) utilizando el protocolo RS-232. Este es un protocolo bastante común que se usa para conectar un dispositivo (por ejemplo, una computadora) con otros a través de cables de hasta 30 m de largo. Los niveles de las señales lógicas aquí difieren de las estándar: el nivel de una unidad lógica es de +5 a +15 V, el nivel de un cero lógico es de -5 a -15 V, lo que requiere conversiones de circuitos adicionales, pero proporciona un buen ruido. inmunidad.

Considere un conector de 9 pines (DB-9M). A continuación se muestra su pinout:

Número de salida Nombre Naturaleza de la señal Señal
1 DCD Aporte detección de portador de datos
2 RxD Día libre dato transmitido
3 TxD Aporte Recibir datos
4 DTR Día libre terminal de datos listo
5 TIERRA - Tierra
6 DSR Aporte conjunto de datos listo
7 estrategia en tiempo real Día libre Peticion para enviar
8 CTS Aporte Borrar para enviar
9 RHODE ISLAND. Aporte indicador de anillo

Sobre todo, nos interesarán los pines 2 (transmisión de datos), 3 (recepción de datos) y 5 (tierra). Este es el mínimo establecido para la posibilidad de comunicación bidireccional entre dispositivos.

No me detendré en la descripción del protocolo en detalle. Para esto, hay GOST, etc. Por lo tanto, iremos más allá y hablaremos sobre cómo controlar a esta bestia.

Solicitud

Como ya se mencionó, los niveles de LAN RS-232 son diferentes de los niveles TTL estándar. Por lo tanto, necesitamos convertir de alguna manera los valores de voltaje. Esos. haga 5V desde +15V y 0V desde -15V (y viceversa). Una forma (y probablemente la más fácil) es usar un chip MAX232 especial. Es fácil de entender y puede convertir dos señales lógicas al mismo tiempo.

A continuación se muestra un diagrama de su inclusión:


No creo que deba haber ninguna dificultad. Esta es una de las opciones para usar este chip: transferir datos de un microcontrolador a una computadora y viceversa. La señal transmitida va a las piernas T X IN por un lado y por R X EN por el otro. Las señales de entrada se toman de T X FUERA y R X SALIDA respectivamente.

Programación

Primero, hablemos de la programación de puertos a bajo nivel. Eso será más correcto. Pasé muchos nervios lidiando con esta interfaz, hasta que comencé a profundizar en el principio de su funcionamiento a un nivel más bajo que una simple transferencia de caracteres. Si esto está claro, entonces con los idiomas. nivel alto no habrá problemas.

A continuación se muestran las direcciones de los puertos COM con los que tendremos que trabajar:

Nombre del puerto La dirección IRQ
COM 1 3F8h 4
COM 2 2F8h 3
COM 3 3E8h 4
COM 4 2E8h 3

Pueden diferir. Puede establecer los valores en la configuración del BIOS. Estas son direcciones base. De ellos también dependerán las direcciones de los registros encargados de la operación de los puertos:

La dirección DLAB Leer escribir Abreviatura Registrar nombre
+ 0 =0 Escribir Búfer de retención del transmisor
=0 leer Búfer del receptor
=1 Leer escribir Byte bajo del pestillo del divisor
+ 1 =0 Leer escribir IER Registro de activación de interrupción
=1 Leer escribir Byte alto del pestillo del divisor
+ 2 - leer IIR Registro de identificación de interrupciones
- Escribir FCR Registro de control FIFO
+ 3 - Leer escribir LCR Registro de control de línea
+ 4 - Leer escribir MCR Registro de control de módem
+ 5 - leer LSR Registro de estado de línea
+ 6 - leer MSR Registro de estado del módem
+ 7 - Leer escribir Registro de cero

La primera columna es la dirección del registro relativa a la base. Por ejemplo, para COM1: la dirección de registro LCR será 3F8h+3=3FB. La segunda columna es un bit DLAB (Divisor Latch Access Bit) que define una asignación diferente para el mismo registro. le permite operar 12 registros usando solo 8 direcciones. Por ejemplo, si DLAB=1, entonces direccionando la dirección 3F8h, estableceremos el valor del byte bajo del divisor de reloj. Si DLAB=0, entonces, refiriéndose a la misma dirección, el byte transmitido o recibido se escribirá en este registro.

registro “cero”

Corresponde a los registros de recepción/transmisión de datos y ajuste del coeficiente del divisor de frecuencia del generador. Como se mencionó anteriormente, si DLAB=0, entonces el registro se usa para escribir los datos recibidos/transmitidos, si es igual a 1, entonces se establece el valor del byte bajo del divisor de frecuencia del generador de reloj. La tasa de transferencia de datos depende del valor de esta frecuencia. El byte alto del divisor se escribe en la siguiente ubicación de memoria (es decir, para el puerto COM1 será 3F9h). A continuación se muestra la dependencia de la velocidad de datos en la relación divisoria:

Registro de habilitación de interrupción (IER)

Si DLAB=0, entonces se usa como un registro de control de interrupción desde un adaptador asíncrono, si DLAB=1, entonces establece el byte alto del divisor de frecuencia del generador de reloj.

Registro de identificación de interrupciones (IIR)

Una interrupción es un evento que detiene la ejecución del programa principal e inicia la ejecución de la rutina de interrupción. Este registro determina el tipo de interrupción que ocurrió.

Registro de control de línea (LCR)

Este es el registro de control.

Bit 7 1 Bit de acceso de bloqueo del divisor: configuración de la tasa de intercambio de datos
0 Modo normal (control de interrupción, recibir/transmitir datos)
Bit 6 Simular salto de línea (envía una secuencia de múltiples ceros)
Bits 3 - 5 Bit 5 Bit 4 Bit 3 selección de paridad
X X 0 sin paridad
0 0 1 Paridad impar
0 1 1 incluso la paridad
1 0 1 Alta paridad (pegajoso)
1 1 1 Paridad baja (pegajoso)
Bit 2 Número de bits de parada
0 1 bit de parada
1 2 bits de parada para 6,7 ​​u 8 bits de datos o 1,5 bits de parada para 5 bits de datos.
Bits 0 y 1 Bit 1 bit 0 Número de bits de datos
0 0 5 bits
0 1 6 bits
1 0 7 bits
1 1 8 bits

La verificación de paridad implica la transmisión de un bit más: el bit de paridad. Su valor se establece de modo que el número total de 1 (o 0) en la ráfaga de bits sea par o impar, según la configuración de los registros del puerto. Este bit se utiliza para detectar errores que pueden ocurrir durante la transmisión de datos debido a interferencias en la línea. El dispositivo receptor vuelve a calcular la paridad de los datos y compara el resultado con el bit de paridad recibido. Si la paridad no coincide, se considera que los datos se transmitieron con error.

El bit de parada significa el final de la transferencia de datos.

Registro de control de módem (MCR)

Registro de control de módem.

Bit Sentido
0 Línea DTR
1 línea RTS.
2 Línea OUT1 (repuesto)
3 Línea OUT2 (repuesto)
4 Ejecute diagnósticos cuando la entrada de un adaptador asíncrono esté en cortocircuito con su salida.
5-7 Igual a 0

Registro de estado de línea (LSR)

Un registro que determina el estado de la línea.

Bit Sentido
0 Los datos recibidos y listos para ser leídos, se restablecen automáticamente cuando se leen los datos.
1 Error de desbordamiento. Se ha recibido un nuevo byte de datos y el programa aún no ha leído el anterior. El byte anterior se pierde.
2 Error de paridad, borrado después de leer el estado de la línea.
3 Error de sincronización.
4 Solicitud de interrupción de transmisión detectada "BREAK" es una cadena larga de ceros.
5 El registro de almacenamiento del transmisor está vacío y se puede escribir un nuevo byte para su transmisión.
6 El registro de desplazamiento del transmisor está vacío. Este registro recibe datos del registro de retención y los serializa para su transmisión.
7 Tiempo de espera (dispositivo no conectado a la computadora).

Registro de estado del módem (MSR)

Registro de estado del módem.

Eso es. Usando estos registros, puede comunicarse directamente con el puerto COM, controlar la transmisión y recepción de datos. Si no tiene ganas de jugar con la memoria, puede usar componentes listos para usar para varios entornos de programación: C++, VB, Delphi, Pascal, etc. Son intuitivos, por lo que creo que no vale la pena centrarse en ellos aquí.