Turinys:

„Tap Tap Rainbow“- dviejų žaidėjų greito reagavimo žaidimas: 4 žingsniai (su paveikslėliais)
„Tap Tap Rainbow“- dviejų žaidėjų greito reagavimo žaidimas: 4 žingsniai (su paveikslėliais)

Video: „Tap Tap Rainbow“- dviejų žaidėjų greito reagavimo žaidimas: 4 žingsniai (su paveikslėliais)

Video: „Tap Tap Rainbow“- dviejų žaidėjų greito reagavimo žaidimas: 4 žingsniai (su paveikslėliais)
Video: Высокая плотность 2022 2024, Lapkritis
Anonim
Palieskite „Tap Rainbow“- dviejų žaidėjų greito reagavimo žaidimas
Palieskite „Tap Rainbow“- dviejų žaidėjų greito reagavimo žaidimas
Palieskite „Tap Rainbow“- dviejų žaidėjų greito reagavimo žaidimas
Palieskite „Tap Rainbow“- dviejų žaidėjų greito reagavimo žaidimas
Palieskite „Tap Rainbow“- dviejų žaidėjų greito reagavimo žaidimas
Palieskite „Tap Rainbow“- dviejų žaidėjų greito reagavimo žaidimas

LED eilutė naudoja tik 3 laidus. Taigi man reikėjo tik 5 V maitinimo (raudona), įžeminimo (balta) ir signalo (žalia). Jei taip pat naudojate „Espruino“, būtinai peržiūrėkite vadovėlius jų svetainėje. RGB šviesos diodų lemputė yra labai aiškiai paaiškinta.

Aš perpjoviau LED eilutę į 3 dalis iš 6 šviesos diodų ir tada sujungiau juos su papildomais laidais. Tokiu būdu visi šviesos diodai naudoja tą patį masyvą, kuris sutaupo man 2 papildomus prievadus ir lengviau programuoti.

Sujungti mygtukus buvo šiek tiek sunkiau. Aš norėjau naudoti kuo mažiau prievadų lentoje, todėl galvojau naudoti I2C sąranką, bet tai žiauriai nepavyko. Negalėjau priversti to veikti, todėl prižiūrėjau ką nors kita.

Galų gale radau „Espruino“pamoką, skirtą klaviatūrai, kuri yra prijungta kaip klaviatūros matrica su 16 mygtukų. Tai atrodė gana paprasta įgyvendinti, todėl aš nuėjau tuo keliu. Man reikėjo tik 12 mygtukų, todėl man reikėjo 3x4 matricos.

Klaviatūros matricoje visi mygtukai yra sujungti į stulpelius ir eilutes. Tokiu būdu jums reikia tik 8 prievadų 16 mygtukų. Mano sąrankoje man reikėjo tik 2 kartus 6 mygtukų, taigi iš viso 7 prievadai lentoje (4 eilutės su 3 stulpeliais). Tai vis tiek yra daug mažiau, nei prijungti 12 mygtukų atskirai, o „Espruino“klaviatūros modulį naudoti tikrai paprasta.

Radau gerą vadovėlį apie klaviatūrą apie grandinės pagrindus, kurie man labai padėjo prijungti mygtukus.

Kai pavyko prijungti visus mygtukus, labai nusivyliau, nes jungtys nuolat nuslydo ir jau buvo vėlu. Taigi viską suklijavau ant dėžutės ir visai pamiršau nufotografuoti. Taip pat nėra labai patogi vartotojui tą dieną, kai man reikia iš naujo prijungti laidą vienoje iš dėžių.

3 žingsnis: kodo rašymas

Kodo rašymas
Kodo rašymas
Kodo rašymas
Kodo rašymas
Kodo rašymas
Kodo rašymas

Espruino yra užprogramuotas „Javascript“, todėl man tai yra daug mažiau sudėtinga, nei rašyti „Arduino“kodą.

Kodas gali būti šiek tiek optimizuotas, tačiau šiuo metu jis atlieka savo darbą. Taip pat yra klaida (gal tai savybė: D), kai negalima vienu metu paspausti 2 mygtukų. Tačiau žaisti šį žaidimą yra šiek tiek sudėtingiau (skaityti varginančią), todėl problemos dar netyriau, man tai patinka (jei prarandate, tai labai vargina).

Šviesos diodų programavimas yra gana paprastas. Kiekvienas eilutės šviesos diodas yra 3 reikšmės masyve. Taigi, jei turite tokį masyvą kaip [255, 0, 0, 255, 0, 0], pirmieji 2 šviesos diodai yra raudoni.

Greita apžvalga.

1. Pirmiausia apibrėžiu savo spalvas ir sukuriu visų spalvų masyvą

2. Tada aš apibrėžiu grotuvo nustatymus, pvz., Mygtukų ID ir tai, kokį indeksą kiekvienas žaidėjas turi LED eilutėje

3. Žaidimo pradžioje aš sumaišau visas vaivorykštės masyvo spalvas ir išsaugoju šią informaciją naujame masyve. Tada iš naujo nustatau visus šviesos diodus ir užsidegu viršutinius šviesos diodus su maišytomis vaivorykštės spalvomis

4. Galiausiai turime kodą, kuris klauso svarbiausių įvykių. Aš saugoju visas įvestis į masyvą ir patikrinu, ar šis masyvas yra teisinga seka.

5. Gražus papildymas, kurį vakar pridėjau, kad nugalėtojai bus gydomi nuostabia vaivorykštės animacija: D

Turiu omenyje dar daug dalykų, kad būtų smagiau, bet tai bus vėliau;)

Negaliu įkelti viso šaltinio kodo, todėl įdėjau jį į „Gitlab“

gitlab.com/marzsman/tap_tap_rainbow

4 žingsnis: smagiai praleiskite laiką !!! ?

Image
Image
Pasilinksmink su juo !!! ?
Pasilinksmink su juo !!! ?

Kai mes su dukra užsirašėme jos idėją ir pagalvojome, kaip ji turėtų atrodyti, man akimirksniu patiko ši idėja. Bet turiu pasakyti, niekada nemaniau, kad žaisti bus taip smagu. Mes jau turėjome dideles vaivorykštės bakstelėjimo kovas: D

Tikiuosi, kad kam nors bus taip smagu, kaip mums.

Tai taip pat pirmas pilnas projektas, kurį sukūriau per tokį trumpą laiką ir ką aš padariau su savo 8 metų dukra IR tai taip pat yra mano pirmasis pamokomas dalykas (PAGALIAU!), Taigi taip, tam tikra prasme tai man labai ypatingas projektas. Taigi tikiuosi patiks!

Jei turite klausimų ar pasiūlymų, malonu juos išgirsti!

Rekomenduojamas: