Mündəricat:
- Addım 1: İş modelinin hazırlanması
- Addım 2: Komponentlərin toplanması
- Addım 3: Maneə Yaratma: Bölmə A
- Addım 4: Maneə Yaratma: B Bölümü
- Addım 5: JUMP və NƏTİCƏ
- Addım 6: Xoşbəxt Oyun
Video: Dot Jump Oyunu (Arduino istifadə etmədən): 6 addım
2024 Müəllif: John Day | [email protected]. Son dəyişdirildi: 2024-01-30 07:46
Baxış
Salam! Mən Şivanş, IIIT-Hyderabad tələbəsiyəm. Google Chrome -un Dinosaur Jump oyunundan ilhamlanan ilk təlimatımla buradayam. Oyun sadədir: bir xal toplamaq üçün gələn maneələrdən keçin. Toqquşsanız, uduzursunuz və hesab sıfırlanır.
Bu layihənin əsas xüsusiyyəti, Arduino və ya başqa bir mikrokontrolördən istifadə edilməməsidir. Tamamilə əsas elektrik komponentlərindən götürülmüşdür və məntiq diaqramları və s.
Maraqlanırsınız? Gəlin başlayaq.
Ön şərtlər:
- Rezistorlar, kondansatörler, inteqral sxemlər (IC) kimi elektrik komponentləri haqqında əsas bilik.
- Məntiq qapıları haqqında əsas biliklər (AND, OR, NOT, və s.)
- Flip-Flop, Counter, Multiplexer və s.
QEYD: Yuxarıda sadalanan şərtlər layihənin bütün işini başa düşmək üçündür. Eyni şeyi dərindən bilməyən biri də təlimatlandırılan addımları izləyərək layihə qura bilər.
Addım 1: İş modelinin hazırlanması
İlk vəzifə layihə üçün işləyən bir model yaratmaqdır. Yalnız bundan sonra layihə üçün lazım olan materiallara qərar verə bilərik. Bütün layihəni üç hissəyə bölmək olar.
1-ci hissə: maneə törətmə
Birincisi, nöqtənin keçməsi üçün təsadüfi maneələr yaratmalıyıq. Maneələr, LED Arrayinin bir ucundan digərinə hərəkət edən bir nöqtə nəbzi şəklində də olacaq.
Maneələr yaratmaq üçün biri Yüksək Frekanslı (HF Timer), digəri də Aşağı Frekanslı (LF Timer) iki Taymer Dövründən (dövrə diaqramları əlavə olunur) istifadə edirik. "Təsadüfi" hissəsi, çıxışı LF taymerinin hər yüksələn kənarında görünən HF Timer tərəfindən idarə olunur (CLK girişi olaraq qəbul edilir). Maneə Yaratma Təlimatı, LF Taymerinin hər yüksələn kənarındakı HF Taymerinin vəziyyətidir (1 -> Maneə Yarat | 0 -> Maneə Yaratma). Təsadüfi maneələrin yaranmasını təmin etmək üçün HF Timer hər 'JUMP' da SIFIRLANIR. HF Timer-in çıxışı, LF Timer Çıxışı olaraq CLK girişi ilə bir D Flip Flopa (növbəti dövr üçün təlimatların saxlanılması üçün) D girişi olaraq verilir.
Maneələrin yaranması üçün ikili təlimat bitdikdən sonra LED Arrayında 'maneə nəbzi' yaratmalıyıq. Çıxışı 4x16 demultiplexer (DeMUX) verilən 4 bitlik sayğacın köməyi ilə edirik. DeMUX -un çıxışı 16 müvafiq LED -in parlamasına səbəb olacaq.
2-ci hissə: JUMP
JUMP Fəaliyyəti üçün Push Button Girişini təlimat olaraq alacağıq. Təlimat verildikdən sonra, in-line obyekti LED parlamağı dayandırır və yuxarıdakı başqa bir LED yanır və bu da sıçrayış deməkdir.
3-cü hissə: Nəticə
Nəticə belə olacaq: Obyekt çökərsə, oyunu yenidən qurun; başqa, hesabı artırın.
Toqquşma, maneənin yerdəki mövqeyi üçün maneə siqnalı və obyekt siqnalı olaraq ANDING olaraq ifadə edilə bilər. Bir toqquşma baş verməzsə, 7 saylı bir cüt ekranda görünən nöqtə sayğacı artır.
Addım 2: Komponentlərin toplanması
Lazım olan komponentlər aşağıdakılardır:
- PCB x 1, Breadboard x 3
- LEDlər: Yaşıl (31), Qırmızı (1), BiColor: Qırmızı+Yaşıl (1)
- Düymə x 2
- 7 seqmentli ekran x 2
- IC 555 x 3 [Taymer sxemləri üçün]
- IC 7474 x 1 (D FlipFlop)
- IC 7490 x 2 (Onilliyin Sayğacı) [hesabı göstərmək üçün]
- IC 7447 x 2 (BCD-dən 7 seqmentli dekoderə) [hesabı göstərmək üçün]
- IC 4029 x 1 (4 bit sayğacı) [maneə görüntüsü üçün]
- IC 74154 x 1 (DeMUX) [maneələrin göstərilməsi üçün]
- IC 7400 x 3 (qapı deyil)
- IC 7404 x 1 (NAND qapısı)
- IC 7408 x 1 (VƏ qapısı)
- IC yuvaları
- Gərginlik mənbəyi (5V)
Alətlər tələb olunur:
- Lehimleme dəmir
- Tel kəsici
Addım 3: Maneə Yaratma: Bölmə A
Birincisi, Maneə Yaratma Sinyalını (YÜKSEK/DÜŞ) yaratmaq üçün taymer sxemlərini qurmalıyıq.
Dövrə əvvəllər müzakirə olunan nəzəriyyəyə uyğun olaraq qurulacaq. Bunun üçün dövrə diaqramı yuxarıda əlavə edilmişdir. Dövrə bir çörək taxtasında həyata keçirilir (baxmayaraq ki, bir PCB üzərində də həyata keçirilə bilər) aşağıdakı kimi:
- İki 555 IC və D Flip Flopu (IC 7474) aralarında bir az boş yer (4-5 sütun) olan çörək taxtasının bölücüsünün üzərinə qoyun.
- Çörək taxtasının üst sətrini Gərginlik Mənbəsinin müsbət terminalı ilə, alt sıranı isə mənfi terminalla birləşdirin.
- Dövrə diaqramına uyğun olaraq əlavə əlaqələr qurun. Lazımi əlaqələrdən sonra dövrə yuxarıdakı şəklə bənzəyir.
Qeyd: R1 və R2 müqavimətlərinin və C tutumunun dəyərləri aşağıdakı tənliklər istifadə edərək hesablanır:
T = 0.694 x (R1 + 2 * R2) * C
burada T müddəti tələb olunur.
D = 0.694 x [(R1 + R2)/T] *100
burada D vəzifə dövrüdür, yəni ON vaxtının ümumi vaxta nisbəti.
Bu layihədə Yüksək Frekanslı Taymer üçün T = 0,5 saniyə və Aşağı Frekanslı Taymer üçün T = 2 saniyədir.
Addım 4: Maneə Yaratma: B Bölümü
İndi əngəlin nə vaxt yaradılacağını bildiyimiz üçün onu göstərməliyik. 4 bitlik bir sayğac, bir Demultiplexer, bir taymer və 16 LEDdən ibarət bir sıra istifadə edəcəyik. Niyə 16? Bunun səbəbi, sayğacın 4 bitlik çıxışını demultiplexer istifadə edərək 16 LED-lə müqayisə edəcəyik. Bu o deməkdir ki, sayğac 0 -dan 15 -ə qədər sayılacaq və demultiplexer bu göstərici ilə LED -i yandıracaq.
Taymerin rolu sayma sürətini, yəni maneə hərəkətinin sürətini tənzimləməkdir. Maneə, taymerin bir dövrü ərzində bir mövqe dəyişəcək. Fərqli sürətlər əldə etmək üçün əvvəlki addımdakı tənliklərdən istifadə edərək fərqli R1, R2 və C dəyərləri ilə oynaya bilərsiniz.
LED matrisi üçün, ümumi bir nöqtəyə sahib olan xətti bir şəkildə 16 LED. Hər bir LED -in müsbət terminalı DeMUX -a qoşulacaq (DEMUX LOW çıxışı verdiyindən NOT qapısını istifadə edərək tərs çevirdikdən sonra).
Bunun üçün dövrə diaqramı yuxarıda əlavə edilmişdir.
Addım 5: JUMP və NƏTİCƏ
Növbəti şey atlama hərəkətidir. Bir sıçrayış göstərmək üçün matrisin üstünə fərqli rəngli bir LED qoyun, yerə qoyun və +ve terminalını bir düyməyə bağlayın. Düymənin digər ucunu gərginlik mənbəyinə bağlayın.
Ayrıca, birincisinə bitişik yerləşdirilmiş başqa bir düyməni götürün və terminallarından birini +5V -ə bağlayın. Digər terminal, NAND Gate -in digər girişi ilə NAND Gate -ə (IC 7404) gedir, JUMP LED -in altındakı LED -ə giriş olaraq (yəni obyektin LED -i). NAND Qapısının çıxışı hesab sayğacının SIFIRLA (hər iki BCD Sayğacının PIN 2 və 3) gedir. Bununla, həm OBJECT LED (əsas mövqedə) siqnalı, həm də OBSTACLE siqnalı eyni anda verilərsə, yəni obyekt və maneə toqquşarsa, hesabı sıfırlayarıq.
Hər iki düymənin bir -birinə basılmasını təmin etmək üçün müəyyən bir tənzimləmə aparın. Bir sikkə istifadə edərək hər iki düyməni yapışdıra bilərsiniz.
Hesab sayğacını qurmaq üçün yuxarıda göstərilən sxemə əməl edin (Şəkil mənbəyi: www.iamtechnical.com).
QEYD: Maneə ilə toqquşma halında hesabı sıfırlamaq üçün 2 və 3 -cü pinləri NAND Qapısının çıxışına qoşun
Addım 6: Xoşbəxt Oyun
Bu belədir. Layihəniz bitdi. Gözəl görünməsi üçün bəzək əlavə edə bilərsiniz. İstirahət yaxşıdır.
Zövq alın.. !!
Tövsiyə:
Batareyalardan istifadə etmədən Android telefonlarını BOINC və ya qatlanan qurğular üçün necə geri qaytarmaq olar: 8 addım
Batareyalardan istifadə etmədən BOINC və ya Qatlanan Rig üçün Android Telefonları Necə Əldə Edirsiniz: XƏBƏRDARLIQ: BU KILAVUZU İZLƏYİB DİQQƏTİNİZƏ VERİLƏN HƏR ZƏRƏRDƏ SORUMLULUĞUM YOXDUR. Bu təlimat BOINC istifadəçiləri üçün daha təsirlidir (şəxsi seçim / səbəblər), QATLAMA üçün də istifadə edilə bilər Vaxtım çox olmadığından istəyərəm
NodeMCU + Köhnə Laptopun Kamera Modulu ilə CCTV Kamerası (Blynk istifadə edərək və istifadə etmədən): 5 addım
NodeMCU + Köhnə Laptopun Kamera Modulu ilə CCTV Kamerası (Blynk istifadə edərək və istifadə etmədən): Salam uşaqlar! Bu təlimatda, köhnə bir laptopun kamera modulunu və nodeMCU -nu CCTV -yə bənzər bir şey etmək üçün necə istifadə etdiyimi göstərəcəyəm
Arduino (Mikrokontroller) istifadə etmədən bir xətt izləyicisi robotu necə etmək olar: 5 addım
Arduino (Mikrodenetleyici) istifadə etmədən Line Follower Robotu necə etmək olar: Bu təlimatda sizə Arduino istifadə etmədən robot izləyən bir xətt qurmağı öyrədəcəyəm. İzah etmək üçün çox asan addımlardan istifadə edəcəyəm. xətti izləyin. Heç bir proqramlaşdırma təcrübəsinə ehtiyacınız olmayacaq
Arduino və ya hər hansı bir mikro nəzarətçi istifadə etmədən IR maneə sensoru: 6 addım
Arduino və ya hər hansı bir mikro nəzarətçi istifadə etmədən IR maneə sensoru: Bu layihədə heç bir mikro nəzarətçi istifadə etmədən sadə bir maneə sensoru hazırlayacağıq
HC - 06 (Slave Modulu) İstifadə etmədən "NAME" in dəyişdirilməsi "Serial Arduino Monitoru" "Asanlıqla işləyir": Arızasız Yol!: 3 Addım
HC - 06 (Slave Modulu) İstifadə etmədən "NAME" in dəyişdirilməsi "Monitor Serial Arduino" … "Asanlıqla işləyir": Arızasız Yol!: Sonra " Uzun müddət " " & quot olmadan Arduino seriyalı monitoru; Uğur ", Başqa bir asan yol tapdım və indi Paylaşımdayam! Əylən Dostlar