Table des matières:

Cube LED Atari : 3 étapes
Cube LED Atari : 3 étapes

Vidéo: Cube LED Atari : 3 étapes

Vidéo: Cube LED Atari : 3 étapes
Vidéo: How to Make a Modern LED Infinity Illusion Mirror 2024, Novembre
Anonim
Cube LED Atari
Cube LED Atari

Aperçu

Cette instructable examine l'utilisation du port de joystick Atari 800 pour les sorties avec un cube LED à titre d'exemple.

introduction

Avez-vous déjà vu un de ces cubes LED ? Ils sont totalement cool. Vous êtes-vous déjà demandé si votre Atari pouvait faire quelque chose de similaire ? Moi aussi.

Fournitures

Un Atari 8 bits - j'utilise un 800 XL

Multiplexeur 16 canaux - recherchez CD74HC4067 à l'aide de votre moteur de recherche préféré

Une tonne de LED - j'ai fait une matrice 4x4x4 qui utilise 64

Fils

Résistances

Connecteur D femelle 9 broches x 2

Étape 1: le construire

Construire
Construire
Construire
Construire
Construire
Construire

Qu'il suffise de dire que la construction de ces choses est beaucoup plus difficile qu'il n'y paraît (si vous avez des pattes au lieu de doigts), et réparer les mauvaises jointures, c'est comme faire une chirurgie de trou de serrure avec un fer à souder.

Je ne vais pas passer de temps sur la construction de la matrice car il y a des gars qui l'ont fait tellement mieux. Jettes un coup d'oeil à

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

ou

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

Multiplexage

C'est le peu intelligent. Avoir 64 LED signifie normalement 64 fils pour les contrôler, mais l'Atari n'a pas autant de broches qui peuvent être utilisées pour écrire.

Entrez dans le multiplexeur !

Le cube est divisé en 16 colonnes et 4 lignes. Chaque colonne de LED partage une entrée +v du multiplexeur et chaque rangée partage un 0v. Donc, pour allumer une LED, nous déterminons dans quelle colonne elle se trouve, allumons la ligne +v, puis activons la masse appropriée.

Cependant, vous ne pouvez allumer qu'une LED à la fois. Si vous en essayez deux ou plus, d'autres voyants s'allumeront également.

Sachez que votre multiplexeur peut avoir des connexions différentes du mien ! Vérifiez d'abord vos instructions.

Étape 2: Le code Atari - BASIC

Image
Image
Le Code Atari - Assemblage 6502
Le Code Atari - Assemblage 6502

En plus de leur fonctionnement normal, les ports joystick peuvent également écrire. Il y a une petite astuce pour le faire fonctionner;

1) Poke port A contrôle $D302 avec $38

2) Poke port A $D300 avec $FF

3) Poke port A contrôle $D302 avec $3C. Cela active le bit 2 nous permettant d'écrire sur le port.

Il y a un peu plus sur l'utilisation des ports du joystick comme interface ici

www.atariarchives.org/creativeatari/Interf…

Le port A est structuré de manière à ce que les bits 0 à 3 s'occupent du bâton 0 et les bits 4 à 7 s'occupent du bâton 1. En poussant les bits 0 à 3 avec 1 à 15, nous pouvons contrôler le multiplexeur et allumer une colonne de LED. Si nous activons ensuite les bits 4 à 7, nous pouvons contrôler une ligne. Lorsque la colonne et la ligne coïncident, une LED s'allume.

Vous n'avez pas besoin d'activer des lignes individuelles; en combinant les bits 4 à 7, deux ou plusieurs lignes seront activées. Méfiez-vous simplement que d'autres LED que vous ne voulez pas allumer pourraient également s'allumer.

5 LIMITE=60

10 PORT=54016

20 PCTL=54018

30 POKE PCTL, 56

40 POKE PORT, 255

50 POKE PCTL, 60

60 I=RND(1)*239+16

70 POKE PORT, I

75 POUR ATTENDRE=0 POUR LIMITER: ATTENDRE SUIVANT

90 ALLER À 60

Il ne se passe rien ici; le code définit le port A pour l'écriture puis allume une LED au hasard. L'effet est un peu comme un ordinateur d'une émission de science-fiction ringard du début des années 80.

Étape 3: Le code Atari - Assemblage 6502

Image
Image

Basic est correct pour allumer une LED à la fois, mais les trucs fantaisistes se produisent lorsque vous commencez à les allumer et à les éteindre rapidement, ce qui donne l'illusion que plusieurs LED sont allumées en même temps. L'effet est appelé persistance de la vision et repose sur la commutation des LED plus rapidement que l'œil ne peut détecter. Basic est tout simplement trop lent, donc c'est le temps d'assemblage.

Ce code allume les LED d'angle

10 *=$6000

20 PORT = 54016

30 PCTL = 54018

70 LDA #56

80 STA PCTL

90 LDA #$FF

PORT 100 STA

110 LDA #60

120 STA PCTL

130 LDY #0

140 PRINCIPAL

150 CLC

160 LDA SEQ, Oui

170 PORT 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

Il y a des fichiers « expérimentaux » dans la pièce jointe Leds.atr.

Prendre plaisir

Conseillé: