Paso 3: El software
Esta tabla muestra qué voluntad de LEDs luz para cada número:
0 A, B, C, D, E, F
1 B, C
2 A, B, D, E, G
3 A, B, C, D, G
4 B, C, F, G
5 A, C, D, F, G
6 C, D, E, F, G
7 A, B, C
8 A, B, C, D, E, F, G
9 A, B, C, D, F, G
Si has conectado salidas D0 a través de D6 a LED segmentos A la G en orden, cada letra corresponderá a matemática binaria simple. A es 1, B es 2, C es 4, D es 8, es 16, F es 32, y G es 64. Solo se suman los números correspondientes a cada letra y te encontrarás con esta tabla:
0 63
1 6
2 107
3 79
4 102
5 109
6 125
7 de 7
8 127
9 103
Estos diez valores son los números que tenemos que enviar a Puerto de la impresora para mostrar cada número. Una ventaja del enfoque de software es flexibilidad. Ya que puede programar cualquier combinación de los siete segmentos puede crear diferentes símbolos y letras. Cerca de dos tercios del alfabeto inglés puede ser generados con displays de 7 segmentos (si acepta una "Y" desproporcionada y usar minúsculas para d, n y r). Fue muy popular con los números que generan frases cortas en tu calculadora; Aunque para algunos de ellos se puede ver tendría que invierta la calculadora. Que viene con la tabla de búsqueda correcto para "ShEll Oil" o "piqueros" se deja como ejercicio para el lector.
Me decidí a escribir el programa en BASIC, como originalmente lo escribió. Por desgracia Integer BASIC de Woz no funciona en los ordenadores actuales (excepto emuladores de Apple II) por lo que seleccioné FreeBASIC.
FreeBASIC es un compilador de BASIC de código abierto excelente basado en QuickBASIC. Más importante para este proyecto es incorporado soporte a dirección los puertos directamente (el equivalente del comando POKE en BASIC del número entero). Así es, vamos a omitir APIs y otras técnicas modernas de programación y enviar datos directamente a los puertos de hardware. Esto significa que este programa no funciona con USB a paralelo convertidores que no emular perfectamente el puerto de impresora.
& H378 es la dirección de puerto de impresora por defecto. Se encuentra en el BIOS de su ordenador y puede cambiar el valor de este programa a cualquier puerto que desee utilizar si por alguna razón que estás usando otra dirección. Si no utiliza un PC con un puerto de impresora estándar que tendrá que adaptarse a las rutinas de salida de mi programa.