Përmbajtje:

CPE 133 Projekti përfundimtar dhjetor në binar: 5 hapa
CPE 133 Projekti përfundimtar dhjetor në binar: 5 hapa

Video: CPE 133 Projekti përfundimtar dhjetor në binar: 5 hapa

Video: CPE 133 Projekti përfundimtar dhjetor në binar: 5 hapa
Video: CPE 133: Final Project 2024, Nëntor
Anonim
CPE 133 Projekti përfundimtar dhjetor në binar
CPE 133 Projekti përfundimtar dhjetor në binar

Numrat binarë janë një nga gjërat e para që vijnë në mendje kur mendojmë për logjikën dixhitale. Sidoqoftë, Numrat Binarë mund të jenë një koncept i vështirë për ata që janë të rinj në të.

Ky projekt do të ndihmojë ata që janë të rinj dhe me përvojë me numrat binarë të zotërojnë konvertimin e numrave dhjetorë. Përmes krijimit të një loje ne do të testojmë përdoruesit në aftësinë e tyre të konvertimit. Kjo lojë do të ekzekutohet në një Bord të Basys3 dhe do të programohet në Verilog.

Hapi 1: Materialet e nevojshme

Materialet e nevojshme
Materialet e nevojshme

Materialet e mëposhtme nevojiten për ta bërë këtë lojë konvertimi dhjetore në binare:

  • Softueri i Xilinx Vivado Design Suite
  • Bordi Digilent Basys3 FPGA
  • Kabllo USB në mikro USB

Hapi 2: Vendosja e LFSR (Regjistri i Zhvendosjes së Komenteve lineare)

Vendosja e LFSR (Regjistri i Zhvendosjes së Komenteve lineare)
Vendosja e LFSR (Regjistri i Zhvendosjes së Komenteve lineare)
Vendosja e LFSR (Regjistri i Zhvendosjes së Komenteve lineare)
Vendosja e LFSR (Regjistri i Zhvendosjes së Komenteve lineare)

Një LFSR (Regjistri i Zhvendosjes së Reagimeve Lineare) është një modul i përdorur për të gjeneruar numra "të rastësishëm".

Një LFSR nuk është plotësisht e rastësishme pasi gjeneron numra pseudo të rastësishëm që është një proces i gjenerimit të numrave që duken të rastësishëm por nuk janë.

Një LFSR është një regjistër zhvendosjeje, biti hyrës i të cilit është një funksion linear i gjendjes së tij të mëparshme, që do të thotë se LFSR do të kalojë nëpër një numër të caktuar të caktuar. Në mënyrë të veçantë për këtë lojë, LFSR do të përdorë vetëm 8 bit për të kufizuar numrin dhjetor që mund të gjenerojë në 255.

Butoni L (btnL) përdoret për të rivendosur numrin në LFSR.

Ky modul LFSR nuk u krijua nga krijuesit e kësaj loje. Moduli LFSR u krijua nga Profesori i Universitetit Carleton, John Knight. Lidhja për modulin e tij është përfshirë më poshtë.

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

Hapi 3: Vendosja e ekranit të shtatë segmenteve

Vendosja e ekranit të shtatë segmenteve
Vendosja e ekranit të shtatë segmenteve

Një ekran me shtatë segmente përdoret në tabelën Basys3 dhe në shumë pjesë të tjera të pajisjeve për të shfaqur karaktere alfanumerike.

Moduli i shfaqjes me shtatë segmente që përdoret në këtë lojë shndërron një numër binar në një numër dhjetor dhe e shfaq atë si një numër dhjetor.

Duke përdorur modulin LFSR të diskutuar më parë, një numër i krijuar rastësisht do të dalë në ekranin me shtatë segmente.

Moduli i shfaqjes me shtatë segmente nuk u krijua nga krijuesit e kësaj loje. Moduli i shfaqjes me shtatë segmente u sigurua nga profesori i Universitetit Shtetëror Politeknik të Kalifornisë, Joseph Callenes-Sloan. Pdf për modulin është bashkangjitur më poshtë.

Hapi 4: Krijimi i modulit të lojës

Krijimi i modulit të lojës
Krijimi i modulit të lojës
Krijimi i modulit të lojës
Krijimi i modulit të lojës
Krijimi i modulit të lojës
Krijimi i modulit të lojës
Krijimi i modulit të lojës
Krijimi i modulit të lojës

Krijo modulin e lojës (kryesore).

Ky modul do të përdorë modulin LFSR për të gjeneruar një numër të rastësishëm dhe më pas ta nxjerrë atë në ekranin me shtatë segmente.

Moduli pastaj përdor një bllok gjithmonë që rivendos numrin e rastit. Kjo funksionon në skajin pozitiv të Button R (btnR), që do të thotë se do të funksionojë vetëm kur të jetë shtypur butoni R.

Blloku i dytë gjithmonë vepron në skajin pozitiv të orës (clk). Nëse shtypet butoni C (btnC) kjo do të kontrollojë nëse numri në ekranin me shtatë segmente është i njëjtë me numrin hyrës nga çelsat (sw). Ky bllok do të ngrejë një flamur (vendos regjistrin e flamurit (flamurin) në 1) dhe do të ndryshojë telin e mesazhit sipas nëse përdoruesi ka fituar ose humbur.

Blloku i tretë gjithmonë funksionon gjithashtu në anën pozitive të orës. Nëse flamuri ngrihet, ai do të vendosë ssegInputVal në tela messageVal në ekranin me shtatë segmente. Nëse flamuri nuk është ngritur, ai do të vazhdojë të nxjerrë numrin e rastit (randomVal).

Hapi 5: Duke luajtur lojën

Duke luajtur lojën!
Duke luajtur lojën!
Duke luajtur lojën!
Duke luajtur lojën!
Duke luajtur lojën!
Duke luajtur lojën!

Udhëzimet:

  • Përdoruesi do të shtypë butonin R për të bërë një lojë të re, ose do të ndryshojë numrin në ekranin me shtatë segmente.
  • Përdoruesi do të rrokulliset 8 ndërprerësit e parë lart (1) ose poshtë (0) për të futur numrin që përfaqëson numrin binar.
  • Butoni C do të përdoret për të kontrolluar nëse përdoruesi fitoi ose humbi.
  • Nëse përdoruesi fiton '111' do të shfaqet në ekranin me shtatë segmente.
  • Nëse përdoruesi humbet '0' do të shfaqet në ekranin me shtatë segmente.
  • Për të filluar një lojë të re Butoni R mund të shtypet në çdo kohë.

Recommended: