Kazalo:

CPE 133 Končni projekt Decimalno v binarno: 5 korakov
CPE 133 Končni projekt Decimalno v binarno: 5 korakov

Video: CPE 133 Končni projekt Decimalno v binarno: 5 korakov

Video: CPE 133 Končni projekt Decimalno v binarno: 5 korakov
Video: CPE 133 - Final Project Demo 2024, November
Anonim
CPE 133, končni projekt, decimalni v binarni
CPE 133, končni projekt, decimalni v binarni

Binarne številke so ena prvih stvari, ki mi pridejo na misel pri razmišljanju o digitalni logiki. Vendar pa so binarne številke lahko težaven pojem za tiste, ki so jim novi.

Ta projekt bo pomagal tistim, ki so novi in izkušeni z binarnimi številkami, obvladali pretvorbo decimalnih števil. Z ustvarjanjem igre bomo uporabnike preizkusili v spretnosti pretvorbe. Ta igra bo izvedena na Basys3 deski in programirana v Verilogu.

Korak: Potrebni materiali

Potrebni materiali
Potrebni materiali

Za izdelavo te igre z decimalno v binarno pretvorbo so potrebni naslednji materiali:

  • Programska oprema Xilinx Vivado Design Suite
  • Digilent Basys3 FPGA plošča
  • Kabel USB v mikro USB

2. korak: Nastavitev LFSR (Linear Feedback Shift Register)

Nastavitev LFSR (Linear Feedback Shift Register)
Nastavitev LFSR (Linear Feedback Shift Register)
Nastavitev LFSR (Linear Feedback Shift Register)
Nastavitev LFSR (Linear Feedback Shift Register)

LFSR (Linear Feedback Shift Register) je modul, ki se uporablja za ustvarjanje "naključnih" števil.

LFSR ni povsem naključen, saj ustvarja psevdonaključna števila, kar je proces generiranja številk, ki se zdijo naključne, vendar niso.

LFSR je premični register, katerega vhodni bit je linearna funkcija njegovega prejšnjega stanja, kar pomeni, da bo LFSR krožil skozi končno nastavljeno število. Za to igro bo LFSR uporabil le 8 bitov, da omeji decimalno število, ki ga lahko ustvari, na 255.

Gumb L (btnL) se uporablja za ponastavitev številke na LFSR.

Ustvarjalci te igre niso ustvarili tega modula LFSR. Modul LFSR je ustvaril profesor univerze Carleton John Knight. Povezava do njegovega modula je navedena spodaj.

www.doe.carleton.ca/~jknight/97.478/97.478_…

3. korak: Nastavitev sedemsegmentnega zaslona

Nastavitev sedemsegmentnega zaslona
Nastavitev sedemsegmentnega zaslona

Za prikaz alfanumeričnih znakov se na plošči Basys3 in na številnih drugih delih strojne opreme uporablja sedemsegmentni zaslon.

Modul za prikaz sedmih segmentov, ki se uporablja v tej igri, pretvori binarno število v decimalno število in ga prikaže kot decimalno število.

Z uporabo predhodno obravnavanega modula LFSR bo na sedemsegmentni zaslon prikazano naključno generirano število.

Ustvarjalci te igre niso ustvarili modula za prikaz sedmih segmentov. Modul za prikaz sedmih segmentov je zagotovil profesor univerze California Polytechnic State University Joseph Callenes-Sloan. PDF za modul je priložen spodaj.

4. korak: Ustvarite modul igre

Ustvarjanje modula igre
Ustvarjanje modula igre
Ustvarjanje modula igre
Ustvarjanje modula igre
Ustvarjanje modula igre
Ustvarjanje modula igre
Ustvarjanje modula igre
Ustvarjanje modula igre

Ustvari glavni (glavni) modul igre.

Ta modul bo uporabil modul LFSR za ustvarjanje naključnega števila in ga nato prikazal na sedemsegmentnem zaslonu.

Modul nato uporablja vedno blok, ki ponastavi naključno število. To deluje na pozitivnem robu gumba R (btnR), kar pomeni, da bo delovalo le, ko je pritisnjen gumb R.

Drugi blok vedno deluje na pozitivnem robu ure (clk). Če pritisnete gumb C (btnC), se s tem preveri, ali je številka na sedemsegmentnem zaslonu enaka vhodni številki stikal (sw). Ta blok bo dvignil zastavico (nastavil register zastav (zastavo) na 1) in spremenil žico messageVal glede na to, ali je uporabnik zmagal ali izgubil.

Tretji blok vedno deluje tudi na pozitivnem robu ure. Če je zastavica dvignjena, bo ssegInputVal nastavljen na žico messageVal na sedemsegmentnem zaslonu. Če zastavica ni dvignjena, bo še naprej oddajala naključno število (randomVal).

5. korak: Igrajte igro

Igranje igre!
Igranje igre!
Igranje igre!
Igranje igre!
Igranje igre!
Igranje igre!

Navodila:

  • Uporabnik bo pritisnil gumb R, da naredi novo igro, ali spremeni številko na zaslonu s sedmimi segmenti.
  • Uporabnik bo prvih 8 stikal obrnil navzgor (1) ali navzdol (0), da vnese binarno število.
  • Gumb C bo uporabljen za preverjanje, ali je uporabnik zmagal ali izgubil.
  • Če je uporabnik zmagal '111' bo prikazano na zaslonu sedmih segmentov.
  • Če je uporabnik izgubil "0", bo na zaslonu sedmih segmentov prikazano.
  • Za začetek nove igre lahko gumb R pritisnete kadar koli.

Priporočena: