Este terminal completo compatible con ASCII VT100 consta básicamente de una MCU PIC, un puñado de piezas discretas y muchos conectores.
Antes de desviarme, y todos sabemos que lo haré, primero encuentre una solución a todos sus problemas de emulación VT100 en la forma de una terminal de video totalmente compatible con ASCII VT100.Empecemos con lo que piensa. una ficha. Puede usarlo para mostrar todo tipo de información útil en monitores VGA o compuestos (NTCS o PAL), incluidos los monitores de tubo de rayos catódicos (CRT) que desee, en sus proyectos basados en Arduino y Teensy.
Pero primero (y divagando aquí), consiénteme mientras preparo la escena recordando cómo llegamos a donde estamos hoy (pistas de “música que retrocede en el tiempo” y “efectos visuales ambiguos”)…
Jugando actualmente: Temporizador de cuenta regresiva
Hace mucho tiempo, me encontré con un equivalente basado en LED del tubo Nixie. Conocidos como Lixies, estos pequeños bribones tienen un área de visualización de aproximadamente 4 por 2 pulgadas y se ven geniales.
Pantalla Lixie basada en LED (Fuente: Connor Nishijima)
Inmediatamente compré 12 pequeños pícaros. Por supuesto, no tiene sentido tener una pantalla genial si en realidad no tiene los datos que desea presentar al mundo. Así que decidí crear un temporizador de cuenta regresiva que marca el año (YY) y el mes (MM). , días (DD), horas (HH), minutos (MM), segundos (SS) para celebrar mi cumpleaños número 100.
Desde entonces, he reflexionado sobre algunos temas particularmente complejos. Por ejemplo, cómo montar los Lixies estéticamente sobre un gabinete de cuenta regresiva (ver “Una solución descarada para montar Lixies”). En el camino, descubrí algunas técnicas interesantes para hacer cosas (consulte “Desplazarse hacia atrás en pantallas numéricas mejora la estética”).
Más recientemente, pasé a crear un gabinete para albergar esta pequeña belleza (consulte “Acercándose un paso más a la cuenta regresiva final (temporizador)”). A decir verdad, mi amigo Bob, el carpintero, hizo la mayor parte del trabajo, y yo rebotaba en el fondo dando sugerencias útiles.
Hace unos días, finalmente lo armé todo como pueden ver en las tres imágenes a continuación.

Preparación previa al montaje (Fuente: Max Maxfield)

Todos los bits están en su lugar. (Fuente: Max Maxfield)

Un primer plano que destaca una pieza de joyería de latón (Fuente: Max Maxfield)
Como puede ver, el conjunto de placa dividida de latón es ideal para montar los Lixies en el gabinete (si desea hacer algo similar usted mismo, los dibujos dimensionales están disponibles de forma gratuita a pedido). También comencé a trabajar en el cableado, pero no lo mostraré hasta que esté completo.
nadar en el océano de datos
Originalmente, solo iba a mostrar el tiempo que faltaba para mi cumpleaños número 100, pero siguiendo las sugerencias de muchas personas, el tiempo que honré este planeta con mi presencia y la fecha y hora actuales:
YY MM DD HH MM SS
— Fecha y hora actuales (incluida la compensación de horario de verano local)YY MM DD HH MM SS
— Tiempo transcurrido desde que nací (ver Mi nacimiento BST)YY MM DD HH MM SS
— Tiempo restante hasta mi cumpleaños número 100 (ver Mi nacimiento BST)
Además, decidí mostrar gran parte de esta información en total de días, horas, minutos y segundos (consulte YMDHMS al 29 de mayo de 2057 a las 11:45 a. m. BST).
DD DD DD DD DD DD
— Número total de días desde que nacíHH HH HH HH HH HH
— Número total de horas desde que nacíMM MM MM MM MM MM
— Minutos totales desde que nacíSS SS SS SS SS SS
— Total de segundos desde que nací
DD DD DD DD DD DD
— Número total de días hasta mi cumpleaños número 100HH HH HH HH HH HH
— tiempo total hasta mi cumpleaños número 100MM MM MM MM MM MM
— 1 minuto para mi cumpleaños número 100SS SS SS SS SS SS
— Total de segundos hasta mi cumpleaños número 100
¡Uf! Esta es una gran cantidad de datos. Claro, puede usar diferentes colores y demás para decir lo que está mirando, pero ¿qué pasa con los transeúntes ocasionales?
Todo esto me llevó a la decisión de que necesitaba una pantalla auxiliar. Mi primer pensamiento fue dibujar los datos en un CRT. Lo segundo que pensé fue que necesitaba una solución que me permitiera alcanzar el promedio de bateo antes de cumplir 100 años. Esto resultó en mi columna reciente, “Buscando tecnologías de pantallas antiguas” (vea también mi artículo anterior, “Fingiendo ser una pantalla LCD”). TRC”).
Esto me llevó a la idea de usar un viejo monitor de computadora basado en CRT para mostrar información. La opción ideal es un terminal VT100. Una alternativa es un monitor basado en CRT con entrada VGA o compuesta (NTSC o PAL) y algún tipo de emulador VT100 que lo controle.
Por cierto, VT100 fue un terminal de video presentado por Digital Equipment Corporation (DEC) en 1978. La belleza de esta pequeña belleza es que el usuario puede usar “secuencias de código de escape” para controlar cosas como la posición del cursor en la pantalla. (Estos códigos se llaman así porque comienzan con el carácter de escape ASCII (0x1B en hexadecimal, 27 en decimal)).
En un comentario en mi columna Vintage Display Technologies, Rick Curl sugirió usar una Raspberry PI con un emulador VT100, pero creo que encontré una solución aún mejor…
Terminal de video ASCII de Geoff Graham
Esto es de un proyecto publicado originalmente en la edición de julio de 2014 de la revista Silicon Chip.está completo Terminal compatible con ASCII VT100 Se implementa en una placa de circuito pequeña que consiste básicamente en una sola MCU PIC, algunos componentes discretos y muchos conectores.

Terminal de video ASCII (Fuente: Geoff Graham)
El firmware de PIC MCU emula la mayoría de las funciones de los terminales DEC VT100 y VT52, con gráficos mejorados (líneas, cuadros y círculos) y fuentes alternativas (grande y jumbo).
Este dispositivo acepta un flujo de entrada en serie desde un puerto UART de Arduino o Teensy MCU y emite VGA o video compuesto con conmutación automática (el compuesto puede ser PAL o NTSC).
a medida que descubres sitio web de jeff, puede conectar una variedad de dispositivos a su tablero, incluidos teclados compatibles con PS/2. Puedo imaginar tantos usos para este pequeño Rascal en muchos de mis proyectos. A continuación se muestran las formas más comunes en que uso esto.

Uso general del terminal VT100 de Geoff (Fuente: Max Maxfield)
La idea aquí es que un Arduino, Teensy o cualquier otro MCU que impulse mi proyecto felizmente haría el trabajo. Si desea mostrar algo en un CRT, hágalo a través de la placa de terminales VT100 de Geoff. Por ejemplo, supongamos que tiene una interfaz VGA de 24 líneas por 80 caracteres y desea mostrar el mensaje “Hello World”. donde la ‘H’ comienza en el octavo carácter de la sexta línea. En este caso, la MCU primero envía a la placa VT100 la secuencia de escape “Mover el cursor a la columna 8, fila 6” seguida de la cadena “Hola mundo”.
El tablero de Geoff toma esta información y hace todo el trabajo duro de generar las señales con el tiempo correcto para mostrar la información requerida en la pantalla.
Para el temporizador de cuenta regresiva, estoy pensando en hacer algo un poco diferente. El temporizador en sí es impulsado por Teensy MCU, que es responsable de todos los cálculos de fecha y hora y de controlar la pantalla de Lixie, así que creo que es suficiente. Así que mi plan es dividir las cosas en un contador de tiempo y todo lo demás. Una solución es agrupar dos terminales Teensy y Geoff VT100 y usar su salida para controlar un monitor de computadora antiguo (o televisor), como se muestra en el siguiente diagrama.

Empaquete un segundo dispositivo Teensy y Geoff VT100 (Fuente: Max Maxfield)
En este caso, todo lo que tiene que hacer el Counter Timer Teensy es enviar un mensaje al Text Controller/VT100 Terminal Module Teensy. código de 1 letra si es necesario). Teensy, el controlador de texto/módulo de terminal VT100, es responsable de determinar cómo se presenta esta información como texto ASCII en la pantalla y comunicar ese deseo a la terminal VT100 de Geoff. El VT100 de Geoff luego genera las señales necesarias para controlar la pantalla.
El problema aquí es que si busca en eBay algo como “Monitor de computadora antiguo” o Televisores “Vintage 5”, encontrará que es bastante grande y tiene profundidad. Para evitar esto, mi amigo Joe Farr del Reino Unido sugirió una alternativa…
Pantalla auxiliar basada en CRT
Una búsqueda en Google de “módulo CRT de 4 pulgadas” mostrará una variedad de opciones interesantes. Módulo CRT blanco y negro de 10 cm (4 pulgadas) Productos encontrados en el sitio web Made-in-China.com:

Módulo CRT de 4 pulgadas (Fuente: Made-in-China.com)
Como puede ver, este pequeño escáner es alto y delgado porque los tubos del CRT están montados verticalmente. Estas pequeñas bellezas tienen una resolución de 450 líneas y pueden mostrar PAL o NTSC. También es relativamente económico, alrededor de $ 20 por pequeñas cantidades. El problema es que la cantidad mínima que he encontrado hasta ahora es superior a 200. Esto es excesivo ya que realmente solo necesitamos uno para este proyecto.
En aras de la discusión, supongamos que puede tener en sus manos una de estas pequeñas estafas. En este caso, el temporizador del contador y la pantalla auxiliar se dividen como se muestra en la siguiente figura.

Particionamiento del contador de tiempo y la pantalla auxiliar (Fuente: Max Maxfield)
Ahora vuelva a pensar en la caja de madera y los adornos de latón utilizados para el contador de cuenta regresiva principal, como se muestra en las fotos anteriores de esta columna. Estoy pensando en hacer algo similar para la pantalla auxiliar, como puedes ver a continuación.

Pantalla auxiliar (Fuente: Max Maxfield)
Este es un diagrama aproximado que armé en Microsoft Visio, pero deja volar tu imaginación. La pantalla CRT está rodeada por un bisel de latón que coincide con el que soporta la pantalla Lixie de Counter Timer (que incluye una tuerca ciega de latón en su lugar). La caja de madera de exhibición auxiliar, por otro lado, también coincide con el contador de tiempo en términos de tipo de madera, color y todas las “partes desagradables” como el enrutamiento superior y la banda inferior.
El uso de la terminal VT100 de Geoff para controlar el CRT puede mostrar todo tipo de información útil mientras se mantiene la misma apariencia Steampunk que el contador de tiempo principal. Creo que esto es exactamente lo que estoy buscando. El único problema es encontrar un proveedor dispuesto a vender el módulo CRT de 4 pulgadas en cantidades únicas. Como siempre, agradecemos sus comentarios, sugerencias, preguntas y sugerencias.