Obsah:

Radový LED displej Arduino hry: 7 krokov (s obrázkami)
Radový LED displej Arduino hry: 7 krokov (s obrázkami)

Video: Radový LED displej Arduino hry: 7 krokov (s obrázkami)

Video: Radový LED displej Arduino hry: 7 krokov (s obrázkami)
Video: Arduino Návod: Teploměr se zapisovačem teplot | Česky (FilipProjects) 2024, Júl
Anonim
Image
Image
Hlavné komponety
Hlavné komponety

alias herný systém s LED rebríkovým displejom.

Attiny-85 vybavený hardvérom a softvérom na hranie akčných „video“hier na in-line LED displeji.

Má multiplexovaný 12 LED rebríkový displej a podporuje až 6 tlačidlových vstupov a voliteľný zvukový výstup.

Obsahuje 4 hry zručnosti s rôznymi úrovňami obtiažnosti a niekoľkými variáciami (aktualizované na 16 hier pri použití s MCU ATMega).

[Video]

Krok 1: Hlavné komponety

Svoj projekt som postavil modulárne (dve samostatné zostavy). Hlavná podsestava displeja; ktorý môže byť použitý samostatne. A podzostava vstupného tlačidla. Tak môžem znova použiť tlačidlo alebo zostavu displeja v inom projekte. To tiež umožňuje flexibilné možnosti montáže.

Vytiahol som tiež riadiacu linku na kolíkový konektor pre zostavu rebríka LED, aby som mohol použiť Arduino Nano (alebo Uno) na vývoj softvéru pre neho a jeho použitie v iných projektoch. Digispark nebude fungovať kvôli iným komponentom na jeho doske s plošnými spojmi.

Rozhodol som sa použiť rovnaké priradenia pinov pre LED rebrík ako v predchádzajúcich pokynoch, aby som uľahčil tým, ktorí už majú takú hardvérovú implementáciu, používanie softvéru v tomto návode, aj keď som nenašiel priradenia urobené pre najjasnejšiu logiku v softvér.

Dve linky medzi modulmi sú PB4 a uzemnenie. Pretože všetko, čo je na zostave s viacerými tlačidlami, sú odpory a prepínače, nie je to závislé na polarite a na obrátení pripojenia nezáleží.

S podporou viacerých tlačidiel je možné implementovať väčšiu škálu hier (alebo aplikácií). Dve hry v tomto návode je najlepšie hrať s dvoma tlačidlami. Štyri hlavné tlačidlá je možné použiť na priamy prístup k súvisiacej hre. Čoskoro implementujem hru, ktorá závisí od použitia všetkých štyroch hlavných tlačidiel.

Tento projekt používa až šesť tlačidiel. Štyri hlavné BTN 1-4, Tieto tlačidlá je možné detekovať jednotlivo, aj keď sú súčasne stlačené akékoľvek dve z nich. Ďalšie dve sú špeciálne tlačidlá, najskôr je to ekvivalent jediného tlačidla v predchádzajúcich projektoch, ktoré vytvára pevné spojenie medzi vstupom PB4 a zemou, tomu hovorím BTN0 alebo ESC, pretože tento prepínač je možné vždy zistiť a bude blokovať detekciu. ktoréhokoľvek z ostatných. Ďalším špeciálnym klávesom je funkčný kláves, ak ho stlačíte pri stlačení BTN 0-4, je ho možné detekovať a použiť na zmenu funkčnosti.

V tomto náčrte zručností používam:

  • FncKey+Btn1 návrat do režimu ponuky
  • Úroveň obtiažnosti FncKey+Btn2 (ak je najvyššia, vráťte sa na najnižšiu)
  • FncKey+Btn4 okamžitá pauza (pozastavenie pozastavíte stlačením ľubovoľného klávesu)
  • FncKey + Btn 0 alebo 3 nie sú definované.

Krok 2: Zoznam dielov

Zoznam položiek
Zoznam položiek

Požadované diely

  • LED diódy, červené, žlté, zelené a modré sa im páčia
  • Dosky plošných spojov podobné položky, možno budete musieť kúpiť väčšiu dosku a narezať ju na požadovanú veľkosť.
  • kolíková zásuvka podobné položky
  • Čip Attiny-85
  • odporcovia
  • Použité tlačidlové spínače: Momentálne hmatové tlačidlá na doske plošných spojov 12x12x8mm a 6x6x6mm

odporúčané:

  • bzučiak 5v, aktívny typ
  • nanuková palica
  • Pás záhlavia s kolíkom 2,54 mm
  • Nástroj na navinutie a navinutie drôtu 30 ga https://www.ebay.com/itm/351798901037 vyššie uvedený odkaz je na drôt, ktorý je viac ako 36 ga. Kiež by som vedel o takom obchode pre skutočných 30 ga. drôt

Krok 3: Hlavné body stavby

Hlavné prvky stavby
Hlavné prvky stavby
Hlavné prvky stavby
Hlavné prvky stavby
Hlavné prvky stavby
Hlavné prvky stavby
Hlavné prvky stavby
Hlavné prvky stavby

Na zostave hlavnej dosky mám elektricky rovnaké ako ostatné predchádzajúce projekty rebríkov LED, ktoré by ste mohli chcieť odkázať na ďalšie základné konštrukčné smery

Na analógovom vstupe A2 (PB4) však nepoužívam externý pull up odpor, taktiež používam červenú, žltú, zelenú a modrú LED diódu, namiesto všetkých jednu farbu, čo je žiaduce pre niektoré hry, ktoré som pre tento hardvér vytvoril..

Tu sú priradenia I/O, ako sa očakáva v priložených náčrtoch softvéru:

Projekt MCU AT-85 Uno/Nano

Mená názov pin# názov brd --------- ---- --------------- Červená L1-3 PB3 2 D-11 Yel L4-6 PB0 5 D-8 Zelená L7-9 PB1 6 D-9 Modrá L10-11 PB2 7 D-10 Ain PB4/A2 3 A-2 Audio PB5 1 D-3

Jeden podstatný rozdiel je v tom, že mám dve tlačidlá zapojené do PB4. Prvý ide priamo z PB4 na zem, ale bez externého vyťahovacieho odporu (tomu hovorím BTN0). Mám tiež tlačidlový spínač (ktorý nazývam BTN1) prepojený so 75Kohmom v sérii k zemi. Túto hlavnú dosku je možné použiť bez montážnej dosky „Button“, ale s obmedzenými funkciami.

Aktuálne obmedzujúce odpory pre sady LED by mali byť zvolené na základe jasu rôznych farebných LED diód, ktoré používate, a toho, ako ich chcete mať. Skončil som s 91 ohmami pre červený set, 75 žltými, 430 zelenými a 150 ohmmi pre modrými. Tieto hodnoty sa môžu zdať nízke, ale pamätajte na to, že diódy LED sú multiplexované (spravidla oveľa menej ako 100% času).

Použil som 3 mm diódy LED a trochu ich od seba oddelil. Mal som nohy LED obkročmo nad palicou z Popsicle. Takto všetci obstáli v rovnakom množstve a nad všetkými ostatnými komponentmi. V určitom bode mám v úmysle namontovať jednotku tak, aby LED diódy vyčnievali cez rám.

Rozhodol som sa previazať drôtové prepojenia. Bez špeciálnej dosky s plošnými spojmi je to jednoduchšie ako spájkovanie na tesných miestach s veľkým počtom prepojení; nemá tendenciu vyrábať šortky a v prípade chyby sa dá jednoduchšie prepojiť. Pri všetkých prúdoch v mikrokontroléri a okolo neho v miliampéroch postačuje 30 ga vodič.

Tlačidlá a súvisiace odpory:

Vymyslel som jedinečnú konfiguráciu (druh dvojitého Y) rezistorov a tlačidiel, aby softvér dokázal rozpoznať jednotlivé a dvojité stlačenia tlačidiel (teoreticky je možné identifikovať akúkoľvek kombináciu týchto štyroch tlačidiel). Skúsil som niekoľko konfigurácií s veľkým počtom odporových hodnôt v hárku a hľadal najlepšiu konfiguráciu, potom som ich simuloval v softvéri a vyskúšal všetky možné kombinácie odporov, aby som našiel sadu (ktorú používam), ktorá by vytvorila maximum z minimálneho rozdielu. analógových nameraných hodnôt medzi každým a stlačením jedného alebo dvoch tlačidiel. Usporiadal som ich tak, aby boli odlišné najmä Btn1, Btn4 a Btn1+4.

Pozri vyššie uvedený diagram tlačidlovej siete.

Musíte zakryť všetky káble, ktoré sa navzájom spájajú s PB4 (a prípadne prepínať kontakty a odpory) elektrickou páskou, horúcim lepidlom alebo niečím iným, čo vôbec nevedie, pretože obyčajný megaohmový odpor zničí schopnosť určiť, ktoré spínače sú stlačené; a akýkoľvek taký kontakt, ktorý urobíte počas držania zhromaždenia, by to urobil.

Neskôr súvisiace pokyny:

4-tlačidlové hry-pomocou-jedného-analógového vstupu/

Dual-Power-for-Your-Portable-Micro-Controller-Proj/

3D tlačené puzdro na vstavanú LED konzolu a/

Krok 4: Ďalšie možnosti a poznámky

Ďalšie možnosti a poznámky
Ďalšie možnosti a poznámky

Voliteľný zvukový výstup

Voliteľný zvukový výstup používa PB5. Pripojil som 5v bzučiak v sérii s odporom 150 Ohm, aby som obmedzil jeho inak hlasný otravný výstup. Odporúčam vám použiť 50-200 ohmov. Dalo by sa paralelne zapojiť bzučiak s viečkom (2-10uf), aby bol menej chrapľavý, alebo použiť 10mm menič s 32 ohmovým reproduktorom vylomený zo sady lacných stereofónnych ušných púčikov, namiesto odporu a bzučiaka. Páči sa mi to, pokiaľ ide o zvuky hry, lepšie, ako to mám.

V predvolenom nastavení Attiny-85 používa PB5 ako reset, čo znamená, že zvuk bude fungovať, ale nebude mať zlý vplyv na žiadnu inú operáciu. Pri použití Nano alebo Uno bude zvuk fungovať (vychádza z D3). Aby ste pomocou Attiny získali zvuk, budete musieť zmeniť vnútornú konfiguráciu pinov, aby softvér mohol ako výstup používať PB5. Pri tomto postupe dochádza k významnému rozvetveniu; riaďte sa prosím týmito:

forum.arduino.cc/index.php?topic=178971.0

www.instructables.com/id/Simple-and-cheap-F…

a

Chyba alebo zlyhanie počas hry spravidla vyvolá cvrlikanie alebo krátky malinový zvuk. Keď dokončíte úroveň alebo vyhráte, hrá sa gratulačná hudba, ako na ping-pongu. Zistil som, že sprievodný zvuk skutočne zvyšuje radosť z hrania.

Alternatívne tlačidlá typu herného ovládača

Pre moje veľké deti, ktoré sú náročné na vybavenie, som vyrobil trvanlivé samostatné tlačidlá Btn1 a Btn4 na konci dlhých káblov. Viď foto. Tlačidlá som namontoval do úchytov na preosievanie; s 75Kohm inline s Btn1 a ~ 37Kohm inline s Btn4. V sérii s Btn4 som skutočne použil 36K, 33K alebo dokonca možno 39K. Vzhľadom na externé tlačidlá piestu by bolo vhodné mať oddelenú sadu kolíkov záhlavia na pripojenie externých ručných tlačidiel označovaných ako Btn1 a Btn4.

Potrebné je kvalitné napájanie

Ako zdroj energie môžete priamo použiť USB 5V výstup pre počítač, tablet, nástennú nabíjačku, powerbanku alebo 3,7 Li batériu.

Zistil som, že pri napájaní jednotky z niektorých USB nabíjačiek a niekoľkých powerbaniek USB si všimnem švihnutie a občasné zmeškané správanie a dokonca sa resetuje. Ak to zažijete, nájdite zdroj energie s lepšou reguláciou, inak vám môže pomôcť pridanie veľkého (100-1 000uf) kondenzátora na +V k zemi.

Testovanie

Zahrnul som aj testovací program, ktorý vám pomôže overiť a odladiť váš hardvér. Kód sa rozpracováva a je potrebné ho vyčistiť. Dúfam, že sa k tomu dostanem, ale zatiaľ to bude slúžiť vašim potrebám. Nedávno som ho použil iba s Nano poháňajúcim zostavy displeja a klávesnice. Na výber položiek z režimu ponuky môžete použiť takmer akékoľvek tlačidlo. Ak chcete demo/test ukončiť, znova stlačte ľubovoľné tlačidlo. Ak chcete ukončiť test tlačidiel (č. 4), stlačte klávesy FncKey+Btn1 alebo podržte kláves EscKey (uzemnenie PB4) alebo recyklujte napájanie.

Vzhľadom na rozdiely vo vnútorných odporoch MCU a toleranciách rezistorov bude možno potrebné vykonať určité úpravy, aby boli všetky stlačenia jedného a dvoch tlačidiel detekované správne. Na tento účel použite test-4 (aby ste to vybrali, pozrite sa na popis činnosti ponuky nižšie) testovacieho programu. Všimnite si toho, že som nepoužil externý pull-up rezistor, pretože som ďalej plánoval použitie pre vstup PB4, ktoré nie sú kompatibilné s akýmkoľvek pull up.

Krok 5: Prehľad softvéru

Náčrt LadderGames.ino implementuje štyri hry vrátane niektorých alternatívnych verzií.

Skicu je možné stiahnuť a spustiť z ATtiny-85, Nano, Uno atď. Programovanie na čip Attiny nájdete na: https://www.instructables.com/id/Program-an-ATtiny… a/alebo na programovanie váš čip ATtiny-85:

Zmeňte vnútorné hodiny ATtiny85 na 8 MHz, pretože výkon je pre hru požadovaný. Pozri:

forum.arduino.cc/index.php?topic=276606.0

Tento náčrt by mal byť spätne kompatibilný s väčšinou starších rebríkových projektov ATtiny-85 vedených bez zmeny, ale bude mať obmedzenú funkčnosť.

Obsluha ponuky

Pri štarte prebieha kontrola stavu vo forme pretiahnutia diód LED a sady pípnutí. Potom prejde do režimu hlavnej ponuky. Každá sada LED jednej farby sa rozsvieti niekoľko sekúnd za sebou. Hra sa vyberá stlačením tlačidla, keď svieti súvisiaca sada, hra 1: červená, hra 2: žltá, hra 3: zelená, hra 4: modrá. V režime ponuky je možné stlačením Btn2, Btn3, Btn4 prejsť priamo na hry 2, 3, 4. Po výbere hry budete musieť uviesť variáciu, ktorú chcete. Pre každú dostupnú variáciu bude blikať sada farebných LED diód. Jednoducho stlačte tlačidlo na požadovanom. Variácie, „verzie“pre každú hru, sú ďalej popísané nižšie.

Verziu jednu zo všetkých štyroch hier je možné hrať jediným tlačidlom. Buď je zapojený medzi PB4 a zemou (Btn-0), ako v predchádzajúcich pokynoch pre LED rebríky, alebo pomocou spínača, ktorý spája zaťaženie 75k so zemou (Btn-1). Každá z týchto možností bude fungovať v hrách, keď pokyny hovoria o nešpecifickom stlačení tlačidla.

Na ukončenie akejkoľvek hry môžete použiť klávesy FncKey+Btn1, podržte EscKey (aka: Btn0) 1-2 sekundy alebo vypnite napájanie.

Krok 6: Hranie hier

Hra 1: Push-It

Toto je adaptácia mojej hry „Push-It“podľa jedného z mojich predchádzajúcich pokynov

www.instructables.com/id/Play-a-Game-with-a…

Cieľom hry je stlačiť počet žmurknutí a počet rozsvietených diód LED na čo najväčší počet. Push-It sa spustí niekoľkými bliknutiami, ktoré sa potom zopakujú. Ak stlačíte tlačidlo po poslednom záblesku v sérii a keď by potenciálne mohol existovať ďalší, rozsvieti sa ďalšia LED dióda a počet zábleskov sa zvýši o jednu. Pokiaľ však „zatlačíte“pred alebo po časovom období prípadného dodatočného záblesku, počet zábleskov v súprave sa zníži.

Zakaždým, keď sa vám podarí zvýšiť počet zábleskov, úroveň obtiažnosti sa zvýši, pretože načasovanie sa trochu zrýchli, a tým je ťažšie a ťažšie sa dostať k vyššiemu počtu zábleskov.

Aktuálne počtové číslo je uložené do pamäte EEPROM pre neskoršie reštartovanie na rovnakej úrovni.

Hra 2: Ping-Pong

Skvelá (aj keď jediná) súťažná hra pre dvoch hráčov tu; kde loptička (jediný lúč svetla) prechádza z jednej strany na druhú, rýchlejšie a rýchlejšie, zakaždým, keď sa vráti, úderom.

Tento jeden rad svetiel som prvýkrát implementoval cez tlačidlové svetlá na prednom paneli leteckého super-mini počítača v 70. rokoch minulého storočia.

Aby bola loptička zasiahnutá tam a späť, musí na ňu padnúť príslušné tlačidlo (stlačené tlačidlo), keď je v koncovej polohe (posledná dióda LED). Prvá strana, ktorá minula, prehráva a svetlá na víťaznej strane blikajú.

Existujú dve variácie, jedna vyžaduje iba jedno tlačidlo (Btn 0 alebo 1), ktoré odpáli loptičku na oboch koncoch; a druhá verzia je pre dve osoby hlava -nehlava, ktorá vyžaduje dve tlačidlá; tlačidlo 1 na ľavej strane a tlačidlo 4 alebo 0 na druhej strane. Uprednostňuje sa použitie tlačidiel 1 a 4, pretože sa nebudú navzájom rušiť; každý môže byť zasiahnutý, aby vrátil loptu z jej konca bez ohľadu na stav druhého tlačidla.

Víťazom mítingu je vždy server ďalšieho.

Hra 3: Strelecká galéria

Postrieľajte všetky ciele (svetlá) a dokončite tak úroveň. Na každej vyššej úrovni je akcia rýchlejšia.

Existujú dve verzie; jeden, kde je web pevný a ciele sa pohybujú a druhý, kde sa pohybuje web a ciele sú nehybné. V každom prípade zásah vyrazí svetlo cieľa; a zmeškanie spôsobí vyskočenie cieľa. Keď je cieľ v dohľade, zrak sa rozsvieti jasnejšie, inak je tmavý.

Vo verzii jedna zrak začína vľavo (dole) a skenuje doprava. Vo verzii 2 je zameriavač upevnený uprostred, zatiaľ čo cieľ sa pohybuje sprava doľava. Pri pohľade na kód existujú strašidelné verzie 3 a 4, ktoré je možné aktivovať, ale vlastnú pohodu ohrozujete na vlastné riziko.

Hra 4: JumpMan

Ide o to, že prechádzate hernou úrovňou, kde prichádzajú objekty, po ktorých musíte preskakovať a ako postupujú, prichádzajú rýchlejšie. V ďalšej verzii hry sú aj objekty nad hlavou, pod ktoré sa musíte zohnúť.

Vo verzii jedna existujú iba objekty na preskakovanie. Na skok musíte stlačiť tlačidlo, keď sa objekt dostane do poslednej bunky vľavo; ktorý sa rozjasní, keď k tomu dôjde. Ak chcete preskočiť 2 alebo viac po sebe idúcich predmetov, musíte skočiť (stlačiť) na prvý a vo zvyšku podržať tlačidlo.

Vo verzii 2 sú pridané objekty nad hlavou (blikajúce). Vyskočia skokom počas bunky pred ňou a uvoľnia sa, keď je v koncovej bunke. Naraz môže blikať iba jedna réžia, takže akonáhle jedna prejde, môžete na sebe vidieť iného (predtým neblikajúceho). Nikdy nebudú existovať po sebe idúce režijné náklady, ale môžu byť v blízkosti jedného alebo viacerých skokových (balvanitých) predmetov.

Vo verzii 3 hry musíte použiť samostatné tlačidlo pre režijné objekty (Btn- 2, 4 alebo 0 podľa vášho výberu); skoky potom vyžadujú Btn-1.

Akonáhle ste zvládli ďalšie štyri objekty, než v ktorých ste neuspeli, postúpite na úroveň; dôjde k zvukovým a vizuálnym gratuláciám a potom k obnoveniu vyššej rýchlosti. Získanie pomocou sady po sebe idúcich predmetov sa počíta rovnako ako jeden individuálny objekt.

Odporúčame vám, aby ste si vytlačili prevádzkové pravidlá týchto hier a pred hraním hry, ktorú ste nedávno nehrali, si ich znova prečítajte. V opačnom prípade sa môžete frustrovať; myslíme si, že hra nefunguje správne, keď je taká, ale vy a hra máte rôzne spôsoby a očakávania. Ja sám som tomu viac než párkrát prepadol.

Krok 7: Aktualizácie, ďalšie hry

Image
Image

Vyrobil som 3D tlačené puzdro na konzolu, do ktorého je možné umiestniť rebríkový LED displej a tlačidlá.

Vymyslel som viac hier, ktoré využívajú tento hardvér. Pozrite sa na ne a zabavte sa:

Nové hry od „Whack a Mole“po „Tug of War“

December 2016. Teraz, na konci vyššie uvedeného odkazu, je jednotná verzia kódu vrátane všetkých 12 hier.

17. februára 2017: Tu je najnovšia herná sada pre tento projekt, teraz so 16 hrami (náčrt nižšie). To bude fungovať na akejkoľvek implementácii MCU s pamäťou flash programu 32 kB. Napriek tomu je možné do ATtiny zaradiť jednu až tri alebo štyri zo 16 hier. Odporúčam používať arduino Nano 3. Poslednými 4 pridanými hrami sú preteky „Le Mans“, súťaž v spreji „sprej“na hlavu.

Vďaka rozsiahlejšiemu a rozmanitejšiemu hraniu týchto hier je možné zlepšiť ich herné schopnosti a užiť si ich tak môžu hráči všetkých úrovní. Myslím si, že v pretekoch Le Mans je veľký priestor na zlepšenie prostredníctvom návrhu rozloženia tratí a načasovania hry.

Napísal som asi 10 ďalších aktivít/hier/funkcií, z ktorých niektoré dúfam sprístupním na jeseň 2017.

Aj tieto jednoriadkové hry je možné upraviť na dvojriadkový LCD displej 2x16 s jedným riadkom herných objektov a druhým na text. Trochu som toho urobil, ale keďže mám k projektom zálohu, tak ako vidím, neviem, kedy a či vôbec sa k tomu dostanem. Ak má teda niekto motiváciu prijať a optimalizovať tieto hry pre LCD 2x16, podeľte sa so mnou a ostatnými.

Okrem 4 nových hier tu v Menu_16Games.ino som priložil svoj projekt a vytvoril súvisiace návody: Inline herná konzola LED a napájanie prenosného projektu MCU.

Dúfam, že si mnohí nájdu čas a… Užite si tieto hry.

Skupinová hra: 1– červená 2- žltá 3- zelená 4- modrá

1 červená PushIt PingPong ShootEmUp JumpMan 2 Yel QuickDraw Tug_a_War Chicken Hot_Hands 3 Grn Le_Mans Spray PIG BiFunc 4 Blu SimonSays Whack_Mole Sea_Hunt Flip_d

2. september 2017: Vylepšená schopnosť práce so starými špinavými hlučnými tlačidlami externého joysticku v hre hlava-hlava (skupina 2).

13. december 2017: Vylepšené spracovanie odskoku tlačidiel a usadzovania meraní, vyriešené drobné problémy. Skúšal som použiť kondenzátor na analógovom vstupnom riadku tlačidla, ale aby bol účinný, viedol k pomalému usadzovaniu meraní, ktoré produkovalo falošné identifikácie úrovní alebo softvér čakal tak dlho. táto rýchla herná akcia bola ohrozená.

Apríl 2018: Zistil som, že 5/8 kompresné spojky robia skvelé telá pre tlačidlá v štýle externého piestu. Keďže moje deti ich pár radi používajú, pridal som kolíkové kolíky, aby sa dve z nich ľahko spojili (ako Btn1 a Btn4).

Všimnite si toho, že som v októbri minulého roku vytvoril ďalší projekt, ktorý je postavený na hardvéri tohto návodu. Je to v halloweenskom duchu a môže to byť veľa zábavy, obzvlášť pre deti. Inštrukcie: Zariadenia ovplyvňujúce prízračnú psychiku

Odporúča: