Tabla de contenido:

Cubo LED Atari: 3 pasos
Cubo LED Atari: 3 pasos

Video: Cubo LED Atari: 3 pasos

Video: Cubo LED Atari: 3 pasos
Video: Jabbawockeez-Robot Remains 2024, Noviembre
Anonim
Cubo LED Atari
Cubo LED Atari

Visión general

Este instructivo analiza el uso del puerto de joystick Atari 800 para salidas con un cubo LED como ejemplo.

Introducción

¿Alguna vez has visto uno de esos cubos de LED? Son totalmente geniales. ¿Alguna vez se preguntó si su Atari podría hacer algo similar? Yo también.

Suministros

Un Atari de 8 bits: estoy usando un 800 XL

Multiplexor de 16 canales: busque CD74HC4067 con su motor de búsqueda favorito

Una tonelada de LED: hice una matriz 4x4x4 que usa 64

Alambres

Resistencias

Conector D hembra de 9 pines x 2

Paso 1: Construyéndolo

Construyéndolo
Construyéndolo
Construyéndolo
Construyéndolo
Construyéndolo
Construyéndolo

Basta decir que construir estas cosas es mucho más difícil de lo que parece (si tiene patas en lugar de dedos), y arreglar las uniones defectuosas es como hacer una cirugía de ojo de cerradura con un soldador.

No voy a dedicar tiempo a la construcción de la matriz, ya que hay muchachos que lo han hecho mucho mejor. Mira esto

www.instructables.com/id/LED-Cube-4x4x4/

o

www.instructables.com/id/8x8x8-RGB-LED-Cub…

Multiplexación

Esta es la parte inteligente. Tener 64 LED normalmente significa 64 cables para controlarlos, pero el Atari no tiene tantos pines que se puedan usar para escribir.

¡Entra en el multiplexor!

El cubo está dividido en 16 columnas y 4 filas. Cada columna de LED comparte una entrada + v del multiplexor y cada fila comparte un 0v. Entonces, para encender un LED, calculamos en qué columna está, y encendemos la línea + v, luego encendemos el suelo apropiado.

Sin embargo, solo puede encender un LED a la vez. Si prueba dos o más, también se encenderán otros LED.

¡Tenga en cuenta que su multiplexor puede tener conexiones diferentes a las mías! Primero revise sus instrucciones.

Paso 2: El Código Atari - BÁSICO

Image
Image
El código Atari - 6502 Assembly
El código Atari - 6502 Assembly

Además de su funcionamiento normal, los puertos de joystick también pueden escribir. Hay un pequeño truco para que funcione;

1) Poke puerto A control $ D302 con $ 38

2) Poke port A $ D300 con $ FF

3) Controle el puerto A de empuje $ D302 con $ 3C. Esto activa el bit 2 permitiéndonos escribir en el puerto.

Aquí hay un poco más sobre el uso de los puertos del joystick como interfaz.

www.atariarchives.org/creativeatari/Interf…

El puerto A está estructurado de modo que los bits 0 a 3 se encargan del stick 0 y los bits 4 a 7 se ocupan del stick 1. Al pinchar los bits 0 a 3 con 1 a 15 podemos controlar el multiplexor y encender una columna de LEDS. Si luego activamos los bits 4 a 7, podemos controlar una fila. Donde coinciden la columna y la fila, se enciende un LED.

No tiene que activar filas individuales; al combinar los bits 4 a 7, se activarán dos o más filas. Solo tenga en cuenta que otros LED que no desea que se enciendan también podrían encenderse.

5 LÍMITE = 60

10 PUERTO = 54016

20 PCTL = 54018

30 POKE PCTL, 56

40 PUERTO DE POKE, 255

50 POKE PCTL, 60

60 I = RND (1) * 239 + 16

70 PUERTO DE POKE, I

75 PARA ESPERAR = 0 PARA LIMITAR: SIGUIENTE ESPERA

90 GOTO 60

No pasa nada aquí; el código establece el puerto A para escribir y luego enciende un LED al azar. El efecto es un poco como una computadora de un cursi programa de ciencia ficción de principios de los 80.

Paso 3: El código Atari - Ensamblaje 6502

Image
Image

Básico está bien para encender un LED a la vez, pero las cosas elegantes ocurren cuando comienzas a encenderlos y apagarlos rápidamente, lo que da la ilusión de que varios LED están encendidos a la vez. El efecto se llama persistencia de la visión y se basa en que los LED cambian más rápido de lo que el ojo es capaz de detectar. El básico es demasiado lento, por lo que es hora de ensamblar.

Este código enciende los LED de esquina

10 *=$6000

20 PUERTO = 54016

30 PCTL = 54018

70 LDA # 56

80 STA PCTL

90 LDA # $ FF

PUERTO 100 STA

110 LDA # 60

120 STA PCTL

130 LDY # 0

140 PRINCIPAL

150 CLC

160 LDA SEQ, Y

170 PUERTO STA

180 INY

190 CPY # 8

200 BNE PRINCIPAL

210 LDY # 0

220 JMP PRINCIPAL

310 SEQ

320. BYTE 16, 18, 24, 26

330. BYTE 64, 66, 72, 74

Hay algunos archivos "experimentales" en el archivo adjunto Leds.atr.

Disfrutar

Recomendado: