Spisu treści:
- Krok 1: Opracowanie modelu pracy
- Krok 2: Zbieranie komponentów
- Krok 3: Generowanie przeszkód: część A
- Krok 4: Generowanie przeszkód: część B
- Krok 5: SKOK i WYNIK
- Krok 6: Miłej gry
Wideo: Gra Dot Jump (bez użycia Arduino): 6 kroków
2024 Autor: John Day | [email protected]. Ostatnio zmodyfikowany: 2024-01-30 11:30
Przegląd
Cześć! Jestem Shivansh, student IIIT-Hyderabad. Jestem tutaj z moją pierwszą instrukcją, która jest grą inspirowaną grą Dinosaur Jump w Google Chrome. Gra jest prosta: przeskakuj nadjeżdżające przeszkody, aby zdobyć punkt. Jeśli się zderzysz, przegrywasz, a wynik jest resetowany.
Cechą wyróżniającą ten projekt jest to, że nie używa się Arduino ani żadnego innego mikrokontrolera. Pochodzi wyłącznie z podstawowych komponentów elektrycznych i obejmuje implementację maszyn skończonych (FSM) za pomocą diagramów logicznych itp.
Zainteresowany? Zacznijmy.
Wymagania wstępne:
- Podstawowa wiedza na temat komponentów elektrycznych, takich jak rezystory, kondensatory, układy scalone (IC).
- Podstawowa znajomość bramek logicznych (AND, OR, NOT itp.)
- Wiedza o działaniu Flip-Flop, Counter, Multiplexer itp.
UWAGA: Wyżej wymienione warunki wstępne mają na celu zrozumienie całego działania projektu. Osoba, która nie ma dogłębnej wiedzy na ten temat, może również zbudować projekt, wykonując kroki w instrukcji.
Krok 1: Opracowanie modelu pracy
Pierwszym zadaniem jest stworzenie modelu pracy dla projektu. Dopiero wtedy możemy zdecydować, jakie materiały będą potrzebne do realizacji projektu. Cały projekt można podzielić na trzy części.
Część 1: Generowanie przeszkód
Po pierwsze, musimy wygenerować losowe przeszkody, przez które kropka będzie mogła przeskoczyć. Przeszkody będą również miały postać impulsu punktowego, który przemieszcza się z jednego końca matrycy LED na drugi.
Do generowania przeszkód wykorzystujemy dwa obwody czasowe (załączone schematy), jeden z wysoką częstotliwością (timer HF), a drugi z niską częstotliwością (timer LF). Część „losowości” jest obsługiwana przez Timer HF, którego wyjście jest widoczne na każdym zboczu narastającym timera LF (który jest traktowany jako wejście CLK). Instrukcja generowania przeszkód to stan timera HF na każdym zboczu narastającym timera LF (1 -> Generuj przeszkodę | 0 -> Nie generuj przeszkody). Timer HF jest resetowany przy każdym skoku, aby zapewnić losowe generowanie przeszkód. Wyjście timera HF jest podawane jako wejście D do przerzutnika D (do przechowywania instrukcji dla następnego cyklu) z wejściem CLK jako wyjściem timera LF.
Gdy binarna instrukcja generowania przeszkód jest wyłączona, musimy wygenerować „impuls przeszkody” na tablicy LED. Robimy to za pomocą 4-bitowego licznika, którego wyjście jest przekazywane do demultipleksera 4x16 (DeMUX). Wyjściem DeMUXa będzie świecenie 16 odpowiednich diod LED.
Część 2: Skok
W przypadku akcji JUMP jako instrukcję przyjmiemy wejście Push Button. Po wydaniu instrukcji, dioda LED obiektu w linii przestaje się świecić, a inna dioda LED nad nią świeci, co oznacza skok.
Część-3: Wynik
Wynik będzie następujący: Jeśli obiekt ulegnie awarii, ZRESETUJ grę; w przeciwnym razie zwiększ wynik.
Kolizja może być wyrażona jako AND zarówno sygnału przeszkody, jak i sygnału obiektu dla położenia przeszkody na ziemi. Jeśli kolizja nie ma miejsca, licznik punktów jest zwiększany, co jest wyświetlane na parze wyświetlaczy 7-segmentowych.
Krok 2: Zbieranie komponentów
Wymagane komponenty są następujące:
- PCB x 1, płytka do krojenia chleba x 3
- Diody: zielona (31), czerwona (1), dwukolorowa: czerwona+zielona (1)
- Przycisk x 2
- Wyświetlacz 7-segmentowy x 2
- IC 555 x 3 [dla obwodów czasowych]
- IC 7474 x 1 (D FlipFlop)
- IC 7490 x 2 (licznik dekad) [do wyświetlania wyniku]
- IC 7447 x 2 (BCD na 7-segmentowy dekoder) [do wyświetlania wyniku]
- IC 4029 x 1 (4-bitowy licznik) [do wyświetlania przeszkód]
- IC 74154 x 1 (DeMUX) [do wyświetlania przeszkód]
- IC 7400 x 3 (NIE bramka)
- IC 7404 x 1 (bramka NAND)
- IC 7408 x 1 (bramka AND)
- Gniazda IC
- Źródło napięcia (5V)
Wymagane narzędzia:
- Lutownica
- Przecinak do drutu
Krok 3: Generowanie przeszkód: część A
Najpierw musimy skonfigurować obwody czasowe do generowania sygnału generowania przeszkód (HIGH/LOW).
Obwód zostanie ustawiony zgodnie z omówioną wcześniej teorią. Schemat obwodu dla tego samego znajduje się powyżej. Układ jest zaimplementowany na płytce stykowej (choć może być również zaimplementowany na płytce drukowanej) w następujący sposób:
- Umieść dwa układy scalone 555 i D Flip Flop (IC 7474) w poprzek przegrody płytki stykowej, z pewną wolną przestrzenią (4-5 kolumn) pomiędzy nimi.
- Połącz górny rząd płytki stykowej z dodatnim zaciskiem źródła napięcia, a dolny rząd z ujemnym zaciskiem.
- Wykonaj dalsze połączenia zgodnie ze schematem obwodu. Po niezbędnych połączeniach układ wyglądałby podobnie jak na załączonym powyżej obrazku.
UWAGA: Wartości rezystancji R1 i R2 oraz pojemności C oblicza się z następujących wzorów:
T = 0,694 x (R1 + 2*R2) * C
gdzie T jest wymagany okres czasu.
D = 0,694 x [(R1 + R2)/T] *100
gdzie D jest cyklem pracy, tj. stosunkiem czasu włączenia do czasu całkowitego.
W tym projekcie dla timera wysokiej częstotliwości T = 0,5 sek. i dla timera niskiej częstotliwości T = 2 sek.
Krok 4: Generowanie przeszkód: część B
Teraz, gdy wiemy, kiedy wygenerować przeszkodę, musimy ją teraz wyświetlić. Użyjemy 4-bitowego licznika, demultipleksera, timera i tablicy 16 diod LED. Dlaczego 16? Dzieje się tak, ponieważ będziemy mapować 4-bitowe wyjście licznika na 16 diod LED za pomocą demultipleksera. Oznacza to, że licznik będzie liczył od 0 do 15, a demultiplekser będzie włączał diodę o tym indeksie.
Rolą timera jest regulacja prędkości liczenia, czyli prędkości poruszania się przeszkody. Przeszkoda przesunie się o jedną pozycję w jednym okresie timera. Możesz bawić się różnymi wartościami R1, R2 i C, korzystając z równań z poprzedniego kroku, aby uzyskać różne prędkości.
Do matrycy LED przylutuj 16 diod w sposób liniowy ze wspólną masą. Dodatni zacisk każdej diody LED zostanie podłączony do DeMUX-a (po odwróceniu za pomocą bramki NOT, ponieważ DeMUX daje wyjście LOW).
Schemat obwodu dla tego samego znajduje się powyżej.
Krok 5: SKOK i WYNIK
Następną rzeczą jest akcja skoku. Aby wyświetlić skok, wystarczy umieścić diodę LED innego koloru nad matrycą, uziemić ją i podłączyć jej terminal +ve do przycisku. Podłącz drugi koniec przycisku do źródła napięcia.
Weź też inny przycisk, umieszczony obok poprzedniego i podłącz jeden z jego zacisków do +5V. Drugi zacisk przechodzi do bramki NAND (IC 7404) z drugim wejściem bramki NAND jako wejście do diody LED tuż pod diodą LED JUMP (tj. diodą obiektu). Wyjście bramki NAND przechodzi do RESET (PIN 2 i 3 obu liczników BCD) licznika wyników. W ten sposób zresetujemy wynik, jeśli jednocześnie zostanie podany sygnał OBJECT LED (w pozycji bazowej) i OBSTACLE, tj. obiekt i przeszkoda zderzyły się.
Zrób pewne rozmieszczenie, aby upewnić się, że oba przyciski są wciśnięte razem. Możesz użyć monety i przykleić do niej oba guziki.
Aby ustawić licznik wyników, postępuj zgodnie ze schematem obwodu załączonym powyżej (źródło zdjęcia: www.iamtechnical.com).
UWAGA: Podłącz piny 2 i 3 do wyjścia bramki NAND, aby zresetować wynik w przypadku kolizji z przeszkodą
Krok 6: Miłej gry
Otóż to. Skończyłeś z projektem. Możesz dodać do niego wykończenie, aby wyglądało dobrze. Reszta jest w porządku.
SMACZNEGO..!!
Zalecana:
Jak poddać recyklingowi telefony z Androidem do BOINC lub składanego zestawu bez użycia baterii: 8 kroków
Jak oddać telefony z systemem Android do recyklingu do BOINC lub składanego zestawu bez użycia baterii: OSTRZEŻENIE: W ŻADNYM WYPADKU NIE ODPOWIADAM ZA USZKODZENIA SPRZĘTU WYKONANE PRZEZ NINIEJSZY PRZEWODNIK. Ten przewodnik jest bardziej skuteczny dla użytkowników BOINC (osobisty wybór/powody), może być również używany do SKŁADANIA Ponieważ nie mam zbyt dużo czasu, będę
Kartonowa maszyna Gumball bez użycia rąk: 18 kroków (ze zdjęciami)
Bezdotykowa maszyna Gumball Cardboard: Stworzyliśmy bezdotykową maszynę Gumball przy użyciu micro:bit, płytki bitowej Crazy Circuits, czujnika odległości, serwa i kartonu. Stworzenie go i korzystanie z niego było „BLAST”! ? ? Kiedy umieścisz rękę w podstawie rakiety, czujnik odległości
Jak zrobić robota Line Follower bez użycia Arduino (mikrokontrolera): 5 kroków
Jak zrobić robota podążającego za linią bez użycia Arduino (mikrokontrolera): W tej instrukcji nauczę cię, jak zrobić robota podążającego za linią bez użycia Arduino. podążaj za linią. Nie będziesz potrzebować żadnego doświadczenia w programowaniu, aby
Czujnik przeszkód na podczerwień bez użycia Arduino lub jakiegokolwiek mikrokontrolera: 6 kroków
Czujnik przeszkód na podczerwień bez użycia Arduino lub dowolnego mikrokontrolera: W tym projekcie stworzymy prosty czujnik przeszkód bez użycia mikrokontrolera
Bezkosztowa lodówka / podstawka do laptopa (bez kleju, bez wiercenia, bez nakrętek i śrub, bez śrub): 3 kroki
Zero-kosztowa chłodnica / podstawka do laptopa (bez kleju, bez wiercenia, bez nakrętek i śrub, bez śrub): AKTUALIZACJA: PROSZĘ GŁOSOWAĆ NA MÓJ INSTRUKCJONALNY, DZIĘKI ^_^ MOŻESZ RÓWNIEŻ GŁOSOWAĆ NA MÓJ INNY KONKURS WPIS NA www.instructables.com/id/Zero-Cost-Aluminum-Furnace-No-Propane-No-Glue-/ LUB MOŻE GŁOSUJ NA MOJEGO NAJLEPSZEGO PRZYJACIELA