Turinys:
- 1 žingsnis: reikalingos medžiagos
- 2 veiksmas: LFSR (linijinio grįžtamojo ryšio poslinkio registro) nustatymas
- 3 veiksmas: septynių segmentų ekrano nustatymas
- 4 žingsnis: sukurkite žaidimo modulį
- 5 žingsnis: Žaiskite žaidimą
Video: CPE 133 galutinis projekto dešimtainis skaičius iki dvejetainio: 5 žingsniai
2024 Autorius: John Day | [email protected]. Paskutinį kartą keistas: 2024-01-30 10:44
Dvejetainiai skaičiai yra vienas iš pirmųjų dalykų, kurie ateina į galvą galvojant apie skaitmeninę logiką. Tačiau dvejetainiai skaičiai gali būti sudėtinga naujokams.
Šis projektas padės naujiems ir patyrusiems dvejetainius skaičius išmokti konvertuoti dešimtainius skaičius. Sukūrę žaidimą, mes išbandysime naudotojus pagal jų įgūdžius konvertuoti. Šis žaidimas bus vykdomas „Basys3“lentoje ir užprogramuotas „Verilog“.
1 žingsnis: reikalingos medžiagos
Norint sukurti šį dešimtainio į dvejetainį konvertavimo žaidimą, reikia šių medžiagų:
- „Xilinx Vivado Design Suite“programinė įranga
- „Digilent Basys3“FPGA plokštė
- USB į mikro USB kabelis
2 veiksmas: LFSR (linijinio grįžtamojo ryšio poslinkio registro) nustatymas
LFSR (Linear Feedback Shift Register) yra modulis, naudojamas „atsitiktiniams“skaičiams generuoti.
LFSR nėra visiškai atsitiktinis, nes jis sukuria pseudo-atsitiktinius skaičius, o tai yra skaičių, kurie atrodo atsitiktinai, bet nėra.
LFSR yra poslinkių registras, kurio įvesties bitas yra ankstesnės būsenos linijinė funkcija, o tai reiškia, kad LFSR pereis per baigtinius nustatytus skaičius. Konkrečiai šiam žaidimui LFSR naudos tik 8 bitus, kad apribotų dešimtainį skaičių, kurį jis gali sukurti iki 255.
Mygtukas L (btnL) naudojamas LFSR skaičiui iš naujo nustatyti.
Šio LFSR modulio sukūrė ne šio žaidimo kūrėjai. LFSR modulį sukūrė Karletono universiteto profesorius Johnas Knightas. Jo modulio nuoroda pateikiama žemiau.
www.doe.carleton.ca/~jknight/97.478/97.478_…
3 veiksmas: septynių segmentų ekrano nustatymas
Septynių segmentų ekranas naudojamas „Basys3“plokštėje ir daugelyje kitų aparatūros dalių, kad būtų rodomi raidiniai ir skaitmeniniai simboliai.
Šiame žaidime naudojamas septynių segmentų ekrano modulis paverčia dvejetainį skaičių į dešimtainį skaičių ir parodo jį kaip dešimtainį skaičių.
Naudojant anksčiau aptartą LFSR modulį, atsitiktinai sugeneruotas skaičius bus išvestas į septynių segmentų ekraną.
Septynių segmentų ekrano modulis nebuvo sukurtas šio žaidimo kūrėjų. Septynių segmentų ekrano modulį pateikė Kalifornijos politechnikos valstijos universiteto profesorius Josephas Callenesas-Sloanas. Modulio pdf yra pridedamas žemiau.
4 žingsnis: sukurkite žaidimo modulį
Sukurti žaidimo (pagrindinio) modulį.
Šis modulis naudos LFSR modulį, kad sugeneruotų atsitiktinį skaičių ir išvestų jį į septynių segmentų ekraną.
Tada modulis naudoja visada bloką, kuris iš naujo nustato atsitiktinį skaičių. Tai veikia teigiamame mygtuko R (btnR) krašte, o tai reiškia, kad jis veiks tik tada, kai bus paspaustas mygtukas R.
Antrasis blokas visada veikia teigiamame laikrodžio krašte (clk). Paspaudus mygtuką C (btnC), bus patikrinta, ar septynių segmentų ekrane esantis skaičius sutampa su jungiklių įvesties numeriu (sw). Šis blokas iškels vėliavą (nustatykite vėliavų registrą (vėliavą) į 1) ir pakeis pranešimąVal laidą pagal tai, ar vartotojas laimėjo, ar pralaimėjo.
Trečiasis blokas taip pat veikia teigiamame laikrodžio krašte. Jei vėliava pakelta, septynių segmentų ekrane „ssegInputVal“bus nustatytas į „messageVal“laidą. Jei vėliava nebus pakelta, ji ir toliau išves atsitiktinį skaičių (randomVal).
5 žingsnis: Žaiskite žaidimą
Instrukcijos:
- Vartotojas paspaus mygtuką R, kad sukurtų naują žaidimą, arba pakeis numerį septynių segmentų ekrane.
- Vartotojas pasuks pirmuosius 8 jungiklius aukštyn (1) arba žemyn (0), kad įvestų dvejetainį skaičių.
- Mygtukas C bus naudojamas patikrinti, ar vartotojas laimėjo ar pralaimėjo.
- Jei vartotojas laimėjo, „111“bus rodomas septynių segmentų ekrane.
- Jei vartotojas pametė, „0“bus rodomas septynių segmentų ekrane.
- Norėdami pradėti naują žaidimą, R mygtuką galite paspausti bet kuriuo metu.
Rekomenduojamas:
„BigBit“dvejetainio laikrodžio ekranas: 9 žingsniai (su nuotraukomis)
„BigBit“dvejetainio laikrodžio ekranas: Ankstesniame „Instructable“(„Microbit“dvejetainis laikrodis) projektas buvo idealus kaip nešiojamasis stalinis prietaisas, nes ekranas buvo gana mažas. Todėl atrodė tinkama, kad kita versija turėtų būti mantija arba sieninė versija, bet daug didesnė
Automatinis EKG- BME 305 galutinis projekto papildomas kreditas: 7 žingsniai
Automatinis EKG-BME 305 galutinis projekto papildomas kreditas: elektrokardiograma (EKG arba EKG) naudojama plakančios širdies skleidžiamiems elektriniams signalams matuoti ir atlieka svarbų vaidmenį diagnozuojant ir prognozuojant širdies ir kraujagyslių ligas. Kai kuri informacija, gauta iš EKG, apima ritmą
Kaip padalyti dešimtainius skaičius- EDP 279: 5 žingsniai
Kaip padalyti dešimtaines dalis- EDP 279: Kaip padalinti skaičius su dešimtainiais
Dvejetainis iki dešimtainis skaičiuoklė: 8 žingsniai
Dvejetainis dešimtainis skaičiuotuvas: vienuoliktojoje kompiuterių inžinerijos klasėje turėjau nuspręsti dėl galutinio projekto. Iš pradžių nežinojau, ką daryti, nes jame turėjo būti tam tikrų aparatūros komponentų. Po kelių dienų mano klasės draugas liepė man padaryti projektą, pagrįstą keturių bitų priedu
„Stepper Driver“galutinis projekto modulis: 5 žingsniai
„Stepper Driver“galutinis projekto modulis: Marquis Smith ir Peter Moe-Lange