Tartalomjegyzék:

Dot Jump játék (Arduino használata nélkül): 6 lépés
Dot Jump játék (Arduino használata nélkül): 6 lépés

Videó: Dot Jump játék (Arduino használata nélkül): 6 lépés

Videó: Dot Jump játék (Arduino használata nélkül): 6 lépés
Videó: BTT SKR2 - A4988Stepper and CR10 (Creality) display setup 2024, November
Anonim
Dot Jump játék (Arduino használata nélkül)
Dot Jump játék (Arduino használata nélkül)

Áttekintés

Szia! Shivansh vagyok, a IIIT-Hyderabad hallgatója. Itt vagyok az első oktatható játékommal, amely a Google Chrome Dinosaur Jump játékának ihlette játék. A játék egyszerű: Ugorj át a bejövő akadályokon, hogy pontot szerezz. Ha összeütközik, laza és a pontszám visszaáll.

Ennek a projektnek a kiemelkedő jellemzője az, hogy nincs használatban Arduino vagy más mikrokontroller. Tisztán alapvető elektromos alkatrészekből származik, és magában foglalja a véges állapotú gépek (FSM) megvalósítását logikai diagramok stb.

Érdekelt? Lássunk neki.

Feltételek:

  • Alapvető know-how az elektromos alkatrészekről, mint például ellenállások, kondenzátorok, integrált áramkörök (IC).
  • A logikai kapuk alapvető ismeretei (ÉS, VAGY, NEM, stb.)
  • Flip-Flop, Counter, Multiplexer stb.

MEGJEGYZÉS: A fent felsorolt előfeltételek a projekt teljes működésének megértéséhez szükségesek. Az, aki nem rendelkezik mélyreható ismeretekkel, felépítheti a projektet az oktatható utasítás lépéseit követve.

1. lépés: A működési modell kidolgozása

A működési modell kidolgozása
A működési modell kidolgozása
A működési modell kidolgozása
A működési modell kidolgozása

Az első feladat egy működő modell létrehozása a projekthez. Csak ezután dönthetünk a projekthez szükséges anyagokról. Az egész projekt három részre bontható.

1. rész: Akadályképződés

Először is véletlenszerű akadályokat kell generálnunk ahhoz, hogy a Pont átugorjon. Az akadályok pontszerű impulzus formájában is megjelennek, amely a LED tömb egyik végéről a másikra mozog.

Az akadályok létrehozásához két időzítő áramkört használunk (kapcsolási rajzok csatolva), az egyik nagyfrekvenciás (HF időzítő) és a másik alacsony frekvenciájú (LF időzítő). A „véletlenszerűség” részt a HF időzítő kezeli, amelynek kimenete az LF időzítő minden emelkedő szélén látható (amelyet CLK bemenetnek veszünk). Az Akadálygenerálási utasítás az LF időzítő minden emelkedő szélén található HF időzítő állapota (1 -> Létrehozás | 0 -> Ne generáljon akadályt). A nagyfrekvenciás időzítő minden „ugráson” RESET -re áll, hogy véletlenszerű akadályokat generáljon. A HF időzítő kimenete a D Flip Flop D-bemeneteként (a következő ciklus utasításainak tárolására) kerül megadásra, CLK bemenet pedig LF időzítő kimenetként.

Miután az akadályok generálására vonatkozó bináris utasítás elkészült, létre kell hoznunk az „akadályimpulzust” a LED -tömbön. Ezt egy 4 bites számláló segítségével tesszük, amelynek kimenetét egy 4x16 demultiplexer (DeMUX) kapja. A DeMUX kimenetének köszönhetően a 16 LED világít.

2. rész: A JUMP

A JUMP művelethez a nyomógombos bemenetet fogjuk használni utasításként. Az utasítás megadása után az in-line objektum LED-je nem világít, és egy másik LED világít felette, jelezve az ugrást.

3. rész: Eredmény

Az eredmény a következő lesz: Ha az objektum összeomlik, állítsa alaphelyzetbe a játékot; egyébként növelje a pontszámot.

Az ütközés mindkettő, az akadályjelzés és az objektumjelzés ÉS -ként fejezhető ki az akadály földi helyzetére vonatkozóan. Ha az ütközés nem következik be, akkor a pontszámláló növekszik, amely egy 7 szegmenses kijelzőn jelenik meg.

2. lépés: Összetevők összegyűjtése

A szükséges összetevők a következők:

  • NYÁK x 1, kenyérlap x 3
  • LED -ek: zöld (31), piros (1), biColor: piros+zöld (1)
  • Nyomógomb x 2
  • 7 szegmenses kijelző x 2
  • IC 555 x 3 [időzítő áramkörökhöz]
  • IC 7474 x 1 (D FlipFlop)
  • IC 7490 x 2 (évtizedes számláló) [a pontszám megjelenítéséhez]
  • IC 7447 x 2 (BCD-7 szegmenses dekódoló) [a pontszám megjelenítéséhez]
  • IC 4029 x 1 (4 bites számláló) [akadály kijelzéshez]
  • IC 74154 x 1 (DeMUX) [akadálymegjelenítéshez]
  • IC 7400 x 3 (NEM kapu)
  • IC 7404 x 1 (NAND kapu)
  • IC 7408 x 1 (ÉS kapu)
  • IC aljzatok
  • Feszültségforrás (5V)

Szükséges eszközök:

  • Forrasztópáka
  • Drótvágó

3. lépés: Akadályképzés: A rész

Akadályképzés: A. rész
Akadályképzés: A. rész
Akadályképzés: A. rész
Akadályképzés: A. rész

Először is be kell állítanunk az időzítő áramköröket az akadályok generáló jelének (HIGH/LOW) előállításához.

Az áramkört a korábban tárgyalt elméletnek megfelelően állítják be. Ennek kapcsolási rajza fent található. Az áramkört egy kenyértáblán hajtják végre (bár PCB -n is megvalósítható) a következőképpen:

  • Helyezze a két 555 IC-t és a D Flip Flop-ot (IC 7474) a kenyértábla elválasztójára, és hagyjon üres helyet (4-5 oszlop).
  • Csatlakoztassa a kenyeretábla felső sorát a feszültségforrás pozitív csatlakozójához, az alsó sort pedig a negatív csatlakozóhoz.
  • A kapcsolásokat a kapcsolási rajz szerint végezze el. A szükséges csatlakoztatások után az áramkör hasonlít a fenti képhez.

MEGJEGYZÉS: Az R1 és R2 ellenállások és a C kapacitás értékeit a következő egyenletek segítségével számítják ki:

T = 0,694 x (R1 + 2 * R2) * C

ahol T szükséges Időtartam.

D = 0,694 x [(R1 + R2)/T] *100

ahol D a Duty Cycle, azaz az ON idő és a teljes idő aránya.

Ebben a projektben a nagyfrekvenciás időzítőnél T = 0,5 mp, az alacsony frekvenciájú időzítőnél pedig T = 2 mp.

4. lépés: Akadályképzés: B rész

Akadályképzés: B rész
Akadályképzés: B rész
Akadályképzés: B rész
Akadályképzés: B rész
Akadályképzés: B rész
Akadályképzés: B rész

Most, hogy tudjuk, mikor kell létrehozni az akadályt, most meg kell jelenítenünk. 4 bites számlálót, Demultiplexert, időzítőt és 16 LED-es tömböt fogunk használni. Miért 16? Ez azért van, mert a számláló 4 bites kimenetét a demultiplexer segítségével leképezzük a 16 LED-re. Ez azt jelenti, hogy a számláló 0 és 15 között fog számolni, és a demultiplexer bekapcsolja a LED -et ezzel az indexszel.

Az időzítő szerepe a számlálás, azaz az akadálymozgás sebességének szabályozása. Az akadály egy pozíciót eltol az időzítő egy időszakában. Játszhat különböző R1, R2 és C értékekkel az előző lépésben szereplő egyenletek segítségével, hogy különböző sebességeket kapjon.

A LED -mátrixhoz forrasztjon 16 LED -et lineárisan, közös alapon. Az egyes LED -ek pozitív kivezetése a DeMUX -hoz lesz csatlakoztatva (NOT -kapuval történő invertálás után, mivel a DeMUX LOW kimenetet ad).

Ennek kapcsolási rajza fent található.

5. lépés: AZ UGRÁS és az EREDMÉNY

A UGRÁS és az EREDMÉNY
A UGRÁS és az EREDMÉNY
A UGRÁS és az EREDMÉNY
A UGRÁS és az EREDMÉNY
A UGRÁS és az EREDMÉNY
A UGRÁS és az EREDMÉNY

A következő dolog az ugrás. Az ugrás megjelenítéséhez csak helyezzen egy különböző színű LED -et a mátrix fölé, földelje le, és rögzítse +gombját a gombhoz. Csatlakoztassa a nyomógomb másik végét a feszültségforráshoz.

Ezenkívül vegyen egy másik nyomógombot, amely az előző mellett helyezkedik el, és csatlakoztassa az egyik kivezetését +5V -ra. A másik terminál egy NAND kapuhoz (IC 7404) megy, a NAND Gate másik bemenete pedig a JUMP LED (azaz az objektum LED) alatti LED bemeneteként. A NAND Gate kimenete a RESET -re megy (mindkét BCD -számláló 2. és 3. PIN -kódja). Ezzel azt tesszük, hogy alaphelyzetbe állítjuk a pontszámot, ha mind az OBJECT LED (alaphelyzetben), mind az OBSTACLE jel egyszerre adódik, azaz a tárgy és az akadály ütköznek.

Gondoskodjon arról, hogy mindkét nyomógombot egymáshoz nyomják. Használhat egy érmét, és mindkét gombot hozzátapadhatja.

A pontszámláló beállításához kövesse a fenti csatolt kapcsolási rajzot (kép forrása: www.iamtechnical.com).

MEGJEGYZÉS: Csatlakoztassa a 2. és 3. tüskét a NAND Gate kimenetéhez, hogy az akadályokkal való ütközés esetén visszaállítsa a pontszámot

6. lépés: Jó játékot

Jó játékot!
Jó játékot!
Jó játékot!
Jó játékot!
Jó játékot!
Jó játékot!

Ez az. Végeztél a projekteddel. Hozzáadhat egy kis befejezést, hogy jól nézzen ki. A pihenés jó.

ÉLVEZD..!!

Ajánlott: