
Turinys:
2025 Autorius: John Day | [email protected]. Paskutinį kartą keistas: 2025-01-23 14:59
Sekite daugiau autoriaus:


Apie: Aš esu mecatronikos inžinierius ir man patinka gaminti daiktus! Aš dirbu su „Arduino“, kuriu žaidimus ar „IoT“. Man patinka atrasti naujų dalykų ir daryti viską, ką galiu. Daugiau apie ClemNaf »
Sveiki visi !
Šioje pamokoje aš jums parodysiu, kaip sukūriau du žaidėjus „Connect 4“su „arduino nano“. „RGB Led“rodo žaidėjo pėstininką, o grotuvas mygtukais pasirenka, kur jį pastatyti.
Šios instrukcijos triukas yra valdyti didelį įėjimų ir išėjimų kiekį: 49 RGB šviesos diodus ir 3 mygtukus. Rekomenduoju perskaityti visus veiksmus prieš pradedant savo Connect4. Jie yra daug sudėtingų dalių ir būsite užblokuoti, jei nesukursite tinkamo protokolo.
Atsiprašau, kad statydamas nepadariau daug nuotraukų, tai pirmas pamokomas dalykas, todėl uždrausiu keletą esminių veiksmų. Būk malonus ir įspėk mane!
Nesivaržykite komentuoti, jei padariau keletą klaidų. Jei reikia, pataisysiu.
1 žingsnis: planavimas
Pirmasis žingsnis yra planavimas.
Norite žaisti „Arduino“žaidimą, tačiau prieš tai turite pasirinkti tam tikrą komponentą. Šis nurodymas nėra brangus, „Connect 4“sudaro „Leds“ir „arduino nano“. Taigi nedvejodami rinkitės nuoseklią dėžutę arba elektroninę grandinę.
Jei skaudus nevykėlis gauna geležinį, atsparesnis!
Atminkite, kad naudosite 49 RGB lemputes, kurias turėsite valdyti ir prijungti. Taigi jums reikės erdvės ir lankstumo.
Kai kuriais atvejais turėjau kartoninę dėžę, atitinkančią tokio dydžio, kokio norėjau savo žaidimui. Aš jį naudojau, bet galite pasirinkti medinę dėžę.
Būk kūrybingas !
2 žingsnis: ko jums reikės

-
Medžiagos
- 49x RGB šviesos diodai
- 2x 74HC595
- 7x NPN tranzistorius pn2222
- 3x mygtukai
- 1x maitinimo jungiklis
- 7x 100Ω rezistoriai
- 7x 1kΩ rezistoriai
- 3x 10kΩ rezistoriai
- 2x lentos
- dėžė
- 1x 9V baterija
- viela
-
Įrankiai
- Lituoklis
- Voltmetras
- Vielos pjaustytuvas
- Alavas
Būtinai paruoškite viską, to jums prireiks!
3 veiksmas: ar „Arduino Nano Fit“- „Shift Register“


Klasikinę „Connect4“žaidimų lentą sudaro 7 stulpeliai ir 6 eilutės. Turime papildomą eilutę, kurioje norime žaisti. Tiesą sakant, mes turime sukurti 7x7 tinklelį.
Gerai, dabar prasideda tikri dalykai. Kaip valdyti 49 RGB lemputes tik naudojant „Arduino Nano“? Ar mums reikia 49 išėjimų? Daugiau?
Turime 2 spalvas, 49 šviesos diodus: 49*2 = 98 kaiščius, kuriuos galime valdyti, jei visi žemės elementai yra sujungti !! Geras priminimas: „Arduino Nano“turi 18 išėjimų!
Vienas iš būdų tai išspręsti yra padalinti lentą į eilę. Visi šviesos diodai, sulygiuoti vertikaliame stulpelyje, turi bendrą vienos spalvos anodą (+). Visi horizontalaus sluoksnio šviesos diodai turi bendrą katodą (-).
Dabar, jei noriu uždegti šviesos diodą viršutiniame kairiajame kampe (A1), aš tiesiog tiekiu GND (-) į A liniją, o VCC (+)-į 1 eilutės spalvą.
Būdas, kaip ją išspręsti, yra vienu metu uždegti tik vieną eilutę, tačiau tai padaryti taip greitai, kad akis neatpažintų, jog bet kuriuo metu šviečia tik viena eilutė!
Reikiamų išėjimų skaičius sumažėja nuo 49*3 = 147 iki 7*2 + 7 = 28 išėjimų. „Arduino Nano“turi tik 12 skaitmeninių išėjimų ir 6 analoginius išėjimus (kuriuos galima naudoti kaip skaitmeninę išvestį). Akivaizdu, kad 28> 18 ir turime prisiminti, kad turime 3 įvestis (patvirtinimas, pasirinkite kairę, pasirinkite dešinę).
Norėdami išplėsti prievadą, naudosime „Shift“registrą. Čia galite suprasti, kaip tai veikia. Tačiau daugiausia jį sudaro 3 įėjimai ir 8 išėjimai. Kai SH_CP pereina iš LOW į HIGH, DS nuskaitomas ir perduodamas į Q1 į Q8. Išvestį galima nuskaityti, kai ST_CP pereina iš LOW į HIGH.
Taigi mes galime valdyti 7 stulpelius su 3 įėjimais. Kadangi turime nuspalvinti, turėsime perjungti registrą.
Pažiūrėkime, kiek kaiščių liko:
- 7 pagrindai
- 3 - raudona spalva
- 3 - žalia spalva
- 3 mygtukai
Dabar turime 16/18 kaiščių. Norėdami optimizuoti programą, SH_CP ir tą patį kaištį naudosime ST_CP. Taigi panaudota 14 kaiščių. Naudodami šį kabelį galime būti tikri, kad bus įjungti tik žali arba tik raudoni.
4 žingsnis: grandinės schema

Tai mūsų „Connect 4.“diagrama. Ją suprojektavau naudodamas „Fritzing“(nemokamai). Turite nustatyti 7 eilučių šviesos diodų su tranzistoriais.
Tai yra „Arduino“smeigtukai:
- D0: nenaudojamas
- D1: nenaudojamas
- D2: 1 eilutė
- D3: 2 eilutė
- D4: 3 eilutė
- D5: 4 eilutė
- D6: 5 eilutė
- D7: 6 eilutė
- D8: 7 eilutė
- D9: nenaudojamas
- D10: dešinysis mygtukas
- D11: kairysis mygtukas
- D12: galiojantis mygtukas
- D13: SH_CP
- A0: ST_CP
- A1: raudonas DS
- A2: žalia DS
- A3 - A7: nenaudojamas
Ir pamainų registro kaiščiai:
- 1: vedė 2
- 2: vedė 3
- 3: vedė 4
- 4: vedė 5
- 5: vedė 6
- 6: vedė 7
- 7: nenaudojamas
- 8: žemė
- 9: nenaudotas
- 10: 10K rezistorius ir +5V
- 11: „Arduino D13“
- 12: „Arduino A1“arba „A2“
- 13: žemė
- 14: „Arduino A0“
- 15: vedė 1
- 16: +5 V.
5 žingsnis: pritvirtinkite „Leds“


Mano šviesos diodų tinkleliai atrodo baisiai, tai buvo mano pirmasis projektas švelniai!
Manau, kad galite rasti geresnį sprendimą, kaip ant dėžutės pritvirtinti šviesos diodus. Šiame žingsnyje turite būti kūrybingas ir išradingas. Negaliu tau padėti, nes neradau gero sprendimo …
Atminkite, kad turėsite lituoti visus šviesos diodų kaiščius ir vielos linijas bei stulpelius. Jis turi būti prieinamas, „Arduino“ir „Register“bus su jais susiję.
Aš rekomenduoju jums išbandyti kiekvieną „Leds“prieš jį lituoti, po to, kai bus per vėlu … Daugiau galite naudoti skirtingą lentos liniją: jei pakeisite įžeminimo kaištį, bus lengviau juos sujungti.
6 žingsnis: litavimo grandinė

Aš naudoju 2 plokštes: vieną, kad sujungčiau šviesos diodus, o kitą - grandinei.
Jei buvote kruopštus ir toliaregis, jūsų eilutės ir stulpeliai yra lengvai prieinami ir gali būti prilituoti prie pagrindinės plokštės.
Neskubėk ! Tai raktas į sėkmę!
7 žingsnis: programa
Dabar turite „Connect4“. Norėdami ja pasinaudoti, turite įkelti tam tikrą kodą. Manasis yra visiškai funkcionalus ir gali būti naudojamas.
Atsisiųskite jį iš čia ir perkelkite į „Arduino Nano“.
Žinokite, kokius kaiščius naudojote, jei reikia, turėsite pakeisti tam tikrą kodą.
Galima atnaujinti: AI, laikas žaisti,…
Rekomenduojamas:
„Arduino Connect“keli „I2C“įrenginiai: 6 veiksmai

„Arduino Connect“keli „I2C“įrenginiai: Šioje pamokoje sužinosime, kaip prijungti kelis modulius su „I2C“ryšiu prie „arduino“. Žiūrėkite vaizdo įrašą! Mūsų atveju kaip pavyzdį naudosime 4 OLED ekranus, tačiau galite naudoti bet kuriuos kitus I2C modulius/ Pastaba: 4 OLED ekranai kartu
„SelfCAD Connect Surface“su kraštais ir viršūnėmis: 4 žingsniai

„SelfCAD Connect Surface with Edge“ir „Vertex“: šioje „Selfcad“pamokoje galite sužinoti, kaip prijungti viršūnę paviršiaus modelyje. Toliau galime sujungti į vieną objektą. Pasižiūrėk
„IOT Connect“: 7 žingsniai

„IOT Connect“: „IoT Connect“yra atviro kodo projektas, padedantis paleisti IoT. „IoT Connect“suteiks jums ESP8266, „AutoCad Eagle“bibliotekų, lentos failų, schemos ir debesies platformos, skirtos jutiklių duomenims priimti ir maitinimo relėms valdyti
„VHDL Basys3: Connect 4“žaidimas: 5 žingsniai

„VHDL Basys3: Connect 4“žaidimas: Įvadas: Tai „Connect 4“skaitmeninis loginis žaidimas, sukurtas VHDL naudojant „Vivado“programinę įrangą ir užprogramuotas „Basys3“lentoje. Šio projekto konstrukcija ir dizainas yra tarpiniai, tačiau naujokai gali nukopijuoti veiksmus ir sukurti skaitmeninį vaizdą
„DWMM0 Mobile Connect Mezzanine“: 3 žingsniai

„DWMM0 Mobile Connect Mezzanine“: tai paprastas DWMM0 antresolės naudojimo nuotoliniams duomenų registravimui demonstravimas. Šios programos kliento pusėje veikia python scenarijus (client.py), atsakingas už GNSS/GPS duomenų nuskaitymą ir perdavimą į serverio pusę (per TCP/IP pr