¿En qué podemos ayudarte?
<< Regresar
Estas aquí:
Imprimir

Terminal serial

¿Qué es una terminal?

Los emuladores de terminales tienen muchos nombres y, debido al uso variado de la palabra terminal, a menudo puede haber cierta confusión acerca de lo que alguien quiere decir cuando dice terminal. Vamos a aclarar eso.

Breve historia

Para entender el uso de la palabra terminal, debemos visitar el pasado no tan lejano. Cuando las computadoras eran grandes, voluminosas y ocupaban cuartos enteros, solo había un puñado de formas de interactuar con ellas. Las tarjetas perforadas y los rollos de cinta de papel eran una de esas interfaces, pero también existía lo que se conocía como un terminal que se usaba para ingresar y recuperar datos. Estas terminales tenían muchos factores de forma, pero pronto empezaron a parecerse a lo que se convertirían en sus descendientes de computadoras personales. Muchos consistían en un teclado y una pantalla. Los terminales que solo podían mostrar texto se denominaban terminales de texto y, más tarde, terminales gráficos. Cuando se habla de emuladores de terminales, se hace referencia a estos terminales de días pasados.

Terminales modernos

Hoy en día, los programas de terminal están «emulando» la experiencia que estaba trabajando en uno de estos terminales. Se les conoce como emuladores, aplicaciones, programas, términos, TTY, etc. Para los propósitos de este tutorial, solo se usará la palabra terminal. Muchos terminales se utilizan para emular tipos específicos de terminales de computadora, pero hoy en día, la mayoría de los terminales son más genéricos en su interfaz.

Cuando se trabaja en un sistema operativo moderno, la palabra ventana de terminal se usará a menudo para describir el trabajo dentro de una de estas aplicaciones. Y, a menudo, al leer otros tutoriales y guías de conexión, se le solicitará que abra una ventana de terminal. Solo sepa que significa abrir cualquiera de estos programas de terminales que le parezca más atractivo.

También vale la pena señalar que muchos programas de terminal son capaces de mucho más que la comunicación en serie. Muchos tienen capacidades de comunicación de red como telnet y SSH. Sin embargo, este tutorial no cubrirá estas características.
Terminal vs línea de comandos

Un terminal no es un indicador de comando, aunque los dos son algo similares. En Mac OS, el símbolo del sistema se llama incluso Terminal. De ahí la confusión al usar esa palabra. En cualquier caso, puede realizar algunas de las mismas tareas en un símbolo del sistema que también podría realizar dentro de una ventana de terminal, pero no funciona al revés; no puede emitir sentencias de línea de comandos dentro de una ventana de terminal. Veremos cómo crear una conexión de terminal en serie dentro de una interfaz de línea de comandos más adelante en este tutorial. Por ahora, solo sé cómo distinguir entre los dos.

Terminología básica

Aquí hay algunos términos con los que debe estar familiarizado cuando trabaje dentro de una ventana de terminal en serie. Muchos de estos términos se tratan con mucho más detalle en nuestro tutorial de Comunicación en serie . Es muy recomendable que lea esa página también para obtener la imagen completa.

ASCII: abreviatura del esquema de codificación de caracteres del Código Estándar Americano para el Intercambio de Información, ASCII codifica caracteres especiales de nuestros teclados y los convierte en enteros binarios de 7 bits que pueden ser reconocidos por varios programas y dispositivos. Los gráficos ASCII son muy útiles cuando se trabaja con terminales seriales.

Velocidad de transmisión: en resumen, la velocidad de transmisión es la velocidad con la que se transmiten y reciben sus datos. 9600 es la tasa estándar, pero otras velocidades son típicas entre ciertos dispositivos. Solo recuerde que todos los enlaces en su cadena de comunicación deben estar «hablando» a la misma velocidad, de lo contrario, los datos se malinterpretarán en un extremo o en el otro.

Transmisión (TX): también conocida como salida de datos o TXO. La línea TX en cualquier dispositivo está ahí para transmitir datos. Esto debe estar conectado a la línea RX del dispositivo con el que desea comunicarse.

Receive (RX): también conocido como Data In o RXI. La línea RX en cualquier dispositivo está ahí para recibir datos. Esto debe estar conectado a la línea TX del dispositivo con el que desea comunicarse.

Puerto COM (puerto serie): a cada dispositivo que conecte a su computadora se le asignará un número de puerto específico. Esto ayuda a identificar cada dispositivo conectado. Una vez que un dispositivo tiene un puerto asignado, ese puerto se utilizará cada vez que se conecte a la computadora.

