Sadržaj:

Konkurentni sustav zujalice: 5 koraka
Konkurentni sustav zujalice: 5 koraka

Video: Konkurentni sustav zujalice: 5 koraka

Video: Konkurentni sustav zujalice: 5 koraka
Video: Соединения верхней конечности 2024, Rujan
Anonim
Image
Image
Materijali
Materijali

Konkurentni sustav zvučnih signala osmišljen u ovom projektu funkcionira slično sustavima zujalica koji se koriste na regionalnim i državnim natjecanjima u zdjelama za znanost. Ovaj projekt inspiriran je mojim angažmanom s timom znanstvenih zdjela moje srednje škole koji je trajao tri godine. Uvijek smo imali želju ponovno stvoriti sustav zujalice za zaključavanje s timerom od 5 i 20 sekundi.

Kako bi dali nešto više o sustavu zujalica, zvučnici za znanstvenu zdjelu programirani su za unos maksimalno 8 svirača (s 8 zasebnih zvučnika). Nakon što pritisnete jedan zvučni signal, zvučni signal prve osobe će zasvijetliti kako bi pokazao koji igrač prima pitanje. Ostatak igrača bit će "zaključan", što znači da njihovi zujalici neće reagirati sve dok moderator ne resetira sustav zujala.

Nakon što moderator pročita pitanja, pritisnut će gumb za pokretanje odbrojavanja koje će biti prikazano na zaslonu sa sedam segmenata. Nakon pitanja "toss-up", moderator može pritisnuti desnu tipku za početak odbrojavanja od 5 sekundi. U međuvremenu, nakon "bonus" pitanja, moderator može pritisnuti lijevu tipku za početak odbrojavanja od 20 sekundi. Kad mjerač vremena dosegne nulu, zvučni signal će pokazati da je playeru isteklo vrijeme.

Za resetiranje sustava i odbrojavanja moderator može pritisnuti središnji gumb. Da biste poništili mehanizam za zaključavanje i LED diode igrača, prekidači za igrača 1 i igrača 2 moraju biti nisko postavljeni.

Korak 1: Materijali

Trebat će vam sljedeće:

  • Ploča Basys3 (ili ekvivalentna FPGA ploča)
  • Micro-B USB kabel
  • Zvučnik (koristio sam pasivni zvučnik)
  • 2 žice
  • Softver za implementaciju na FPGA (koristio sam Vivado)
  • Datoteka konkurentnog sustava zujalice

Korak 2: Dijagram crne kutije

Dijagram crne kutije
Dijagram crne kutije

Dijagram u crnoj kutiji prikazuje ulaze i izlaze koji će se koristiti u ovom zvučnom sustavu.

ULAZI:

player1, player2 Ovi ulazi povezani su s dva prekidača na ploči Basys3. Radi praktičnosti, koristit će se krajnji lijevi i krajnji desni prekidač.

reset Središnja tipka će se koristiti za predstavljanje tipke za resetiranje.

count_down_20_sec Lijeva tipka će se koristiti za predstavljanje tipke timera od 20 sekundi.

count_down_5_sec Desna tipka će se koristiti za predstavljanje tipke timera od 20 sekundi. Kako biste osigurali pokretanje odbrojavanja od 20 i 5 sekundi, držite tipku sve dok sedmosegmentni zaslon ne prikaže mjerač vremena.

CLK FPGA ploča će generirati sat koji radi s frekvencijom od 10 ns.

ISHODI:

zvučnik Izlaz zvučnika spojen je na vanjski zvučnik ili zvučnik. Zvučnik ćete morati spojiti na JA pmod portove Basys3 ploče. Ovaj korak bit će opisan u nastavku.

speaker_LED Ovaj izlaz je spojen na LED na sredini ploče i samo će pokazati kada je izlaz zvučnika na FPGA -u visok. Ovo možete koristiti za testiranje vanjskog zvučnika. Imajte na umu da neki od pmod priključaka možda neće dobro funkcionirati, pa možete isprobati različite i pomoću LED -a provjeriti treba li zvučnik biti uključen.

SEGMENTI Ovaj izlaz je povezan s osam pojedinačnih segmenata na sedmosegmentnom zaslonu, uključujući decimalnu točku.

DISP_EN Ovaj izlaz spojen je na četiri anode na sedmosegmentnom zaslonu.

player_LED Ovaj izlaz je 2-snopni signal koji je spojen na LED diode iznad prekidača player1 i player2. Prvi igrač koji okrene odgovarajući prekidač bit će označen LED diodom. Imajte na umu da obje LED diode ne mogu biti uključene istovremeno.

Korak 3: Spajanje vanjskog zvučnika

Spajanje vanjskog zvučnika
Spajanje vanjskog zvučnika

Za spajanje vanjskog zvučnika na ploču Basys3, uzmite svoje dvije žice i spojite ih kako je prikazano na gornjoj slici. Bijela linija povezuje negativni terminal zvučnika s uzemljenjem na ploči. Crvena linija povezuje pozitivni terminal zvučnika s pAm priključkom JA10 na ploči.

Datoteka ograničenja dizajnirana je tako da bi svaki port od JA1 do JA10 trebao raditi. Međutim, neki pinovi na ploči ne reagiraju, pa ako JA10 ne radi, možete pokušati s drugim priključcima.

Korak 4: Strukturni dijagram

Strukturni dijagram
Strukturni dijagram

Gornja slika prikazuje strukturni dijagram konkurentnog zujalnog sustava, uključujući sve komponente koje čine glavni modul. Njihovi opisi su sljedeći:

player_lockout_LED1 Komponenta LED zaključavanja playera je stroj sa konačnim stanjem koji koristi enkodirano kodiranje. Ima četiri ulaza: player1, player2, reset i CLK. Sadrži 2-bitni izlazni player u paketu_LED. Svi ulazi i izlazi komponente player_lockout_LED1 izravno su spojeni na identično imenovane ulaze i izlaze glavnog modula.

buzzer_tone1 Komponenta zujalice temelji se na ovom kodu objavljenom na forumu

stackoverflow.com/questions/22767256/vhdl-… Međutim, on je modificiran tako da emitira kontinuirani zvuk s frekvencijom od 440 Hz (napomena). Ulaz za omogućavanje povezan je sa signalom koji omogućuje zujalicu koji je izlaz komponente down_counter_FSM1.

clk_div1 Komponenta razdjelnika sata je izmijenjena verzija satnog razdjelnika profesora Bryana Mealyja na PolyLearnu. Usporava sat pa je izlazni period 1 sekunda.

down_counter_FSM1 Brojač dolje je FSM dizajniran za odbrojavanje do nule. Dva moguća vremena početka su 20 ili 5 koje bira korisnički unos. On emitira '1' kada je mjerač vremena dosegao nulu, što znači da je vrijeme isteklo. Ovaj izlaz djeluje kao omogućavanje komponente tona zujalice. Brojač također emitira 8-bitni paketni signal koji šalje 8-bitni BCD koji se šalje segmentnom dekoderu. Drugi izlaz je counter_on koji je također povezan s valjanim ulazom na segmentnom dekoderu.

sseg_dec1 Sedmosegmentna komponenta dekodera dostupna je na PolyLearnu, a napisao ju je profesor Bryan Mealy. Koristi BCD ulaz koji pruža down_counter_FSM1, a na decimalni ekran emitira decimalni ekvivalent. Kad je brojač uključen, tada je važeći ulaz visok. To omogućuje dekoderu da prikaže decimalni broj na sedmosegmentnom zaslonu. Kad je brojač isključen, tada je važeći ulaz nizak. Zaslon sa sedam segmenata tada će prikazati samo četiri crtice.

Korak 5: Dijagram konačnog stroja (FSM)

Dijagram konačnog stroja (FSM)
Dijagram konačnog stroja (FSM)

Popis osjetljivosti za stroj konačnih stanja uključuje player1, player2, reset i sat. Izlaz FSM-a je 2-bitni paket svirača_LED spojen na dvije LED diode na ploči Basys3. Stroj konačnih stanja prikazuje sljedeća tri stanja:

ST0 je početno stanje. U tom stanju dvije LED diode su isključene. FSM će ostati u ovom stanju ako su i igrač1 i igrač2 niski. Asinkroni reset također postavlja stanje na ST0. Kad je prekidač player1 postavljen na visoko, sljedeće stanje bit će ST1. Ako je prekidač player2 postavljen na visoko, sljedeće stanje bit će ST2.

ST1 je stanje za koje svijetli LED lampica player1. FSM će ostati u ovom stanju za svaki ulaz. To znači da će čak i kad je prekidač player2 postavljen na visoko odmah nakon što je prekidač player1 visok, on će ostati u ST1. Samo asinkroni reset može postaviti sljedeće stanje na ST0.

ST2 je stanje za koje je uključena LED lampica player2. Slično ST !, FSM će ostati u ovom stanju za bilo koji ulaz, čak i kad je prekidač player1 postavljen na visoko odmah nakon što je prekidač player2 visok. Opet, samo asinkroni reset može postaviti sljedeće stanje na ST0.

Preporučeni: