Mundarija:

Raqobatli Buzzer tizimi: 5 qadam
Raqobatli Buzzer tizimi: 5 qadam

Video: Raqobatli Buzzer tizimi: 5 qadam

Video: Raqobatli Buzzer tizimi: 5 qadam
Video: VIDEO MA'RUZA. RAXMATULLAEVA N. (KAF. MENEJMENT). MAVZU: STRATEGIYA VA RAQOBATCHILIK USTUNLIGI 2024, Noyabr
Anonim
Image
Image
Materiallar
Materiallar

Ushbu loyihada ishlab chiqilgan raqobatbardosh signal tizimi, mintaqaviy va milliy ilmiy kosa musobaqalarida ishlatiladigan signal tizimlariga o'xshab ishlaydi. Bu loyiha men uch yil davomida o'rta maktabimning ilmiy fanlar jamoasi bilan ishlaganimdan ilhomlangan. Bizda har doim 5-soniya va 20-soniya taymeri bilan qulflangan signal tizimini qayta yaratish istagi bor edi.

Ovozli signal tizimi haqida ma'lumot berish uchun, ilm -fan piyolalari maksimal 8 ta o'yinchini (8 ta alohida signalli) kiritish uchun dasturlashtirilgan. Bitta qo'ng'iroq bosilgandan so'ng, birinchi o'yinchining ovozi qaysi o'yinchi savolni qabul qilishini ko'rsatish uchun yonadi. Qolgan o'yinchilar "qulflanadi", demak, moderator signal signal tizimini qayta o'rnatmaguncha, ularning signallari javob bermaydi.

Moderator savollarni o'qib bo'lgach, u tugmachani bosib, etti qismli displeyda aks etadigan taymerni ishga tushiradi. "O'tkazish" savolidan so'ng, moderator hisobni 5 soniyadan boshlab boshlash uchun o'ng tugmani bosishi mumkin. Ayni paytda, "bonus" savolidan so'ng, moderator 20 soniyadan boshlab hisoblashni boshlash uchun chap tugmani bosishi mumkin. Taymer nolga yetganida, ovozli signal pleyerda vaqt tugaganligini ko'rsatadi.

Tizim va hisoblagich taymerini qayta o'rnatish uchun moderator markaziy tugmani bosishi mumkin. Qulflash mexanizmini va o'yinchining LEDlarini qayta o'rnatish uchun 1 -o'yinchi va 2 -o'yinchi kalitlari past holatda bo'lishi kerak.

1 -qadam: materiallar

Sizga quyidagilar kerak bo'ladi:

  • Basys3 taxtasi (yoki unga teng keladigan FPGA taxtasi)
  • Micro-B USB kabeli
  • Karnay (men passiv dinamikdan foydalandim)
  • 2 ta sim
  • FPGA -da amalga oshirish uchun dasturiy ta'minot (men Vivadodan foydalanganman)
  • Raqobatli Buzzer tizimi fayl

2 -qadam: qora quti diagrammasi

Qora quti diagrammasi
Qora quti diagrammasi

Qora quti diagrammasi ushbu signal tizimida ishlatiladigan kirish va chiqishlarni ko'rsatadi.

Kirish:

player1, player2 Bu kirishlar Basys3 platasidagi ikkita kalitga ulangan. Qulaylik uchun chap va o'ngdagi kalitlar ishlatiladi.

reset Reset tugmasini ko'rsatish uchun markaziy tugma ishlatiladi.

count_down_20_sec Chap tugma 20 soniyali taymer tugmachasini ko'rsatish uchun ishlatiladi.

count_down_5_sec 20 soniya taymer tugmachasini ko'rsatish uchun o'ng tugma ishlatiladi. Taymer 20 sekundda ham, 5 soniyada ham ishga tushishini ta'minlash uchun tugmani etti segmentli displeyda taymer ko'rsatilguncha ushlab turing.

CLK FPGA platasi 10 ns chastotali ishlaydigan soatni ishlab chiqaradi.

Chiqish:

karnay Karnay chiqishi tashqi signal yoki karnayga ulangan. Karnayni Basys3 platasining JA pmod portlariga ulashingiz kerak bo'ladi. Bu qadam quyida tavsiflanadi.

Speaker_LED Bu chiqish plataning markazida joylashgan LEDga ulanadi va FPGA dinamikining chiqishi qachon yuqori ekanligini ko'rsatadi. Buni tashqi dinamikni sinab ko'rish uchun ishlatishingiz mumkin. E'tibor bering, ba'zi pmod portlari yaxshi ishlamasligi mumkin, shuning uchun siz boshqasini sinab ko'rishingiz va karnay yoqilganligini tekshirish uchun LEDdan foydalanishingiz mumkin.

SEGMENTLAR Bu chiqish o'nli kasrni o'z ichiga olgan holda etti segmentli displeyda sakkizta alohida segmentga ulangan.

DISP_TR Bu chiqish etti segmentli displeydagi to'rtta anodga ulangan.

player_LED Bu chiqish-pleer1 va player2 kalitlari ustidagi LEDlarga ulangan 2 to'plamli signal. Tegishli kalitni aylantirgan birinchi o'yinchi LED bilan ko'rsatiladi. E'tibor bering, ikkala LED ham bir vaqtning o'zida yoqilishi mumkin emas.

3 -qadam: Tashqi dinamikni ulash

Tashqi dinamikni ulash
Tashqi dinamikni ulash

Tashqi dinamikni Basys3 kartasiga ulash uchun ikkita simni oling va ularni yuqoridagi rasmda ko'rsatilgandek ulang. Oq chiziq karnayning salbiy terminalini bortdagi yer portiga ulaydi. Qizil chiziq dinamikning ijobiy terminalini bortdagi JA10 pmod portiga ulaydi.

Cheklovlar fayli JA1 dan JA10 gacha bo'lgan har qanday port ishlashi uchun mo'ljallangan. Biroq, bortdagi ba'zi pinlar javob bermaydi, shuning uchun agar JA10 ishlamasa, siz boshqa portlarni sinab ko'rishingiz mumkin.

4 -qadam: Strukturaviy diagramma

Strukturaviy diagramma
Strukturaviy diagramma

Yuqoridagi rasmda asosiy modulni tashkil etuvchi barcha komponentlarni o'z ichiga olgan raqobatbardosh signal tizimining strukturaviy diagrammasi ko'rsatilgan. Ularning tavsifi quyidagicha:

player_lockout_LED1 Pleyerni blokirovka qilishning LED komponenti-bu bir martalik kodlashni ishlatadigan cheklangan holatdagi mashina. U to'rtta kirishga ega: player1, player2, reset va CLK. U 2-bitli chiqish player_LED-ni o'z ichiga oladi. Player_lockout_LED1 komponentining kirish va chiqishlari asosiy modulning bir xil nomlangan kirish va chiqishlariga to'g'ridan-to'g'ri bog'liq.

buzzer_tone1 Buzzer komponenti forumda joylashtirilgan ushbu kodga asoslangan

stackoverflow.com/questions/22767256/vhdl-… Biroq, u 440 Gts chastotali uzluksiz tovush chiqarish uchun o'zgartirildi (Eslatma). Yoqish usuli down_counter_FSM1 komponentining chiqishi bo'lgan buzzer_enable signaliga ulangan.

clk_div1 Soat bo'luvchi komponenti PolyLearn -da taqdim etilgan professor Brayan Mealining soat ajratgichining o'zgartirilgan versiyasidir. Bu soatni sekinlashtiradi, shuning uchun chiqish davri 1 soniya.

down_counter_FSM1 Pastga hisoblagich - bu FSM, nolgacha sanash uchun mo'ljallangan. Mumkin bo'lgan ikkita boshlash vaqti - 20 yoki 5, bu foydalanuvchi kiritishi bilan tanlanadi. Vaqt tugaganligini ko'rsatish uchun taymer nolga yetganda "1" ni chiqaradi. Bu chiqish ovozli signal komponentining faollashuvi vazifasini bajaradi. Hisoblagich, shuningdek, 8-bitli BCD signalini chiqaradi, u segment dekoderiga yuboriladi. Boshqa chiqish - bu counter_on, u ham segment dekoderidagi joriy kirishga ulangan.

sseg_dec1 Etti segmentli dekoder komponenti PolyLearn-da taqdim etilgan va uni professor Brayan Meali yozgan. Bu down_counter_FSM1 tomonidan taqdim etilgan BCD kirishini ishlatadi va etti segmentli displeyda o'nlik ekvivalentini chiqaradi. Hisoblagich yoqilganda, joriy kirish yuqori bo'ladi. Bu dekoderga o'nli raqamni etti segmentli displeyda ko'rsatishga imkon beradi. Hisoblagich o'chirilgan bo'lsa, joriy kirish past bo'ladi. Etti segmentli displeyda faqat to'rtta chiziqcha ko'rsatiladi.

5 -qadam: Cheklangan holat mashinasi (FSM) diagrammasi

Cheklangan holat mashinasi (FSM) diagrammasi
Cheklangan holat mashinasi (FSM) diagrammasi

Cheklangan holat mashinasining sezuvchanlik ro'yxatiga player1, player2, reset va soat kiradi. FSM chiqishi-bu 2 bitli pleer_LED, Basys3 kartasidagi ikkita LEDga ulangan. Cheklangan holat mashinasi quyidagi uchta holatni ko'rsatadi:

ST0 - bu boshlang'ich holat. Bu holatda ikkita LED o'chadi. Agar o'yinchi1 va o'yinchi2 past bo'lsa, FSM bu holatda qoladi. Asenkron qayta o'rnatish, shuningdek, ST0 holatini o'rnatadi. Player1 tugmasi yuqori darajaga o'rnatilganda, keyingi holat ST1 bo'ladi. Agar player2 tugmachasi yuqori darajaga o'rnatilgan bo'lsa, keyingi holat ST2 bo'ladi.

ST1 - bu pleer1 LED yonadigan holat. FSM har qanday kirish uchun shu holatda qoladi. Bu shuni anglatadiki, player1 tugmasi player1 tugmachasi baland bo'lgandan so'ng darhol yuqori darajaga o'rnatilsa ham, u ST1da qoladi. Faqat asenkron qayta o'rnatish keyingi holatni ST0 ga o'rnatishi mumkin.

ST2 - pleer2 LED yonib turadigan holat. ST! Kabi, FSM har qanday kirish uchun ham shunday holatda qoladi, hatto player1 tugmasi player2 tugmachasi baland bo'lganidan keyin ham yuqori holatga qo'yilgan bo'lsa ham. Shunga qaramay, faqat asenkron qayta o'rnatish keyingi holatni ST0 ga o'rnatishi mumkin.

Tavsiya: