Orodha ya maudhui:
Video: Mchezo wa Ushindani wa Mchezaji wa 2 VS: Hatua 4
2024 Mwandishi: John Day | [email protected]. Mwisho uliobadilishwa: 2024-01-30 12:53
Utahitaji:
1. Basile zenye nguvu 3, Bodi ya FPGA (au FPGA nyingine yoyote,)
2. Toleo la kisasa la Vivado, au mazingira mengine ya VHDL
3. Kompyuta inayoweza kuendesha programu iliyotajwa.
Hatua ya 1: Mchezo wenyewe
Jinsi FSM inavyoingiliana na moduli.
Jinsi ya kucheza
Kuanza, bonyeza kitufe cha kati. Hii itasababisha "99", inayowakilisha afya ya mchezaji mbili, kuonyesha kwenye onyesho la sehemu saba. Kisha, taa za taa zitaangazia mtiririko kutoka kulia kwenda kushoto. Hii huunda bar ya nguvu. Mara baa ya umeme imejaa, inarudia. Lengo la mchezaji mmoja ni kupindua swichi yao wakati bar iko juu iwezekanavyo. LED nyingi zinawaka, mchezaji anayefanya uharibifu zaidi kwa mchezaji mbili. Baada ya mchezaji mmoja kupindua swichi yao, uharibifu ulioshughulikiwa hukatwa kutoka kwa afya ya mchezaji mbili. Kisha, hubadilisha zamu ya mchezaji mbili. Sasa, nambari iliyoonyeshwa inawakilisha afya ya mchezaji, na upau wa nguvu hujaza kutoka kushoto kwenda kulia. Mara tu mchezaji mbili anapohama, uharibifu hukatwa, na inarudi kwa zamu ya mchezaji tena. Hii inarudia hadi mchezaji mmoja afikie afya 0. Video ya utendaji huu imeambatanishwa.
Hatua ya 2: FSM
Mchezo huu kimsingi ni mashine kubwa kubwa ya serikali, ambayo mantiki ngumu hufanyika kulingana na hali ambayo FSM iko.
Hali 1: Menyu Hali ya kwanza ni skrini ya menyu, ambayo ni moja wapo ya majimbo rahisi. Inajumuisha sehemu saba inayoonyesha neno "CHEZA", na kitufe kinachosababisha mchezo kuanza. Kitufe, BTN, kinatuongoza kwa hali inayofuata, ambayo ni zamu ya mchezaji.
Hali 2: Zamu ya Mchezaji Mtu
Zamu ya mchezaji huamsha ishara inayosababisha onyesho la sehemu saba kuonyesha afya ya Mchezaji mbili. Ishara nyingine inawasha ili kuamsha rejista ya mabadiliko iliyoingizwa kutoka kwa moduli nyingine ambayo tumeunda (Pone.vhd). Rejista hii ya kuhama hufanya taa ya LED iwe juu kama kipimo cha nguvu kinachoongezeka katika michezo mingine, na ingeweza kurejeshwa hadi 0 inapofikia kiwango cha juu cha LED ambazo zinaweza kuwashwa. Inasasisha juu ya ukingo unaoinuka wa saa uliopatikana kutoka kwa barclock.vhd, ambayo imebadilishwa kutoka faili ya maabara iliyokopwa. Tulikuwa na mwanzo wa mwambaa wa mchezaji kutoka kulia, na ujaze kushoto, kwa sababu swichi ya mchezaji pia iko kushoto (kwa uzoefu wa mtumiaji mzuri). Mara tu swichi inapobanduliwa, serikali inaendelea kwa mchezaji atoe punguzo moja, na kiwango cha kazi ya LED kinahifadhiwa kwa ishara.
Hali 3: Mchezaji mmoja atoe ishara na kiwango cha kazi ya LED huamua kiwango cha afya kinachopunguzwa. Hii inafanywa kwa kuwa na rejista nyingine ya mabadiliko (deductor1.vhd) ambayo badala ya kuongeza LED, hupunguza. Hizi hupungua kwa makali ya kupanda kwa moja ya moduli za saa ambazo tulikopa na kurekebisha (downcounterclock.vhd). Mara tu LED moja imezimwa, hatua moja ya afya hukatwa kutoka kwa afya ya mchezaji mbili. Ikiwa wakati wa mchakato huu mchezaji mbili zinafikia afya 0, tunaacha na mara moja tuende kwenye hali ya "Mchezo wa kumaliza". Vinginevyo, mara vector ya LED itakapofika "0000000000000000", tunaendelea na zamu ya mchezaji mbili.
Hali 4: Zamu ya Mchezaji Pili Zamu ya mchezaji ni sawa na zamu ya mchezaji, isipokuwa rejista ya zamu yake (Ptwo.bhd) huenda kutoka kushoto kwenda kulia, na swichi iko upande wa kulia wa bodi. Ishara inaamsha kuwa na onyesho la afya la Mchezaji 1. Mara tu swichi 2 inapoanza kufanya kazi, hii huenda kwa zamu ya mchezaji wa Pili.
Hatua ya 5: Mchezaji wa Pesa mbili Kama zamu ya mchezaji mbili, mchezaji mbili anatoa hufanya sana kama mchezaji mmoja atoe. Tofauti kuu ni kwamba rejista ya mabadiliko ambayo inadhibiti kuzima kwa LED huenda kwa mwelekeo tofauti, ambayo ni marekebisho rahisi ya kufanya mara tu unapokuwa na mchezaji wa mchezaji anayefanya kazi vizuri.
Hatua ya 6: Mchezo Kumalizika Ikiwa wakati wowote mchezaji yeyote anafikia afya ya sifuri, mchezo unabadilika kwenda hali hii. Hakuna maonyesho ya kupendeza. Ikiwa BTN imesisitizwa, basi afya inarejeshwa kuwa 99, na serikali inarudi kwenye menyu, ikianza vizuri mchezo.
Hatua ya 3: Moduli
Mchoro wa Sanduku Nyeusi la Mchezo
Downcounterclock (kulingana na moduli ya clk_div.vhd na Bryan Mealy):
Hii ndio saa ambayo inashughulikia wakati wa watoaji. Mara kwa mara inayoitwa max_count ni 3x zaidi ya bar_'s max_count mara kwa mara. Hii itafanya watoaji 3x polepole kuliko kasi ya bar.
Barclock - (kulingana na moduli ya clk_div.vhd na Bryan Mealy):
Saa hii inashughulikia muda wa viwango vya nguvu, ambavyo tulifanya kuongezeka haraka ili kuongeza ugumu kwenye mchezo. Wakati huu unaweza kubadilishwa kwa kupenda kwako, kuongeza kasi kwa kufanya max_count mara kwa mara kuwa nambari kubwa, au kuipunguza kwa kufanya max_count iwe nambari ndogo. Ili faili hii ifanye kazi, unahitaji kuhakikisha kuwa vizuizi vyako vinalingana na vyetu.
Pone:
Hii ni rejista ya mabadiliko ambayo inabadilisha bits kushoto, na kuongeza moto kidogo kuifanya ionekane kama kipimo cha nguvu kinaongezeka. Wakati bits zote zina moto, bits zote zinawekwa tena kuwa '0', na mzunguko unaanza tena.
Ptwo:
Hii ni toleo lililobadilishwa la moduli ya P1.
Mtoaji1:
Hii ni mchanganyiko wa rejista ya mabadiliko na mtoaji. Rejista ya kuhama huenda kwa mwelekeo tofauti wa rejista ya mabadiliko ya P1, ikionyesha kupunguzwa. Hii pia inachukua 1 kutoka kwa afya ya Mchezaji 2 kwa kila mzunguko wa saa, kwa hivyo pamoja na mchanganyiko wa kazi hizi mbili, itaonekana kama afya ya mpinzani inapungua kwa 1 kwa kila uongozi wa baa ya afya inayoshuka.
Deductor2: Hii ni toleo lililobadilishwa la moduli ya Deductor1.
PlayDecoder (iliyokopwa na iliyobadilishwa slgihtly kutoka ekchen35649 133 yake inayoweza kufundishwa): Hii inatumika katika hali ya menyu kuonyesha neno "CHEZA" kwenye kisimbuzi cha sehemu saba.
Hatua ya 4: Jaribu
Mchezo huu awali uliongozwa na moja ya minigames kutoka Kirby. Ni mchezo rahisi wa wachezaji wawili ambao unaweza kuchezwa kwenye Bodi ya Basys 3, au FPGA yoyote.
Hatua ya 1: Vifaa vinavyohitajika
Utahitaji: Digilent Basys 3, Bodi ya FPGA (au nyingine yoyote) Toleo la sasa la Vivado, au mazingira mengine ya vhdl Kompyuta inayoweza kuendesha programu iliyotajwa Ubongo
Hatua ya 2: Mchezo wenyewe
Jinsi ya kucheza
Kuanza, bonyeza kitufe cha kati. Hii itasababisha "99", inayowakilisha afya ya mchezaji mbili, kuonyesha kwenye onyesho la sehemu saba. Kisha, taa za taa zitaangazia mtiririko kutoka kulia kwenda kushoto. Hii huunda bar ya nguvu. Mara baa ya umeme imejaa, inarudia. Lengo la mchezaji mmoja ni kupindua swichi yao wakati bar iko juu iwezekanavyo. LED nyingi zinawaka, mchezaji anayefanya uharibifu zaidi kwa mchezaji mbili. Baada ya mchezaji mmoja kupindua swichi yao, uharibifu ulioshughulikiwa hukatwa kutoka kwa afya ya mchezaji mbili. Kisha, hubadilisha zamu ya mchezaji mbili. Sasa, nambari iliyoonyeshwa inawakilisha afya ya mchezaji, na upau wa nguvu hujaza kutoka kushoto kwenda kulia. Mara tu mchezaji mbili anapohama, uharibifu hukatwa, na inarudi kwa zamu ya mchezaji tena. Hii inarudia hadi mchezaji mmoja afikie afya 0. Video ya utendaji huu imeambatanishwa.
Ili kucheza mchezo, pakia kwenye ubao wa basys, na bonyeza kitufe cha kati. Jaribu kubonyeza swichi kwa kutumia LED nyingi iwezekanavyo, na kisha subiri na uangalie wakati bodi inapunguza alama hizo kutoka kwa afya ya mpinzani wako. Kisha, mpatie rafiki yako, na
Hatua ya 3: FSM
Mchezo huu kimsingi ni mashine kubwa kubwa ya serikali, ambayo mantiki ngumu hufanyika kulingana na hali ambayo FSM iko.
(Mchoro wa Serikali)
Hali 1: Menyu
Hali ya kwanza ni skrini ya menyu, ambayo ni moja ya majimbo rahisi. Inajumuisha sehemu saba inayoonyesha neno "CHEZA", na kitufe kinachosababisha mchezo kuanza. Kitufe, BTN, kinatuongoza kwa hali inayofuata, ambayo ni zamu ya mchezaji.
Hali 2: Zamu ya Mchezaji Mtu
Zamu ya mchezaji huamsha ishara inayosababisha onyesho la sehemu saba kuonyesha afya ya Mchezaji mbili. Ishara nyingine inawasha ili kuamsha rejista ya mabadiliko iliyoingizwa kutoka kwa moduli nyingine ambayo tumeunda (Pone.vhd). Rejista hii ya kuhama hufanya taa ya LED iwe juu kama kipimo cha nguvu kinachoongezeka katika michezo mingine, na ingeweza kurejeshwa hadi 0 inapofikia kiwango cha juu cha LED ambazo zinaweza kuwashwa. Inasasisha juu ya ukingo unaoinuka wa saa uliopatikana kutoka kwa barclock.vhd, ambayo imebadilishwa kutoka faili ya maabara iliyokopwa. Tulikuwa na mwanzo wa mwambaa wa mchezaji kutoka kulia, na ujaze kushoto, kwa sababu swichi ya mchezaji pia iko kushoto (kwa uzoefu wa mtumiaji mzuri). Mara tu swichi inapobanduliwa, serikali inaendelea kwa mchezaji atoe punguzo moja, na kiwango cha kazi ya LED kinahifadhiwa kwa ishara.
Hali 3: Mchezaji wa Kwanza atoe
Ishara iliyo na kiwango cha kazi ya LED huamua kiwango cha afya ambacho hupunguzwa. Hii inafanywa kwa kuwa na rejista nyingine ya mabadiliko (deductor1.vhd) ambayo badala ya kuongeza LED, hupunguza. Hizi hupungua kwa makali ya kupanda kwa moja ya moduli za saa ambazo tulikopa na kurekebisha (downcounterclock.vhd). Mara tu LED moja imezimwa, hatua moja ya afya hukatwa kutoka kwa afya ya mchezaji mbili. Ikiwa wakati wa mchakato huu mchezaji mbili zinafikia afya 0, tunaacha na mara moja tuende kwenye hali ya "Mchezo wa kumaliza". Vinginevyo, mara vector ya LED itakapofika "0000000000000000", tunaendelea na zamu ya mchezaji mbili.
Hali 4: Zamu ya Mchezaji wa Pili
Zamu ya mchezaji ni sawa kabisa na zamu ya mchezaji, isipokuwa rejista ya zamu yake (Ptwo.bhd) huenda kutoka kushoto kwenda kulia, na swichi iko upande wa kulia wa bodi. Ishara inaamsha kuwa na onyesho la afya la Mchezaji 1. Mara tu swichi 2 inapoanza kufanya kazi, hii huenda kwa zamu ya mchezaji wa Pili.
Hatua ya 5: Mchezaji wa Pesa mbili
Kama zamu ya mchezaji mbili, mchezaji mbili anatoa hutenda sana kama mchezaji mmoja atoe. Tofauti kuu ni kwamba rejista ya kuhama ambayo inadhibiti kuzima kwa LED huenda kwa mwelekeo tofauti, ambayo ni marekebisho rahisi ya kufanya mara tu unapokatwa na mchezaji kufanya kazi vizuri.
Hatua ya 6: Mchezo Kumalizika Ikiwa kwa wakati wowote mchezaji yeyote anafikia afya sifuri, mchezo unabadilika kwenda hali hii. Hakuna maonyesho ya kupendeza. Ikiwa BTN imesisitizwa, basi afya inarejeshwa kuwa 99, na serikali inarudi kwenye menyu, ikianza vizuri mchezo.
Sanduku Nyeusi
Hatua ya 4: Moduli
Downcounterclock (kulingana na moduli ya clk_div.vhd na Bryan Mealy):
Hii ndio saa ambayo inashughulikia wakati wa watoaji. Mara kwa mara inayoitwa max_count ni 3x zaidi ya bar_'s max_count mara kwa mara. Hii itafanya watoaji 3x polepole kuliko kasi ya bar.
Barclock - (kulingana na moduli ya clk_div.vhd na Bryan Mealy): Saa hii inashughulikia muda wa vipimo vya nguvu, ambavyo tulifanya kuongezeka haraka ili kuongeza ugumu kwenye mchezo. Wakati huu unaweza kubadilishwa kwa kupenda kwako, kuongeza kasi kwa kufanya max_count mara kwa mara kuwa nambari kubwa, au kuipunguza kwa kufanya max_count iwe nambari ndogo. Ili faili hii ifanye kazi, unahitaji kuhakikisha kuwa vizuizi vyako vinalingana na vyetu.
Pone: Hii ni rejista ya mabadiliko ambayo inabadilisha bits kushoto, na kuongeza moto kidogo kuifanya ionekane kama kipimo cha nguvu kinaongezeka. Wakati bits zote zina moto, bits zote zinawekwa tena kuwa '0', na mzunguko unaanza tena.
Ptwo: Hii ni toleo lililobadilishwa la moduli ya P1.
Deductor1: Huu ni mchanganyiko wa rejista ya mabadiliko na mtoaji. Rejista ya kuhama huenda kwa mwelekeo tofauti wa rejista ya mabadiliko ya P1, ikionyesha kupunguzwa. Hii pia inachukua 1 kutoka kwa afya ya Mchezaji 2 kwa kila mzunguko wa saa, kwa hivyo pamoja na mchanganyiko wa kazi hizi mbili, itaonekana kama afya ya mpinzani inapungua kwa 1 kwa kila uongozi wa baa ya afya inayoshuka.
Deductor2: Hii ni toleo lililobadilishwa la moduli ya Deductor1.
PlayDecoder (iliyokopwa na kubadilishwa kidogo kutoka ekchen35649 133 yake inayoweza kufundishwa):
Hii inatumika katika hali ya menyu kuonyesha neno "CHEZA" kwenye kisimbuzi cha sehemu saba.
Kufanya: picha, video
Ilipendekeza:
Gonga Gonga Upinde wa mvua - Mchezaji 2 wa Mchezo wa Kugundua Haraka: Hatua 4 (na Picha)
Gonga Gonga Upinde wa mvua - Mchezaji 2 wa Mchezo wa Kujibu kwa Haraka: wiki 2 zilizopita binti yangu alikuwa na wazo la fikra kufanya mchezo wa majibu ya haraka na rangi za upinde wa mvua (yeye ni mtaalam wa upinde wa mvua: D). Nilipenda wazo hilo mara moja na tukaanza kufikiria ni jinsi gani tunaweza kuifanya iwe mchezo halisi. Wazo lilikuwa. Una upinde wa mvua katika
Mfumo wa Ushindani wa Buzzer: Hatua 5
Mfumo wa Ushindani wa Buzzer: Mfumo wa ushindani wa buzzer iliyoundwa katika mradi huu unafanya kazi sawa na mifumo ya buzzer inayotumiwa katika Mashindano ya Kanda na Kitaifa ya Sayansi. Mradi huu uliongozwa na kuhusika kwangu na timu yangu ya shule ya upili ya bakuli kwa sayansi
Mchezo wa Aruduino LED Bonyeza Mchezo wa Mchezaji Mbili: Hatua 8
Mchezo wa Aruduino LED Bonyeza Mchezo wa Mchezaji Mbili: Mradi huu umeongozwa na @HassonAlkeim. Ikiwa uko tayari kuangalia kwa kina hapa ni kiunga unaweza kuangalia https://www.instructables.com/id/Arduino-Two-Player-Fast-Button-Clicking-Game/. Mchezo huu ni toleo bora la Alkeim's. Ni
Ushindani wa Mtandao: Mchezo wa kuchelewesha kwa BBC Micro: kidogo: Hatua 10 (na Picha)
Ushindani wa Mtandao: Mchezo wa Ucheleweshaji wa BBC Micro: kidogo: Katika mafunzo haya, nitaelezea jinsi ya kutekeleza mchezo wa msingi wa wachezaji wengi kwenye BBC ndogo: kidogo na sifa zifuatazo. sasisho za skrini Nambari rahisi ya washiriki Easy co
Mchezaji aliyejificha Cd Mchezaji: Hatua 7
Mchezaji aliyejificha Cd Player: Hii ilifanyika badala ya kununua moja ya zile zilizo chini ya kicheza cd cha baraza la mawaziri kwa bei rahisi. Unachohitaji ni kichezaji cha kawaida cha cd ndogo na adapta ya umeme na spika zingine za kompyuta ambazo zinakutosha