Përmbajtje:
- Hapi 1: Vështrim i përgjithshëm
- Hapi 2: Materialet
- Hapi 3: Krijimi i lojës
- Hapi 4: Modifikimet e së ardhmes
- Hapi 5: Përfundimi
Video: Mineweeper: 5 hapa (me fotografi)
2024 Autor: John Day | [email protected]. E modifikuara e fundit: 2024-01-30 12:28
Për projektin tonë përfundimtar CPE 133, Chase dhe unë vendosëm të krijonim një lojë ‘Minesweeper’ që përdorte butonin dhe ndërronte hyrjen nga një tabelë Basys-3, si dhe kodin VHDL. Një emër më i mirë për lojën mund të jetë fare mirë "Ruleta Ruse", megjithatë ne donim të shkonim me një emër më miqësor ndaj familjes. Loja përfshin përdoruesin të shtypë butonin e mesëm në tabelën Basys për të caktuar rastësisht një nga 16 çelsat të jetë "aktiv" me një bombë. Dy lojtarë pastaj kthejnë me radhë çelsin, një nga një, derisa njëri prej lojtarëve të kthejë çelësin me "bombën". Kur kjo ndodh, ekrani me shtatë segment paralajmëron lojtarët se ai lojtar sapo ka humbur lojën.
Hapi 1: Vështrim i përgjithshëm
Projekti përdori shumë nga modulet VHDL që ne kemi përdorur gjatë këtij tremujori. Një numërues katër bitësh u përdor në lidhje me skajin e orës në mënyrë që të simulonte një numër të rastësishëm katër bitësh për të aktivizuar njërin nga çelsat. Një diagram i gjendjes u përdor gjithashtu për të nxjerrë fjalë të ndryshme në ekranin me shtatë segmente, duke filluar nga "PLAY" kur lojtarët janë në mes të lojës së tyre, deri në "LOSE" kur njëri nga lojtarët ka rrotulluar çelësin aktiv.
Hapi 2: Materialet
- Bordi i Zhvillimit Basys3 nga Digilent, Inc.
- Vivado Design Suite BC_DEC.vhd (Ky skedar na u sigurua në Polylearn dhe u shkrua nga Bryan Mealy)
- Një banak 4 bit i bërë nga rrokulliset T
- Një FSM
Hapi 3: Krijimi i lojës
Hapi i parë drejt bërjes së kësaj loje ishte vizatimi i një diagrami qarkor me të gjithë përbërësit që do të përdorim. Hyrjet për këtë sistem ishin butoni 1, 16 çelsat dhe Ora. Rezultatet ishin ekrani me shtatë segmente dhe anodat. Pasi vizatuam diagramin e qarkut, ne shkruam skedarë burim individual për secilin komponent në Vivado dhe i vendosëm së bashku duke përdorur hartat e portit nën skedarin burimor kryesor.
E gjithë baza e lojës sillet rreth caktimit rastësisht të njërit prej 16 çelsave që të jetë aktiv me një bombë, dhe që lojtarët të mos e dinë se cili ndërprerës është aktiv derisa kyç aktiv të ndizet. Ne shikuam gjeneruesit e numrave të rastit dhe pseudorandomë në internet, por përfundimisht vendosëm që përdorimi i një numëruesi 4-bit dhe caktimi i ndërprerësit përkatës për të qenë aktiv është mjaft i rastësishëm për atë që ne po kërkonim. Ne ishim në gjendje të ripërdorim numëruesin tonë 4-bit që krijuam në një projekt të mëparshëm për të qenë në gjendje të punojmë për këtë detyrë. Ne përdorëm numëruesin për të krijuar një numër të rastit midis 0-15; pastaj në komponentin main1, i caktuam ekuivalentin dhjetor të numrit të rastit kalimit të tij përkatës në tabelë. Siç shihet në skemë, si dalja X ('bombë aktive') nga komponenti main1 ashtu edhe çelsat që ndizen lojtarët shkojnë në FSM1. Makina shtetërore nxjerr një vlerë një bit Z e cila më pas lexohet nga BC_DEC1. Makina e Gjendjes së Fundit që përdorëm ka dy gjendje të ndryshme: në gjendjen A, daljet e ekranit me shtatë segmente ‘PLAY’ dhe makina qëndron në atë gjendje derisa të pranojë që çelësi i aktivizuar është i përmbysur. Pasi të ndodhë kjo, FSM shkon në gjendjen B ku nxjerr 'LOSE' në ekranin e shtatë segmenteve dhe qëndron në atë gjendje derisa të 16 ndërprerësit të kthehen në '0'. Kur plotësohet ai kusht, FSM -ja përsëri shkon në gjendjen A dhe pret lojtarët të fillojnë një lojë tjetër. Një diagram Moore për të ndihmuar në kuptimin e këtij FSM është treguar më lart.
Hapi 4: Modifikimet e së ardhmes
Disa modifikime që ne po merrnim parasysh për të bërë në lojën tonë përfshijnë shtimin e më shumë bombave në fushë (ndoshta duke u rritur nga një në tre), duke shtuar një numërues rezultatesh dhe raunde të shumta. Ne përfundimisht vendosëm kundër këtyre përmirësimeve, pasi zbuluam se luajtja e një loje më të gjatë, të zgjatur zakonisht ishte më e tensionuar dhe në fund më shumë argëtuese sesa një lojë që përfundoi zakonisht pas tre ose katër rrokullisjeve.
Hapi 5: Përfundimi
Ne ishim shumë të kënaqur me rezultatin përfundimtar të këtij projekti; jo vetëm sepse versioni përfundimtar i lojës ishte i këndshëm për tu luajtur, por edhe sepse krijimi dhe programimi i projektit na kërkoi të shfrytëzonim më së shumti, nëse jo gjithçka që mësuam këtë tremujor. Ne përdorëm Flip Flops, sportele, FSM, orën, hyrjen e përdoruesit nga bordi dhe daljen në ekranin e shtatë segmenteve.
Ne gjithashtu mësuam se si disa gabime sintaksore mund të prishin plotësisht programin (edhe nëse ato do të konsideroheshin të mira në gjuhë të tjera programimi si Python ose Java) dhe se vetëm pas simulimeve të shumta dhe përsëritjeve të shumta të kodit të ngarkuar dhe testuar në bord, a do të jeni më në fund në gjendje të punoni të gjitha defektet nga kodi juaj.
Recommended:
Spërkat! Fotografi me pika të ujit: 10 hapa (me fotografi)
Spërkat! Uji Droplet Photography: Unë kam xhiruar pika uji për një kohë tani …. që nga viti 2017. Ende mbaj mend se sa i emocionuar isha kur mora pika uji që kërcejnë nga sipërfaqja me konfigurimin tim të parë që bëra me Littlebits … Me këto konfigurimet (Marku I dhe Marku II) u frymëzova
Bëni fotografi të shkëlqyera me një iPhone: 9 hapa (me fotografi)
Bëni fotografi të mrekullueshme me një iPhone: Shumica prej nesh mbajnë një smartphone me vete kudo këto ditë, kështu që është e rëndësishme të dini se si ta përdorni kamerën tuaj të smartphone për të bërë fotografi të mrekullueshme! Kam vetëm një smartphone për disa vjet dhe më ka pëlqyer të kem një aparat fotografik të mirë për të dokumentuar gjërat që kam
Si të bëni: Instalimi i Raspberry PI 4 pa kokë (VNC) me imazh Rpi dhe fotografi: 7 hapa (me fotografi)
Howto: Instalimi i Raspberry PI 4 Headless (VNC) Me Rpi-imager dhe Fotografi: Unë planifikoj ta përdor këtë Rapsberry PI në një mori projektesh argëtuese përsëri në blogun tim. Mos ngurroni ta kontrolloni. Doja të kthehesha në përdorimin e PI -së time të Raspberry por nuk kisha një tastierë ose miun në vendndodhjen time të re. Kishte pak kohë që kur krijova një mjedër
Si të çmontoni një kompjuter me hapa të thjeshtë dhe fotografi: 13 hapa (me fotografi)
Si të çmontoni një kompjuter me hapa dhe fotografi të lehta: Ky është një udhëzim se si të çmontoni një kompjuter. Shumica e përbërësve bazë janë modularë dhe hiqen lehtë. Sidoqoftë, është e rëndësishme që të jeni të organizuar në lidhje me të. Kjo do t'ju ndihmojë të mos humbni pjesë, dhe gjithashtu në bërjen e ri -montimit
Konvertimi i njehsorit të qirinjve për fotografi: 5 hapa (me fotografi)
Shndërrimi i njehsorit të qirinjve për fotografi: Nëse ju pëlqen puna ime, ju lutemi votoni për këtë Instructable në Make It Real Challenge para 4 qershor 2012. Faleminderit! Për ata prej fotografëve amatorë që ju pëlqen të xhironi film, ndonjëherë kamerat e vjetra nuk kanë matësin e duhur të dritës