Su dispositivo aparecerá en su computadora como COM # (si está en una máquina con Windows) o /dev/tty.usbserial-######## (si está en una computadora Mac / Linux) , donde los # son números únicos o caracteres alfabéticos.

TTY: significa teletipo o escritor. Al igual que el terminal es sinónimo de los terminales antiguos, también lo es el teletipo. Estas fueron las máquinas de escribir electromecánicas utilizadas para ingresar información al terminal y, por lo tanto, al mainframe. Cuando trabaje con terminales en Mac y Linux, a menudo verá que tty se usa para representar un puerto de comunicación en lugar de ‘puerto COM’.

Bits de datos, parada y paridad: cada paquete de datos enviados desde y hacia el terminal tiene un formato específico. Estos formatos pueden variar, y las configuraciones de su terminal pueden ajustarse de manera correspondiente para trabajar con diferentes configuraciones de paquetes. Una de las configuraciones más comunes que verás es 8-N-1, que se traduce en 8 bits de datos, sin bit de paridad y un bit de parada.

Control de flujo: el control de flujo controla la velocidad a la que se envían los datos entre los dispositivos para garantizar que el remitente no envíe los datos más rápido de lo que el receptor puede recibirlos. En la mayoría de las aplicaciones utilizadas en estos tutoriales, no necesitará usar el control de flujo. El control de flujo también puede estar presente en la notación abreviada: 8-N-1-None, que significa sin control de flujo.

Retorno de carro y avance de línea: el retorno de carro y el avance de línea son los caracteres ASCII que se envían cuando presiona la tecla enter en su teclado. Estos términos tienen raíces desde los días de las máquinas de escribir. Retorno de carro significa que el carro que sostiene el papel volverá al punto de inicio de esa línea en particular. El salto de línea (también conocido como línea nueva) significa que el carro debe moverse a la siguiente línea para evitar que se escriba sobre la línea anterior.

Cuando se escribe en un teclado moderno, estos términos siguen vigentes. Cada vez que presiona enter (o regresa) le está diciendo a su cursor que se mueva hacia abajo a la siguiente línea y que se mueva al comienzo de esa nueva línea.

Al consultar nuestra práctica tabla ASCII , podemos ver que el carácter para el salto de línea es 10 (0x0A en hexadecimal) y el retorno de carro es 13 (0x0D en hexadecimal). La importancia de estos dos personajes no se puede enfatizar lo suficiente. Cuando trabaje en una ventana de terminal, a menudo tendrá que saber cuál de estos dos caracteres, si no ambos, se está utilizando para emular la tecla enter. Algunos dispositivos solo necesitan un carácter u otro para saber que se ha enviado un comando. Más importante aún, cuando trabaje con microcontroladores, tenga en cuenta cómo está enviando los datos. Si es necesario enviar una cadena de 5 caracteres al micro, es posible que necesite una cadena que realmente pueda contener 7 caracteres debido a los 10 y 13 enviados después de cada comando.

Eco local: el eco local es una configuración que se puede cambiar en el terminal en serie o en el dispositivo con el que está hablando, y en ocasiones en ambos. Esta configuración simplemente le dice al terminal que imprima todo lo que escribe. El beneficio de esto es poder ver si de hecho está escribiendo los comandos correctos en caso de que encuentre errores. Tenga en cuenta, sin embargo, que a veces el eco local puede volver a picarle. Algunos dispositivos interpretarán el eco local como tipo doble. Por ejemplo, si escribe hello con eco local hheelllloo , el dispositivo receptor puede ver hheelllloo , que probablemente no sea el comando correcto. La mayoría de los dispositivos pueden manejar comandos con o sin eco local. Solo ten en cuenta que esto puede ser un problema.

Perfil de puerto serie (SPP): el perfil de puerto serie es un perfil de Bluetooth que permite la comunicación en serie entre un dispositivo Bluetooth y un dispositivo host / esclavo. Con este perfil habilitado, puede conectarse a un módulo Bluetooth a través de un terminal en serie. Esto se puede utilizar para fines de configuración o para fines de comunicación. Si bien no es exactamente pertinente a este tutorial, aún es bueno saber sobre este perfil si desea utilizar Bluetooth en un proyecto.

Fuente: https://learn.sparkfun.com/tutorials/terminal-basics/all

Deja una respuesta

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.

Tabla de contenidos