Cuprins:

Atari LED Cube: 3 pași
Atari LED Cube: 3 pași

Video: Atari LED Cube: 3 pași

Video: Atari LED Cube: 3 pași
Video: Mario DESTROYS anything on his path! | Evolution of Super Mario 3 2024, Noiembrie
Anonim
Atari LED Cube
Atari LED Cube

Prezentare generală

Acest lucru instructiv privește utilizarea portului joystick-ului Atari 800 pentru ieșiri cu un cub LED, ca exemplu.

Introducere

Ați văzut vreodată unul dintre aceste cuburi LED? Sunt total mișto. Te-ai întrebat vreodată dacă Atari-ul tău ar putea face ceva similar? Și eu.

Provizii

Un Atari de 8 biți - folosesc un 800 XL

Multiplexor cu 16 canale - căutați CD74HC4067 folosind motorul dvs. de căutare preferat

O tonă de LED-uri - am făcut o matrice 4x4x4 care folosește 64

Fire

Rezistențe

Conector femelă 9 pini D x 2

Pasul 1: Construirea acestuia

Construindu-l
Construindu-l
Construindu-l
Construindu-l
Construindu-l
Construindu-l

Este suficient să spunem că construirea acestor lucruri este mult mai dificilă decât pare (dacă ai labe în loc de degete), iar remedierea îmbinărilor proaste este ca și cum ai face o operație cheie cu găuri cu un fier de lipit.

Nu am de gând să petrec niciun timp pe construcția matricei, deoarece există tipi care au făcut-o mult mai bine. Aruncă o privire la

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

sau

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

Multiplexare

Acesta este bitul inteligent. A avea 64 de LED-uri înseamnă în mod normal 64 de fire pentru a le controla, dar Atari nu are atât de mulți pini care pot fi folosiți pentru a scrie.

Intrați în multiplexor!

Cubul este împărțit în 16 coloane și 4 rânduri. Fiecare coloană de LED-uri partajează o intrare + v din multiplexor și fiecare rând împarte un 0v. Deci, pentru a porni un LED, stabilim în ce coloană se află și pornim linia + v, apoi aprindem terenul corespunzător.

Cu toate acestea, puteți aprinde doar un LED la un moment dat. Dacă încercați două sau mai multe, se vor aprinde și alte LED-uri.

Rețineți că multiplexorul dvs. ar putea avea conexiuni diferite cu ale mele! Verificați mai întâi instrucțiunile.

Pasul 2: Codul Atari - BAZIC

Image
Image
Codul Atari - Adunarea 6502
Codul Atari - Adunarea 6502

Pe lângă funcționarea lor normală, porturile joystick-ului pot scrie și. Există un pic de truc pentru ao face să funcționeze;

1) Poke port A control D302 $ cu 38 $

2) Poke port A $ D300 cu $ FF

3) Poke port A control $ D302 cu $ 3C. Aceasta pornește bitul 2, permițându-ne să scriem în port.

Există un pic mai mult despre utilizarea porturilor joystick ca interfață aici

www.atariarchives.org/creativeatari/Interf…

Portul A este structurat astfel încât biții de la 0 la 3 să aibă grijă de stick-ul 0, iar biții de la 4 la 7 să se ocupe de stick-ul 1. Prin introducerea biților de la 0 la 3 cu 1 la 15 putem controla multiplexorul și putem porni o coloană de LED-uri. Dacă pornim apoi biții 4 la 7, putem controla un rând. În cazul în care coloana și rândul coincid, un LED se aprinde.

Nu trebuie să porniți rânduri individuale; prin combinarea biților 4-7, vor fi activate două sau mai multe rânduri. Aveți grijă doar că alte LED-uri pe care nu doriți să le aprindă s-ar putea aprinde și ele.

5 LIMITĂ = 60

10 PORT = 54016

20 PCTL = 54018

30 POKE PCTL, 56

40 PORTUL POKE, 255

50 POKE PCTL, 60

60 I = RND (1) * 239 + 16

70 POKE PORT, I

75 FOR WAIT = 0 TO LIMIT: NEXT WAIT

90 GOTO 60

Nimic nu se întâmplă aici; codul setează portul A pentru scriere apoi aprinde un LED la întâmplare. Efectul este un pic asemănător unui computer dintr-un spectacol sci-fi de la începutul anilor 80.

Pasul 3: Codul Atari - Asamblarea 6502

Image
Image

Basic este în regulă pentru a porni un LED la un moment dat, dar lucrurile fanteziste se întâmplă atunci când începeți să le porniți rapid, ceea ce oferă iluzia că mai multe LED-uri sunt aprinse simultan. Efectul se numește persistență a vederii și se bazează pe LED-urile care comută mai repede decât este capabil să detecteze ochiul. Basic este prea lent, deci este timpul de asamblare.

Acest cod pornește LED-urile din colț

10 *=$6000

20 PORT = 54016

30 PCTL = 54018

70 LDA # 56

80 STA PCTL

90 LDA # $ FF

100 STA PORT

110 LDA # 60

120 STA PCTL

130 LDY # 0

140 PRINCIPAL

150 CLC

160 LDA SEQ, Y

170 STA PORT

180 INY

190 CPY # 8

200 BNE MAIN

210 LDY # 0

220 JMP MAIN

310 SEC

320. BYTE 16, 18, 24, 26

330. BYTE 64, 66, 72, 74

Există câteva fișiere „experimentale” în atașamentul Leds.atr.

Bucurați-vă

Recomandat: