Nexys-2 lichte Dodger spel (4 / 6 stap)

Stap 4: Beschrijving van VHDL


Hier is een uitleg van onze VHDL. Er zijn een aantal bugs, maar dit zal u helpen te verbeteren of gebruik een aantal van de componenten in uw eigen projecten. Boven zijn foto's van de eindige toestandsmachine en zwarte doos-diagram dat u gebruiken kunt om te helpen begrijpen van de VHDL.

"Spel" is het hoogste niveau-module die verbindt alle onderdelen van het project en worden toegewezen van de uitgangen. Signalen en poort kaarten worden gebruikt om de onderdelen met elkaar verbinden. Dit is ook de module waar we de positie van je karakter en de belemmeringen voor het display output. Dit bevat ook het proces dat alle LEDs flash groen of rood maakt en stelt het spel wanneer je wint of, respectievelijk verliest.

"scroll_clk0" is de module met de vertraagd klok gebruikt voor het verhogen van de vooruitgang en de score van de speler. Dit is een fundamentele klok verdeler dat tellingen klok cycli maken een langzamere klok-puls ongeveer een keer per seconde.

"map_decoder0" is de module die de posities van de belemmering van de ROM leest zodat ze kunnen worden weergegeven op de LED-matrix en aan de positie van de gebruiker getoetst.

"display_counter0" is de module met de teller 3 bits die cycli via welke rij van de matrix LED wordt weergegeven. Dit prestatiemeteritem is gebouwd met knevel slippers die kunnen worden teruggesteld aan 0.

"map_progres_counter0" is de module waarmee wordt bijgehouden hoe ver de gebruiker is gevorderd in het spel. Deze maakt gebruik van een 8 bit teller gemaakt van knevel slippers die kunnen worden teruggesteld aan 0 wanneer het spel wordt beëindigd.

"address_adder" is een module die gebruikmaakt van een halve adder en zeven volledige adders te maken van een 8 bit rimpel dragen adder. Dit wordt gebruikt om de voortgang van de gebruiker toevoegen aan de rij die momenteel wordt weergegeven om te lezen van de belemmering van de juiste posities van de ROM.

"standard_decoder" is de module die een standaard decoder van 3 tot en met 8, die het nummer van de drie bits van de display_counter0 module wordt gebruikt om te bepalen welke rij heeft moet inschakelen.

"map_rom0" is de module waarin het ROM - geheugen van de positie van de obstakels op elke rij. Using zulks maakt de waarschuwing "Instantiating black box module" synthese en verschillende bungelen pin waarschuwingen. Echter, deze waarschuwingen hebben geen invloed op het spel want dit overgebleven van de automatische creatie van blok geheugen is. Om te bewerken van de ROM met de ISE Design Suite 14,5-programma, maak eerst een Kladblok-bestand met de volgende:

memory_initialization_radix = 2;
memory_initialization_vector =

00000000,

01000000,

00100000,

00010000;

1's toevoegen waar u een obstakel wilt te zijn gelegen, en dit bestand mag maximaal 256 regels. Zorg ervoor dat alleen de laatste regel eindigt met een puntkomma.

Vervolgens slaat u dit bestand als een .coe-bestand door ".coe" aan het einde van de bestandsnaam toe te voegen en het veranderen van de "opslaan als type" op "alle bestanden.

Na dit, tweevoudig tikken voort op de module "map_rom0." Nadat dit is geopend, ga naar pagina 2 en zorg ervoor dat het Type geheugen is één poort-ROM in het dropdownmenu. Op pagina 3, ervoor te zorgen dat de breedte gelezen 8 bits is en de diepte van lezen 256 is. Als u wijzigen van de grootte van de kaart wilt, zie bladzijde 6 van dit instructable. Op pagina 4, ervoor te zorgen de Load Init-File en de resterende geheugenlocatie vullen vakken worden gecontroleerd, en dat uw .coe bestand wordt gebruikt in het vak Coe. U kunt de waarden van de kaart zien door het selecteren van de Toon. Tot slot Selecteer genereren.

"buffer_with_output_enable0" is de module die zorgt ervoor dat de belemmeringen zijn output als de actieve laag en kunnen ze worden uitgeschakeld wanneer het spel wordt beëindigd. Dit is gemaakt met behulp van D slippers en omvormers.

"win_lose_logic0" is de module waarmee wordt gecontroleerd als de gebruiker heeft bereikt het einde van de kaart of een belemmering heeft botste zodat het "spel" module kan het scherm met alle rode of groene LEDs flash en resetten van de tellers in "map_decoder0"

"sseg_dec0" is de module die een getal van 8 bits worden gelezen en zijn gelijkwaardige decimale waarde weergegeven in het display van de zeven segment op de Nexys-2 board. Dit bevat ook een verdeler van de klok gebruikt voor het beheersen van de vernieuwingsfrequentie van de eindige toestandsmachine van beweging en het 7 segment display en de LED-matrix.

"move_fsm0" is de module die leest de ingangen van links en rechts en uitgangen van de positie van de gebruiker na het verplaatsen. Dit decodeert ook 3 bitwaarde voor positie naar een één-hete 8-bit output. Boven is een diagram van de statusmachine Moore.

"buffer_with_output_enable1" is een module die heeft dezelfde structuur als "buffer_with_output_enable0." Dit wordt echter gebruikt om de positie van de gebruiker de actieve laag en het kunnen worden uitgeschakeld wanneer het spel wordt beëindigd.

"game.ucf" is de beperking gebruikersbestand waarmee wordt gedefinieerd welke pinnen op het bord sluit aan op de ingangen en de uitgangen van het spel.

Gerelateerde Artikelen

LICHT sabel spel in Sratch

LICHT sabel spel in Sratch

Dit is een video tutorial leer je hoe maken gebruiken Video Motion in kras om geweldige effecten te creëren waar u een lichte-object kunt gebruiken in een donkere kamer... zoals een smartphone, toorts of zelfs een speelgoed licht sabel slash te snijd
Stoppen met het spel van licht

Stoppen met het spel van licht

wie houdt niet van carnaval games met felle lichten en guns?  Ik zeker doen.   In dit instructable, ik zal u tonen de stappen voor het maken van uw zeer eigen Stop het licht spel.  Dit project is gebaseerd off van gemakkelijk te vinden onderdelen: ee
Star Wars thema retro arcadespel

Star Wars thema retro arcadespel

Één knop. LCD. procedureel gegenereerd terrein. Een dash van Star Wars. Een verslavend spel.Niet zeker waarom, maar ik heb geobsedeerd met kunststijl die korrelig retro arcade games. Ik net kon niet genoeg krijgen en dus heb ik besloten om een eenvou
Dodge Batch spel [kleuren]

Dodge Batch spel [kleuren]

Hallo weer, ben vandaag ik tonen u een nieuwe batch-spel dat ik heb gemaakt! Haar naam is dodge en in tegenstelling tot de andere partij spellen, het bespaart je punten. Spelspel verstandig u moet een functionele W, A, S en D toets om te spelen! Dus
Het spel van zijden/hek zijden voor 2014 Dodge 1500 4 x 4 Pickup Truck

Het spel van zijden/hek zijden voor 2014 Dodge 1500 4 x 4 Pickup Truck

Eerste; een paar punten van de notaHoewel ik heb timmerwerk vaardigheden, is dit mijn eerste keer bezig met een project van deze aard.Dit is ook mijn eerste Instructable.Ik ben geen ingenieur, maar ik neig mechanisch.Alle foto's werden genomen na het
Spel van tronen leidde licht acryl Base

Spel van tronen leidde licht acryl Base

Dit is een gemakkelijke manier om etch op acryl met een stencil en een dremel.In deze video maakte ik een acryl basis met LED-verlichting om de grimmige logo van spel van tronen pop uit...U moet:-Een stencil met de afbeelding die u wilt.-Dremel en Dr
LED AUTO STAART LICHT CONVERSIE | HOW TO CHANGE BOLLEN OP DODGE RAM PICK-UP ACHTERLICHTEN | INSTALLEREN, vervanging

LED AUTO STAART LICHT CONVERSIE | HOW TO CHANGE BOLLEN OP DODGE RAM PICK-UP ACHTERLICHTEN | INSTALLEREN, vervanging

Hallo iedereen, dit is geramicc85 en vandaag die ik u hoe tonen zal te wijzigen van de bollen op de dodge ram achterlichten. Alles wat u nodig hebt is een reservelamp 3157 en een Torx T25 schroevendraaier. I 'm gonna installeren van deze LED-lampen i
Interactieve Roodlicht groen licht spel in een quilt

Interactieve Roodlicht groen licht spel in een quilt

Deze quilt is een volledig functionerende Roodlicht groen licht spel.  Wat is de paarse licht voor, u vragen? Disco! Elk lampje licht willekeurig voor een willekeurige hoeveelheid tijd. Als het rode lampje brandt, en een speler beweegt, het dekbed da
Severus Sneep kostuum met licht-up "Patronus" spell kostuum

Severus Sneep kostuum met licht-up "Patronus" spell kostuum

Helaas was de video-bestand dat ik heb voor de kostuum wedstrijd gemaakt twee grote voor Instructables te uploaden, dus ik heb de youtube video hieronder bijgesloten ter referentie:Voor deze Halloween dit jaar besloten heb ik om Professor Severus Sna
HOE TE VERVANGEN RICHTINGAANWIJZER LAMP | DODGE RAM | VOORSTE hoek BLINKER reparatie INDICATOR licht FIX leidde 3156

HOE TE VERVANGEN RICHTINGAANWIJZER LAMP | DODGE RAM | VOORSTE hoek BLINKER reparatie INDICATOR licht FIX leidde 3156

video over voorste hoek lamp vervanging op mijn tweede generatie dodge ram 1500
Domotica met een Smartphone (TV, Arduino, licht, beveiliging, Projector, DVD-speler …)

Domotica met een Smartphone (TV, Arduino, licht, beveiliging, Projector, DVD-speler …)

Deze dagen de domotica apparaten en de binnenlandse controle systemen zijn erg populair. Zelfs in de Gemeenschap van DIY-ers. Dus besloten om mijn eigen huis controle-apparaat met behulp van Arduino. Het apparaat kan worden aangestuurd via een mobiel
Arduino licht spel / gebouwd met leuke maar goedkope kit

Arduino licht spel / gebouwd met leuke maar goedkope kit

Hey bedankt voor op mijn spel te klikken! Dus als u de video u ziet het spel is zeer eenvoudig en het was leuk om te bouwen. Alles wat ik nodig was:Arduino uno r3 (echt uw keus van een arduino)8 leds ten minste één andere kleur w / weerstandenLCDscha
Hoe Vervang LEDs CAB dak licht | PICK-UP TRUCK | 12V HYPERFLASH probleem RECON CHROME DODGE RAM 24V

Hoe Vervang LEDs CAB dak licht | PICK-UP TRUCK | 12V HYPERFLASH probleem RECON CHROME DODGE RAM 24V

Ik installeerde deze lichten ongeveer 3 jaar geleden en nu twee van de lichten begon te hyperflash. Toen ik de nieuwe lichten, installeerde toen ik te horen kreeg dat de LEDs ongeveer duren 50.000 uur. Nu vroeg ik me af waarom deze twee niet. Im bewu
BitRunner FPGA spel

BitRunner FPGA spel

Maak en speel uw eigen bits Runner Game. Geen console of vlezige computer vereist! Druk op de knop van de dodge binnenkomende hindernissen om te bereiken de hoogste score te ontwijken! Dit project is behoorlijk moeilijk, een uitdaging voor beginners,