Съдържание:

Dot Jump Game (без използване на Arduino): 6 стъпки
Dot Jump Game (без използване на Arduino): 6 стъпки

Видео: Dot Jump Game (без използване на Arduino): 6 стъпки

Видео: Dot Jump Game (без използване на Arduino): 6 стъпки
Видео: MKS Monster8 - Basics 2024, Ноември
Anonim
Dot Jump Game (без използване на Arduino)
Dot Jump Game (без използване на Arduino)

Общ преглед

Здрасти! Аз съм Шиванш, студент в IIIT-Хайдерабад. Тук съм с първата си инструкция, която е игра, вдъхновена от играта на Google Chrome Dinosaur Jump. Играта е проста: Прескачайте входящи препятствия, за да спечелите точка. Ако се сблъскате, губите и резултатът се нулира.

Открояващата характеристика на този проект е, че не се използва Arduino или друг микроконтролер. Той е извлечен изцяло от основни електрически компоненти и включва внедряване на машини с крайни състояния (FSM) с помощта на логически диаграми и т.н.

Интересувате ли се? Да започваме.

Предпоставки:

  • Основно ноу-хау за електрически компоненти като резистори, кондензатори, интегрални схеми (ИС).
  • Основни познания за логическите порти (И, ИЛИ, НЕ и т.н.)
  • Познания за работа с джапанки, броячи, мултиплексори и др.

ЗАБЕЛЕЖКА: Изброените по-горе предпоставки са за разбиране на цялата работа на проекта. Човек, който няма задълбочени познания за същото, може също да изгради проекта, като следва стъпките в инструкциите.

Стъпка 1: Разработване на работния модел

Разработване на работния модел
Разработване на работния модел
Разработване на работния модел
Разработване на работния модел

Първата задача е да се създаде работещ модел за проекта. Само тогава можем да решим необходимите материали за проекта. Целият проект може да бъде разделен на три части.

Част 1: Генериране на препятствия

Първо, трябва да генерираме случайни препятствия, за да пресече точката. Препятствията също ще бъдат под формата на точков импулс, който се движи от единия край на LED масива към другия.

За генериране на препятствия използваме две таймерни вериги (приложени схеми), една с висока честота (HF таймер) и друга с ниска честота (LF таймер). Частта „случайност“се обработва от HF Timer, чийто изход се вижда на всеки нарастващ ръб на LF таймера (който се приема като вход CLK). Инструкцията за генериране на препятствия е състоянието на HF таймера на всеки нарастващ ръб на LF таймера (1 -> Генериране на препятствие | 0 -> Не генерирайте препятствие). HF таймерът се нулира на всеки „JUMP“, за да се осигури генериране на случайни препятствия. Изходът на HF Timer се дава като D-вход към D тригер (за съхраняване на инструкции за следващия цикъл) с CLK вход като LF Timer Output.

След като излезе бинарната инструкция за генериране на препятствия, трябва да генерираме „импулс на препятствия“върху LED масив. Правим това с помощта на 4-битов брояч, чийто изход се дава на 4x16 демултиплексор (DeMUX). Изходът на DeMUX ще накара 16 -те съответни светодиода да светят.

Част 2: Скачането

За действието JUMP ще вземем въвеждането чрез бутон като инструкция. След като е дадена инструкцията, светодиодът на вградения обект спира да свети и друг светодиод над него свети, което означава скок.

Част 3: Резултат

Резултатът ще бъде като: Ако обектът се срине, ВЪЗМОЖНЕТЕ играта; в противен случай увеличете резултата.

Сблъсъкът може да се изрази като ANDing както на сигнала на препятствието, така и на сигнала на обекта за позицията на земята на препятствието. Ако не се случи сблъсък, Броячът на точки се увеличава, което се показва на чифт 7-сегментни дисплеи.

Стъпка 2: Събиране на компоненти

Необходимите компоненти са както следва:

  • Печатна платка x 1, платка x 3
  • Светодиоди: зелено (31), червено (1), двуцветно: червено+зелено (1)
  • Натиснете бутона x 2
  • 7-сегментен дисплей x 2
  • IC 555 x 3 [за таймерни вериги]
  • IC 7474 x 1 (D FlipFlop)
  • IC 7490 x 2 (Десетилетен брояч) [за показване на резултат]
  • IC 7447 x 2 (BCD към 7-сегментен декодер) [за показване на резултат]
  • IC 4029 x 1 (4-битов брояч) [за показване на препятствия]
  • IC 74154 x 1 (DeMUX) [за показване на препятствия]
  • IC 7400 x 3 (НЕ порта)
  • IC 7404 x 1 (NAND порта)
  • IC 7408 x 1 (И порта)
  • IC гнезда
  • Източник на напрежение (5V)

Необходими инструменти:

  • Поялник
  • Резачка за тел

Стъпка 3: Генериране на препятствия: Част-А

Генериране на препятствия: Част-А
Генериране на препятствия: Част-А
Генериране на препятствия: Част А
Генериране на препятствия: Част А

Първо, трябва да настроим таймерните вериги за генериране на сигнал за генериране на препятствия (HIGH/LOW).

Веригата ще бъде настроена в съответствие с теорията, обсъдена по-рано. Схемата за същите е приложена по -горе. Схемата е реализирана на макет (макар че може да се реализира и на печатна платка), както следва:

  • Поставете двете 555 интегрални схеми и D джапанка (IC 7474) през разделителя на макета с малко свободно място (4-5 колони) между тях.
  • Свържете горния ред на макета с положителния извод на източника на напрежение и долния ред с отрицателния извод.
  • Направете допълнителни връзки, следвайки електрическата схема. След необходимите връзки веригата ще изглежда подобна на снимката, приложена по -горе.

ЗАБЕЛЕЖКА: Стойностите на съпротивления R1 и R2 и капацитет C се изчисляват, като се използват следните уравнения:

T = 0,694 x (R1 + 2 * R2) * C

където T е необходим период от време.

D = 0,694 x [(R1 + R2)/T] *100

където D е работният цикъл, т.е. отношението на времето за включване към общото време.

В този проект за високочестотния таймер, T = 0,5 сек и за нискочестотния таймер, T = 2 сек.

Стъпка 4: Генериране на препятствия: Част-B

Генериране на препятствия: Част-B
Генериране на препятствия: Част-B
Генериране на препятствия: Част-B
Генериране на препятствия: Част-B
Генериране на препятствия: Част-B
Генериране на препятствия: Част-B

Сега, когато знаем кога да генерираме препятствието, сега трябва да го покажем. Ще използваме 4-битов брояч, демултиплексор, таймер и масив от 16 светодиода. Защо 16? Това е така, защото ние ще картографираме 4-битовия изход на брояча към 16-те светодиода, използвайки демултиплексора. Това означава, че броячът ще брои от 0 до 15 и демултиплексорът ще включва светодиода с този индекс.

Ролята на таймера е да регулира скоростта на броене, т.е. скоростта на движение на препятствието. Препятствието ще измести една позиция за еднократен период на таймера. Можете да играете с различни стойности на R1, R2 и C, като използвате уравненията в предишната стъпка, за да получите различни скорости.

За LED матрицата запоявайте 16 светодиода по линеен начин с общо заземяване. Положителният извод на всеки светодиод ще бъде свързан към DeMUX (след инвертиране, използвайки NOT gate, тъй като DeMUX дава нисък изход).

Схемата за същите е приложена по -горе.

Стъпка 5: ПРЕКЪСВАНЕТО И РЕЗУЛТАТА

ПРЕКЪСА и РЕЗУЛТАТА
ПРЕКЪСА и РЕЗУЛТАТА
ПРЕКЪСА и РЕЗУЛТАТА
ПРЕКЪСА и РЕЗУЛТАТА
ПРЕКЪСА и РЕЗУЛТАТА
ПРЕКЪСА и РЕЗУЛТАТА

Следващото нещо е действието скок. За да покажете скок, просто поставете светодиод с различен цвят над матрицата, заземете го и прикрепете неговия +ve терминал към бутон. Прикрепете другия край на бутона за източника на напрежение.

Също така, вземете друг бутон, поставен в непосредствена близост до предишния и прикрепете един от неговите терминали към +5V. Другият терминал отива към NAND Gate (IC 7404) с другия вход на NAND Gate като вход към светодиода точно под JUMP LED (т.е. обектния светодиод). Изходът на NAND Gate отива към RESET (PIN 2 и 3 на двата брояча BCD) на брояча за резултати. С това ние правим, че нулираме резултата, ако едновременно сигналът на OBJECT LED (в базова позиция) и OBSTACLE се подават едновременно, т.е. обектът и препятствието се сблъскат.

Направете някакво подреждане, за да сте сигурни, че двата бутони са натиснати заедно. Можете да използвате монета и да залепите двата бутона към нея.

За да настроите брояча на точки, следвайте схемата, приложена по -горе (източник на снимката: www.iamtechnical.com).

ЗАБЕЛЕЖКА: Свържете щифт 2 и 3 към изхода на NAND Gate, за да възстановите резултата в случай на сблъсък с препятствието

Стъпка 6: Честита игра

Приятно игра!
Приятно игра!
Приятно игра!
Приятно игра!
Приятно игра!
Приятно игра!

Това е. Свършили сте проекта си. Можете да добавите малко довършителни работи към него, така че да изглежда добре. Почивката е наред.

НАСЛАДИ СЕ..!!

Препоръчано: