Indholdsfortegnelse:

Arduino Atari Adapter: 8 trin (med billeder)
Arduino Atari Adapter: 8 trin (med billeder)

Video: Arduino Atari Adapter: 8 trin (med billeder)

Video: Arduino Atari Adapter: 8 trin (med billeder)
Video: CS50 2014 – 7-я неделя 2024, Juli
Anonim
Image
Image
Arduino Atari adapter
Arduino Atari adapter

For nylig er jeg blevet mere og mere interesseret i vintage computer tech. En af de mest interessante og indflydelsesrige klassiske teknologiske stykker er Atari 2600, der først blev udgivet i 1977. Desværre fik jeg aldrig chancen for at spille dette som barn, hovedsageligt fordi jeg var gammel nok til at tale, at det allerede var forbi 20 år gammel!

For nylig gravede jeg lidt, og det lykkedes mig at finde en af disse online til en rimelig god pris, men som med en masse gammel teknologi, da jeg tilsluttede den, blev den bare paff.

Det er en af risiciene, når det kommer til at lege og indsamle gammel teknologi, fordi det er så gammelt, der er ingen garanti for, at det vil fungere, og du kan ende med at bruge gode penge bare for at få dit hus til at ryge. Den oplagte løsning er bare at downloade en Atari -emulator, der kan efterligne det gamle system. For det meste fungerer dette godt, men det føles ikke så autentisk som at spille på den originale hardware, især på grund af tastaturet.

Så jeg tænkte, at en god løsning er at lave en adapter, der giver os mulighed for at tilslutte en original Atari -controller til vores computer og spille på den måde, og det er det, vi skal bygge i dette projekt.

Trin 1: Kigger inde i controlleren

Kigger inde i controlleren
Kigger inde i controlleren
Kigger inde i controlleren
Kigger inde i controlleren
Kigger inde i controlleren
Kigger inde i controlleren
Kigger inde i controlleren
Kigger inde i controlleren

Så det absolut første, vi skal gøre, er at se på, hvordan Atari -controlleren fungerer, så vi kan se, hvordan vi skal tilpasse den til USB.

Så da jeg åbnede min, var jeg chokeret over at se, at det kun var 5 knapper! Nej ikke 5 knapper og et styrekredsløb, bare 5 knapper. Hvilket betyder at tilpasse dette til USB bliver virkelig let ved hjælp af en mikrokontroller.

Selvom jeg havde det adskilt, tog jeg også lidt tid til at rydde op i alle tingene og give alt en god rengøring.

Trin 2: Hvad vi har brug for

Hvad vi har brug for
Hvad vi har brug for
Hvad vi har brug for
Hvad vi har brug for

Nu før vi overhovedet kommer ind på delelisten, er det værd at bemærke, at dette projekt ikke vil fungere på Arduino Uno, Nano eller Mega. Vi har brug for en mikrokontroller, der kan fungere som et HID (Human Interface Device). Mikrocontrollere med ATMega 32u4 kan gøre dette, og vi kan finde en ATMega 32u4 i Arduino Micro

Liste over dele:

  • Arduino Pro Micro (her)
  • Mandlige pinhoveder
  • USB til Micro USB kabel
  • Projekthus (vil være 3D -printmine)

Trin 3: Hvilke pins gør hvad?

Hvilke pins gør hvad?
Hvilke pins gør hvad?
Hvilke pins gør hvad?
Hvilke pins gør hvad?

Du vil se, at Atari -controlleren har et 9 -polet stik på enden af det, hver knap i controlleren har sin egen pin på dette stik, og der er en stift til jord. Det betyder, at der kun bruges 6 stifter af dette 9 -polede stik. For at finde ud af, hvilke ben svarer til hvilke knapper vi kan tage et multimeter, skal du indstille til kontinuitetstilstand og se, hvad der forbinder. Hvis du ikke har lyst til at gå igennem det besværlige, skal du inkludere et billede af mine fund.

Så baseret på dette diagram kan vi se, at for eksempel hvis jeg skulle trykke på brandknappen på controlleren, ville den forbinde den orange ledning til jorden, hvilket er et knap tryk, vi kan bruge vores Arduino til at registrere dette og sende tastaturkommandoer tilbage til computeren baseret på hvilken knap der trykkes på.

Trin 4: Sagen

Sagen
Sagen
Sagen
Sagen
Sagen
Sagen

Så det er ret lang tid siden det sidste 9 -polede stik er blevet lavet, og på grund af dette gør det det ret svært for os at finde et, der skal bruges i vores adapter. Så løsningen som med de fleste ting involverer 3D -print. Jeg kommer til at udskrive huset til et 9 -polet stik og derefter dårligt bare skubbe nogle hanstifter til det for at komme i kontakt med det 9 -polede stik på Arduino. De 3D -printbare filer kan findes nedenfor.

Den måde, vi laver dette 9 -polede stik på, er først at skubbe hanstifterne ind i Atari 9 -polede stik og derefter skubbe stikket, vi udskrev over det, og derefter slutlim til bagsiden af hanstifterne på bagsiden af stikket, vi udskrev. Når vi nu trækker stikene fra hinanden, skal stifterne stikke i den, vi udskrev, og være perfekt justeret.

Trin 5: Tilslut alt sammen

Tilslutning af alt
Tilslutning af alt

Så for at tilslutte alting skal vi gøre det som følger (husk at kontrollere hvilken farve, der svarer til hvilken pin på 9 -polet stik):

  • Den sorte ledning går til jorden på Arduino
  • Den orange ledning går til pin 3 på Arduino
  • Den grønne ledning går til pin 4 på Arduino
  • Den brune ledning går til pin 5 på Arduino
  • Den blå ledning går til pin 6 på Arduino
  • Den hvide ledning går til pin 7 på Arduino

Hvis dette overhovedet ser forvirrende, så tjek ledningsdiagrammet for en lille smule klarhed.

Trin 6: Upload kode

Koden, vi skal bruge, findes nedenfor. Vi kommer til at drage fordel af tastaturbiblioteket i denne kode. Hvad der sker, er, at vi har en masse if -udsagn, der angiver, at hvis en bestemt knap går lavt for at trykke på den tilsvarende tastatur.

Nu er tastaturbiblioteket heldigvis super let at bruge, f.eks. Til at kode Keyboard.press (119); angiver, at tastaturet 119 (119 er ascii for W) trykkes ned, og koden Keyboard.release (119); angiver, at tastaturnøgle 119 nu er frigivet. Så vi har If -sætninger, der angiver, om stiften er HØJ for at trykke på tasten, og om stiften er LAV for at slippe nøglen.

Vi drager også fordel af interne pull-up modstande i vores kode, så vi ikke behøver at bekymre os om lodning i vores kredsløb. Hvis du gerne vil vide mere om koden, skal du åbne den i Arduino IDE, og du skal se, at det meste er kommenteret.

Vi uploader derefter koden til Arduino Pro Micro og går videre til det næste trin.

Trin 7: Sæt sagen sammen

Sætter sagen sammen
Sætter sagen sammen
Sætter sagen sammen
Sætter sagen sammen
Sætter sagen sammen
Sætter sagen sammen

Så 3d -udskrivningsfilerne fra det foregående trin har ikke kun det 3D -printbare 9 -pins stik, men også et top- og bundstykke, der kan passe rundt om det og have al kredsløbet inkluderet inde i det. Så for at afslutte eller projektere skal vi udskrive disse to stykker.

Derefter limer vi til Arduino nede inde i bundstykket (stykket med plads til et USB -mikrokabel), så limer vi til 9 -polet stik ned foran i bundstykket. Når disse er både sikre og på plads, kan vi lime til det øverste stykke på og færdiggøre projektet! Nu før jeg gjorde dette, tilføjede jeg faktisk en overskydende mængde varm lim til indersiden, fordi det gør den lidt stærkere, men også tilføjer en vis vægt til enheden, så den ikke føles for spinkel.

Når disse stykker er samlet, vil du måske bemærke, at det ser lidt hårdt ud, især hvis du bruger en budget 3d -printer som mig, for at reparere dette og få udskrifterne til at se rigtig pæne ud, vi skal slibe og derefter male ydersiden af sag. Jeg kiggede på Atari -controlleren og kassen for inspiration til farverne på min enhed, jeg besluttede at lave den ene med en rødlig strimmel og den anden med noget trækorn, der matchede Atari's krop.

Trin 8: Brug det

Brug det
Brug det
Brug det
Brug det

Så nu hvor vi har lavet det, kan vi se på, hvordan du bruger det.

Så først vil vi først tilslutte vores Atari -controller til vores adapter, derefter tilslutter vi mikro -USB -kablet til vores computer, og du skal få en besked om, at du har tilsluttet et tastatur (husk på grund af tastaturbiblioteket, computeren mener, at dette er en tastatur)

Nu er måden nøglerne er kortlagt på som følger:

Op er W.

Til venstre er A.

Rigtigt er D.

Ned er S

og Fire er mellemrumstasten

Så chancerne er, at du bliver nødt til at gå ind i din emulator og gøre nogle nøglebinding for at sikre, at alt fungerer godt. Dette fungerer også på Android -telefoner, hvis du har et OTG -kabel.

Mange tak for din læsning, hvis du har spørgsmål id besvar dem gerne!

Anbefalede: