Talaan ng mga Nilalaman:

Pangwakas na Proyekto ng CPE 133 Decimal to Binary: 5 Hakbang
Pangwakas na Proyekto ng CPE 133 Decimal to Binary: 5 Hakbang

Video: Pangwakas na Proyekto ng CPE 133 Decimal to Binary: 5 Hakbang

Video: Pangwakas na Proyekto ng CPE 133 Decimal to Binary: 5 Hakbang
Video: Talumpati tungkol sa "Epekto ng Covid 19 sa Edukasyon". (Pangwakas na proyekto) FIL 1 SECTION P 2024, Nobyembre
Anonim
Pangwakas na Proyekto ng CPE 133 Decimal to Binary
Pangwakas na Proyekto ng CPE 133 Decimal to Binary

Ang Mga Binary Number ay isa sa mga unang bagay na naisip kapag nag-iisip ng digital na lohika. Gayunpaman, ang Mga Numero ng Binary ay maaaring maging isang mahirap na konsepto para sa mga bago dito.

Tutulungan ng proyektong ito ang mga bago at may karanasan sa mga binary number na master na nagko-convert ng mga decimal number. Sa pamamagitan ng paglikha ng isang laro susubukan namin ang mga gumagamit sa kanilang kakayahan sa pag-convert. Ang larong ito ay papatayin sa isang Basys3 Board at mai-program sa Verilog.

Hakbang 1: Kailangan ng Mga Materyales

Mga Materyal na Kailangan
Mga Materyal na Kailangan

Ang Mga Sumusunod na Materyal ay kinakailangan upang gawin ang Decimal to Binary Conversion Game na ito:

  • Xilinx Vivado Design Suite Software
  • Digilent Basys3 FPGA Board
  • USB sa Micro USB Cable

Hakbang 2: Pag-set up ng LFSR (Rehistro ng shift ng Linear Feedback)

Pag-set up ng LFSR (Linear Feedback Shift Register)
Pag-set up ng LFSR (Linear Feedback Shift Register)
Pag-set up ng LFSR (Linear Feedback Shift Register)
Pag-set up ng LFSR (Linear Feedback Shift Register)

Ang LFSR (Linear Feedback Shift Register) ay isang module na ginamit upang makabuo ng mga "random" na numero.

Ang isang LFSR ay hindi ganap na random dahil bumubuo ito ng mga pseudo-random na numero na isang proseso ng pagbuo ng mga numero na lilitaw na sapalaran ngunit hindi.

Ang isang LFSR ay isang rehistro ng paglilipat na ang input bit ay isang linear na pagpapaandar ng nakaraang estado, na nangangahulugang ang LFSR ay ikot sa pamamagitan ng isang may hangganan na itinakdang mga numero. Partikular para sa larong ito, gagamitin lamang ng LFSR ang 8 bits upang limitahan ang decimal number na maaari itong mabuo sa 255.

Ginagamit ang Button L (btnL) upang i-reset ang numero sa LFSR.

Ang module na LFSR na ito ay hindi nilikha ng mga gumagawa ng larong ito. Ang module ng LFSR ay nilikha ni Carleton University Professor, John Knight. Ang link para sa kanyang module ay kasama sa ibaba.

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

Hakbang 3: Pag-set up ng Pitong Segment na Pagpapakita

Pagse-set up ng Pitong Segment Display
Pagse-set up ng Pitong Segment Display

Ginagamit ang isang Seven-Segment Display sa Basys3 Board at sa maraming iba pang mga piraso ng hardware upang maipakita ang mga alphanumeric character.

Ang module ng Display na Pitong-Segment na ginagamit sa larong ito ay nagko-convert ng isang binary number sa isang decimal number at ipinapakita ito bilang isang decimal number.

Sa pamamagitan ng paggamit ng dati nang tinalakay na module ng LFSR, isang random na nabuong numero ang ilalabas sa Seven-Segment Display.

Ang module ng Seven-Segment Display ay hindi nilikha ng mga gumagawa ng larong ito. Ang module ng Seven-Segment Display ay ibinigay ng California Polytechnic State University Professor, Joseph Callenes-Sloan. Ang pdf para sa modyul ay nakakabit sa ibaba.

Hakbang 4: Paglikha ng Modyul ng Laro

Paglikha ng Module ng Laro
Paglikha ng Module ng Laro
Paglikha ng Module ng Laro
Paglikha ng Module ng Laro
Paglikha ng Module ng Laro
Paglikha ng Module ng Laro
Paglikha ng Module ng Laro
Paglikha ng Module ng Laro

Lumikha ng Module ng Laro (pangunahing).

Gagamitin ng modyul na ito ang module ng LFSR upang makabuo ng isang random na numero at pagkatapos ay i-output ito sa Display na Pitong-Segment.

Gumagamit ang module pagkatapos ng isang palaging block na i-reset ang random na numero. Nagpapatakbo ito sa positibong gilid ng Button R (btnR), na nangangahulugang gagana lamang ito kapag pinindot ang Button R.

Ang Pangalawang palaging bloke ay nagpapatakbo sa positibong gilid ng orasan (clk). Kung pinindot ang Button C (btnC) susuriin nito kung ang numero sa Seven-Segment Display ay kapareho ng input number mula sa mga switch (sw). Ang block na ito ay magtataas ng isang flag (itakda ang flag register (flag) sa 1) at babaguhin ang messageVal wire alinsunod sa kung nanalo o natalo ang gumagamit.

Ang ikatlong palaging bloke ay nagpapatakbo din sa positibong gilid ng orasan. Kung ang bandila ay itinaas itatakda nito ang ssegInputVal sa messageVal wire sa Seven-Segment Display. Kung ang bandila ay hindi itataas itutuloy nito ang output ng random na numero (randomVal).

Hakbang 5: Paglalaro ng Laro

Nagpe-play ang Laro!
Nagpe-play ang Laro!
Nagpe-play ang Laro!
Nagpe-play ang Laro!
Nagpe-play ang Laro!
Nagpe-play ang Laro!

Mga tagubilin:

  • Pipindutin ng gumagamit ang Button R upang gumawa ng isang bagong laro, o baguhin ang numero sa Seven-Segment Display.
  • I-flip ng gumagamit ang unang 8 switch up (1) o pababa (0) upang mai-input ang kumakatawan sa binary number.
  • Gagamitin ang Button C upang suriin kung nanalo o natalo ang gumagamit.
  • Kung nanalo ang User na '111' ay ipapakita sa Seven-Segment Display.
  • Kung nawala ang User na '0' ay ipapakita sa Seven-Segment Display.
  • Upang magsimula ng isang bagong laro Button R ay maaaring pipi sa anumang oras.

Inirerekumendang: