9 votos

¿Cómo implementar el juego invisible utilizando puertas lógicas o chancletas?

En primer lugar, para aquellos no familiarizados con el juego, esta es la forma en que funciona el juego,

game play

El objetivo del juego es apagar todas las luces, por lo tanto llamado "Lights Out", y cada vez que pulse el botón/luz de los inversos de su estado, así como su norte/sur/este/oeste adyacente a los vecinos, y eso es prácticamente todo.

Ahora, lo que puedo pensar es mediante el uso de SR flip-flops, o JK flip flops. Esto es debido a su capacidad para actuar como elemento de almacenamiento (el estado inicial y el estado siguiente). Pero me parece que no puede pensar en formas de ponerlas en práctica.

Otra idea es que cada conjunto de botones y sus adyacentes (NSEW)botón/luz va a tener su propia tabla de verdad, como esta:

logic table

pero, ¿es posible tener las variables de entrada que ser el mismo que el de salida de las variables? Hay otras maneras de hacer esto?

9voto

RelaXNow Puntos 1164

La solución obvia sería el uso de un procesador y hacer todo esto en el firmware.

Sin embargo, si realmente se necesita para hacer esto con cuchillos de piedra y pieles de oso, por alguna razón, me dedico una alternancia de flip-flop para cada plaza. El flip flop de cada cuadrado sería alternar por la prensa de su botón o a cualquiera de los cuatro vecinos de botones. Por supuesto, aquellos que se presiona un botón necesidad de rebotar. De nuevo, esto sería más fácil en el firmware.

Una solución de hardware no ser del todo complejo, pero todo sería replicado 25 veces, lo que es grande y tedius a construir.

Añadió:

Al parecer, la descripción anterior no es suficientemente clara. Aquí está un diagrama de lo que es en cada celda:

Las otras 4 entradas de la puerta NAND son expulsados de la rebotada señales de los alrededores de 4 botones que se supone, además, para cambiar el estado de esta plaza. Del mismo modo, la señal rebotada desde este botón también se va a la una de la puerta NAND de los aportes de cada uno de los 4 que rodea las células.

4voto

Alex Andronov Puntos 178

Si uno quería construir un juego hasta el tamaño 7x7 fuera discreto de la lógica, la más práctico diseño que probablemente sería el uso de una circulación de registro de desplazamiento para mantener el estado de la junta, y un seis bits del contador de seguir la pista de la posición de cambio de los datos dentro del registro. Cambio de datos a través de la palanca de cambios en grupos de 8 bits a la unidad de display multiplexado y escaneado un multiplexado de teclado. Tiene un siete bits "flip luz" contador que se va a ejecutar en cualquier momento la parte inferior de seis bits son cero, o cuando el estado de la parte superior de bits coincide con el estado en la actualidad decodificados botón. Voltear el estado de la corriente de la luz cada vez que aplican todas las condiciones siguientes:

6-bit counter isn't  xxx111
6-bit counter isn't  111xxx
7-bit counter isn't xxxxx00
7-bit counter isn't xx00xxx
7-bit counter is    00xx0xx

Tenga en cuenta que mientras que una cantidad significativa de la lógica sería necesario para decodificar esos contador de los estados, sería trivial en comparación con el número de fichas requeridas para implementar cada luz por separado.

0voto

ravenspoint Puntos 8840

Yo diría que sandalias T sería probablemente la forma más fácil como puede cambiar su estado de salida con una sola entrada. Se puede utilizar un solo fracaso de tirón para cada LED y con la entrada, atado a su botón y la salida de atado a tu LED. A continuación, puede hacer que cada botón en el vinculado a las entradas de los 4 ojotas adyacentes para cambiar su estado.

Si desea utilizar ojotas JK, usted puede hacer T ojotas de ellos pasando la entrada a cada una de las entradas (J y K)

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X