Inhoudsopgave:
- Stap 1: Benodigde materialen
- Stap 2: Instellen van de LFSR (Linear Feedback Shift Register)
- Stap 3: Het zevensegmentendisplay instellen
- Stap 4: De spelmodule maken
- Stap 5: Speel het spel
2024 Auteur: John Day | [email protected]. Laatst gewijzigd: 2024-01-30 11:14
Binaire getallen zijn een van de eerste dingen die in je opkomen als je aan digitale logica denkt. Binaire getallen kunnen echter een moeilijk concept zijn voor degenen die nieuw zijn.
Dit project zal degenen die zowel nieuw als ervaren zijn met binaire getallen helpen om decimale getallen te converteren. Door het maken van een spel zullen we gebruikers testen op hun conversievaardigheid. Dit spel wordt uitgevoerd op een Basys3-bord en geprogrammeerd in Verilog.
Stap 1: Benodigde materialen
De volgende materialen zijn nodig om dit decimaal naar binair conversiespel te maken:
- Xilinx Vivado Design Suite-software
- Digilent Basys3 FPGA-bord
- USB naar micro-USB-kabel
Stap 2: Instellen van de LFSR (Linear Feedback Shift Register)
Een LFSR (Linear Feedback Shift Register) is een module die wordt gebruikt om "willekeurige" getallen te genereren.
Een LFSR is niet volledig willekeurig omdat het pseudo-willekeurige getallen genereert, wat een proces is van het genereren van getallen die willekeurig lijken, maar dat niet zijn.
Een LFSR is een schuifregister waarvan het invoerbit een lineaire functie is van de vorige toestand, wat betekent dat de LFSR door een eindige reeks getallen zal gaan. Specifiek voor dit spel zal de LFSR slechts 8 bits gebruiken om het decimale getal dat het kan genereren te beperken tot 255.
Knop L (btnL) wordt gebruikt om het nummer op de LFSR te resetten.
Deze LFSR-module is niet gemaakt door de makers van dit spel. De LFSR-module is gemaakt door Carleton University Professor, John Knight. De link voor zijn module is hieronder opgenomen.
www.doe.carleton.ca/~jknight/97.478/97.478_…
Stap 3: Het zevensegmentendisplay instellen
Een zevensegmentendisplay wordt gebruikt op het Basys3-bord en op veel andere hardware om alfanumerieke tekens weer te geven.
De Seven-Segment Display-module die in dit spel wordt gebruikt, zet een binair getal om in een decimaal getal en geeft het weer als een decimaal getal.
Door gebruik te maken van de eerder besproken LFSR-module, wordt een willekeurig gegenereerd getal uitgevoerd op het zevensegmentendisplay.
De Seven-Segment Display-module is niet gemaakt door de makers van dit spel. De Seven-Segment Display-module werd geleverd door Joseph Callenes-Sloan, professor aan de California Polytechnic State University. De pdf van de module is hieronder bijgevoegd.
Stap 4: De spelmodule maken
Maak Game (hoofd) Module.
Deze module gebruikt de LFSR-module om een willekeurig getal te genereren en dit vervolgens uit te voeren op het zevensegmentendisplay.
De module gebruikt dan een altijd blok dat het willekeurige getal reset. Dit werkt op de positieve rand van knop R (btnR), wat betekent dat het alleen werkt als knop R is ingedrukt.
Het tweede blok werkt altijd op de positieve flank van de klok (clk). Als knop C (btnC) wordt ingedrukt, wordt gecontroleerd of het nummer op het zevensegmentendisplay hetzelfde is als het invoernummer van de schakelaars (sw). Dit blok zal een vlag opheffen (zet het vlagregister (vlag) op 1) en de messageVal-draad veranderen naargelang de gebruiker heeft gewonnen of verloren.
Het derde altijd-blok werkt ook op de positieve kant van de klok. Als de vlag wordt gehesen, wordt de ssegInputVal ingesteld op de messageVal-draad op het zevensegmentendisplay. Als de vlag niet wordt gehesen, blijft het een willekeurig getal (randomVal) uitvoeren.
Stap 5: Speel het spel
Instructies:
- De gebruiker zal op knop R drukken om een nieuw spel te maken of het nummer op het zevensegmentendisplay te veranderen.
- De gebruiker zal de eerste 8 schakelaars omhoog (1) of omlaag (0) draaien om het binaire getal in te voeren.
- Knop C wordt gebruikt om te controleren of de gebruiker heeft gewonnen of verloren.
- Als de gebruiker heeft gewonnen, wordt '111' weergegeven op het display met zeven segmenten.
- Als de gebruiker de weg kwijt is, wordt '0' weergegeven op het display met zeven segmenten.
- Om een nieuw spel te starten kan op elk moment op knop R worden gedrukt.
Aanbevolen:
Games uploaden naar Arduboy en 500 games naar Flash-cart: 8 stappen
Spellen uploaden naar Arduboy en 500 spellen naar Flash-cart: Ik heb een zelfgemaakte Arduboy gemaakt met serieel Flash-geheugen dat maximaal 500 spellen kan opslaan om onderweg te spelen. Ik hoop te delen hoe je games kunt laden, inclusief hoe je games opslaat in het seriële flash-geheugen en je eigen geconsolideerde gamepakket kunt maken
CPE 133 metronoom: 3 stappen
CPE 133 Metronoom: Voor ons afstudeerproject bij Cal Poly hebben we een apparaat voor het bijhouden van tempo gemaakt, een metronoom genaamd. We kozen dit project vanwege een interesse in muziek en digitaal ontwerp. We hebben eerdere labs in CPE 133 gebruikt om onze code te ontwerpen en online tutorials om te helpen bij co
Flash AT Command Firmware naar ESP01-module (vereist een USB-naar-TTL-adapter): 5 stappen
Flash AT Command Firmware naar ESP01-module (vereist een USB-naar-TTL-adapter): door Jay Amiel AjocGensan PHfacebook.com/geeamealyoutube.com/jayamielajoc
Binair spel: 9 stappen (met afbeeldingen)
Binair spel: dit is een spel dat ik op Tinkercad Circuits heb gemaakt om binaire getallen te leren. https://www.tinkercad.com/things/erDquXcpyW8Als je deze handleiding wilt volgen en je eigen wilt bouwen, zijn de bestanden en code te vinden op mijn github op https://github.com/kee
Binair tellen en gelijkstellen: 6 stappen
Tellen en gelijkstellen in binair: Geef een algemene beschrijving van de Instructablethis is mijn tweede binaire instructable. Dit gaat in binaire wiskundige vergelijkingen. sectie 1 laat zien hoe je binair kunt tellen met je handen, terwijl sectie 2 je in geschreven vorm laat zien. Even een kanttekening, w