Innehållsförteckning:
- Steg 1: Utveckla arbetsmodellen
- Steg 2: Samla komponenter
- Steg 3: Hindergenerering: Del-A
- Steg 4: Hindergenerering: Del-B
- Steg 5: HOPPET och RESULTATET
- Steg 6: Lycka till
Video: Dot Jump Game (utan att använda Arduino): 6 steg
2024 Författare: John Day | [email protected]. Senast ändrad: 2024-01-30 12:44
Översikt
Hallå där! Jag är Shivansh, student vid IIIT-Hyderabad. Jag är här med min första instruerbara som är ett spel inspirerat av Google Chrome Dinosaur Jump -spel. Spelet är enkelt: Hoppa över inkommande hinder för att få en poäng. Om du kolliderar förlorar du och poängen återställs.
Höjdpunkten i detta projekt är att det inte finns någon användning av en Arduino eller någon annan mikrokontroller. Det härrör rent från grundläggande elektriska komponenter och innebär implementering av Finite State Machines (FSM) med hjälp av logiska diagram, etc.
Intresserad? Låt oss börja.
Förkunskaper:
- Grundläggande kunskap om elektriska komponenter som motstånd, kondensatorer, integrerade kretsar (IC).
- Grundläggande kunskaper i Logic Gates (AND, OR, NOT, etc.)
- Kunskap om arbete med Flip-Flop, Counter, Multiplexer, etc.
OBS: Förutsättningarna ovan är för att förstå hela projektets funktion. En som inte har fördjupad kunskap om detsamma kan också bygga projektet enligt stegen i den instruerbara.
Steg 1: Utveckla arbetsmodellen
Den första uppgiften är att skapa en arbetsmodell för projektet. Först då kan vi bestämma materialet som krävs för projektet. Hela projektet kan delas upp i tre delar.
Del 1: Hindergenerering
För det första måste vi generera slumpmässiga hinder för att Dot ska hoppa över. Hinder kommer också att vara i form av en punktpuls som rör sig från ena änden av LED -matrisen till den andra.
För att generera hinder använder vi oss av två timerkretsar (kopplade kretsscheman), en med en högfrekvens (HF -timer) och en annan med en lågfrekvens (LF -timer). "Slumpmässigheten" -delen hanteras av HF -timern vars utmatning ses på varje stigande kant av LF -timern (som tas som CLK -ingång). Hindringsgenerationsinstruktionen är tillståndet för HF -timern på varje stigande kant av LF -timern (1 -> Generera hinder | 0 -> Generera inte hinder). HF -timern återställs på varje "HOPP" för att säkerställa slumpmässiga hinder. HF-timerns utgång ges som D-ingång till en D Flip Flop (för lagring av instruktioner för nästa cykel) med CLK-ingång som LF-timerutgång.
När den binära instruktionen för hindergenerering är ute måste vi generera "hinderpulsen" på LED -matrisen. Vi gör det med hjälp av en 4-bitars räknare vars utmatning ges till en 4x16 demultiplexer (DeMUX). Utsignalen från DeMUX skulle få de 16 respektive lysdioderna att lysa.
Del-2: HOPPET
För JUMP -åtgärden tar vi tryckknappsinmatningen som instruktion. När instruktionen väl ges slutar objekt-LED-lampan att lysa och en annan LED ovanför den lyser, vilket betyder ett hopp.
Del-3: Resultat
Resultatet blir ungefär: Om objektet kraschar, ÅTERSTÄLL spelet; annars, öka poängen.
Kollisionen kan uttryckas som ANDing av båda, hindersignalen och objektsignalen för hindrets markposition. Om en kollision inte äger rum, ökas punkträknaren som visas på ett par skärmar med 7 segment.
Steg 2: Samla komponenter
De komponenter som krävs är följande:
- PCB x 1, brödbräda x 3
- Lysdioder: Grön (31), Röd (1), BiColor: Röd+Grön (1)
- Tryckknapp x 2
- 7-segment Display x 2
- IC 555 x 3 [för timerkretsar]
- IC 7474 x 1 (D FlipFlop)
- IC 7490 x 2 (Decade Counter) [för att visa poäng]
- IC 7447 x 2 (BCD till 7-segments avkodare) [för att visa poäng]
- IC 4029 x 1 (4-bitars räknare) [för hindervisning]
- IC 74154 x 1 (DeMUX) [för hindervisning]
- IC 7400 x 3 (INTE grind)
- IC 7404 x 1 (NAND -grind)
- IC 7408 x 1 (OCH grind)
- IC -uttag
- Spänningskälla (5V)
Nödvändiga verktyg:
- Lödkolv
- Avbitartång
Steg 3: Hindergenerering: Del-A
Först måste vi ställa in timerkretsarna för att generera hindergenerering (HIGH/LOW).
Kretsen kommer att installeras i enlighet med teorin som diskuterats tidigare. Kretsdiagrammet för detsamma är bifogat ovan. Kretsen implementeras på en brödbräda (även om den också kan implementeras på ett kretskort) enligt följande:
- Placera de två 555 IC: erna och D Flip Flop (IC 7474) tvärs över avdelaren på brödbrädan med lite ledigt utrymme (4-5 kolumner) däremellan.
- Anslut den övre raden på brödbrädan med den positiva terminalen för spänningskälla och den nedre raden med den negativa terminalen.
- Gör ytterligare anslutningar enligt kretsschemat. Efter de nödvändiga anslutningarna skulle kretsen se ut som bilden ovan.
OBS: Värdena för motstånden R1 & R2 och kapacitansen C beräknas med hjälp av följande ekvationer:
T = 0,694 x (R1 + 2 * R2) * C
där T krävs Tidsperiod.
D = 0,694 x [(R1 + R2)/T] *100
där D är arbetscykeln, dvs. förhållandet mellan ON -tid och total tid.
I detta projekt, för högfrekvens-timern, T = 0,5 sek och för lågfrekvens-timern, T = 2 sek.
Steg 4: Hindergenerering: Del-B
Nu när vi vet när vi ska generera hindret måste vi nu visa det. Vi kommer att använda en 4-bitars räknare, en Demultiplexer, en timer och en uppsättning av 16 lysdioder. Varför 16? Det beror på att vi kommer att kartlägga 4-bitars utgången från räknaren till de 16 lysdioderna med hjälp av demultiplexern. Det betyder att räknaren kommer att räkna 0 till 15 och demultiplexern kommer att slå på lysdioden med det indexet.
Timerns roll är att reglera räkningshastigheten, det vill säga hastigheten för hinderrörelse. Hindret kommer att flytta en position under en tidsperiod på timern. Du kan leka med olika värden på R1, R2 och C med hjälp av ekvationerna i föregående steg för att få olika hastigheter.
För LED -matrisen, löd 16 lysdioder på ett linjärt sätt med en gemensam grund. Den positiva terminalen för varje lysdiod kommer att anslutas till DeMUX (efter invertering med NOT -grind, eftersom DeMUX ger en LÅG utgång).
Kretsschemat för samma är bifogat ovan.
Steg 5: HOPPET och RESULTATET
Nästa sak är hopp -åtgärden. För att visa ett hopp, placera bara en lysdiod med annan färg ovanför matrisen, jorda den och fäst dess +ve -terminal på en knapp. Fäst den andra änden av tryckknappen på spänningskällan.
Ta också en annan tryckknapp, placerad intill den föregående och fäst en av dess terminaler till +5V. Den andra terminalen går till en NAND Gate (IC 7404) med den andra ingången till NAND Gate som ingången till lysdioden strax under JUMP LED (dvs. objekt -LED). Utmatningen från NAND -porten går till RESET (PIN 2 och 3 för båda BCD -räknarna) på poängräknaren. Med det vi gör är att vi återställer poängen om både OBJECT LED (i basläges) signalen och OBSTACLE -signalen ges samtidigt, dvs objektet och hindret kolliderade.
Gör något för att se till att båda tryckknapparna trycks ihop. Du kan använda ett mynt och fästa båda knapparna på det.
För att ställa in poängräknaren, följ kretsschemat ovan (bildkälla: www.iamtechnical.com).
OBS: Anslut stift 2 och 3 till utgången på NAND -porten för att den ska återställa poängen vid kollision med hindret
Steg 6: Lycka till
Det är allt. Du är klar med ditt projekt. Du kan lägga till lite efterbehandling till det så att det ser bra ut. Vila är bra.
NJUT AV..!!
Rekommenderad:
Hur man återvinner Android -telefoner för BOINC eller fällbar rigg utan att använda batterier: 8 steg
Hur man återvinner Android -telefoner för BOINC eller fällbara riggar utan att använda batterier: VARNING: JAG ÄR INTE ANSVARIG ANSVARIG FÖR NÅGON SKADA PÅ DIN HARDWARE Genom att följa denna guide. Denna guide är mer effektiv för BOINC -användare (personligt val / skäl), det kan också användas för FOLDNING Eftersom jag inte har för mycket tid, vill jag
CCTV -kamera med nodMCU + gammal bärbar kameramodul (med och utan att använda Blynk): 5 steg
CCTV -kamera med NodeMCU + gammal bärbar kameramodul (med och utan att använda Blynk): Hej killar! I denna instruerbara, ska jag visa dig hur jag använde en gammal bärbar kameramodul och nodeMCU för att göra något liknande CCTV
Hur man gör en radföljarrobot utan att använda Arduino (mikrokontroller): 5 steg
Hur man gör en radföljarrobot utan att använda Arduino (mikrokontroller): I den här instruktören kommer jag att lära dig hur man gör en linje efter roboten utan att använda Arduino. Jag kommer att använda mycket enkla steg för att förklara. följ linjen. Du behöver inte någon form av programmeringserfarenhet för att
IR -hinder sensor utan att använda Arduino eller någon mikrokontroller: 6 steg
IR -hinder sensor utan att använda Arduino eller någon mikrokontroller: I det här projektet ska vi göra en enkel hinder sensor utan att använda någon mikrokontroller
DIY MusiLED, musiksynkroniserade lysdioder med ett klick Windows och Linux-applikation (32-bitars och 64-bitars). Lätt att återskapa, lätt att använda, lätt att porta .: 3 steg
DIY MusiLED, musiksynkroniserade lysdioder med ett klick Windows och Linux-applikation (32-bitars och 64-bitars). Lätt att återskapa, lätt att använda, lätt att porta .: Detta projekt hjälper dig att ansluta 18 lysdioder (6 röda + 6 blå + 6 gula) till ditt Arduino-kort och analysera datorns ljudkortets realtidsignaler och vidarebefordra dem till lysdioderna för att tända dem enligt slageffekterna (Snare, High Hat, Kick)