Arduino е много популярен за изграждане хоби проекти и игри, както и преди сме се използва Arduino да се изгради змия игра, пинг-понг игра, Space раса игра и т.н. Днес ние изграждаме една по-популярна игра с помощта на Arduino- Buzz тел игра или игра стабилно страна.
За този проект ще използваме Arduino Uno, зумер и два алуминиеви проводника. LCD 16x2 също е свързан, за да покаже състоянието на играта. И двата края на лабиринтния проводник ще бъдат свързани към цифровия щифт 2 и 3 на Arduino, а проводникът на дръжката е свързан към заземяващия щифт на Arduino. Цифровите щифтове са дефинирани като INPUT_PULLUP щифтове. Така че, когато проводникът на дръжката докосне лабиринта, той променя състоянието на цифровите щифтове на ниско и зумерът издава звук.
В края на лабиринтния проводник е свързан диод, така че когато преминете до този диод и докоснете лабиринта с тел с кръгла дръжка, само един щифт (щифт 3) ще остане ниско. В това състояние на LCD дисплея ще се покаже текст за поздравление (Браво).
Необходими компоненти
- Arduino Uno
- Алуминиева тел
- 16x2 LCD
- I 2 C Модул
- Макет
- Звънец
- Диод
Електрическа схема
Схемата на схемата за Arduino Buzz Wire Game е дадена по-горе. SCL и SDA щифтовете на модула I2C са свързани към щифтове A5 и A4 на Arduino, докато V CC и GND щифтът на модула I2C са свързани към 5V и GND щифт на Arduino. Положителната шина на Buzzer е свързана с цифров щифт 4 на Arduino, а отрицателната шина е свързана към GND. Изрежете алуминиева тел и я огънете във форма Zig-Zag. Припойте диод в единия край на проводника. След това изрежете друга жица, за да направите дръжка и огънете единия край в цикъл.
LCD 16x2 може също да бъде свързан с Arduino, без да се използва I2C модул.
Свържете щифтовете D2 и D3 на Arduino към двата края на Zig-Zag проводника и свържете проводника на дръжката към GND щифта на Arduino.
Обяснение на кода
Пълният код за тази игра Arduino Buzz Wire е даден в края на документа.
Стартирайте кода си, като включите библиотечния файл за LCD модула. Библиотеката LiquidCrystal_I2C.h се използва за I2C комуникация между Arduino и LCD модули.
#include
След това дефинирайте щифтовете Arduino за зумера, началната точка на проводника и крайната точка на проводника.
const int startPin = 2; const int endPin = 3; const int зумер = 4;
След това дефинирайте две променливи start & end_. Тези променливи ще бъдат използвани за запазване на показанията на проводника.
int начало, край_;
Сега определете щифта на зумера като изход, а щифтовете на проводниците като INPUT_PULLUP . Arduino има вътрешни издърпващи резистори със стойност около 20k ома. Тези резистори могат да бъдат свързани вътрешно чрез INPUT_PULLUP . Определянето на INPUT_PULLUP функционално е същото като свързването на резистор ~ 20k ома между щифта и + 5V.
pinMode (зумер, ИЗХОД); pinMode (startPin, INPUT_PULLUP); pinMode (startPin, INPUT_PULLUP);
Вътре в празния контур прочетете състоянието на проводниците.
start = digitalRead (startPin); end_ = digitalRead (endPin);
Сега сравнете показанията на телените щифтове. Ако и двата щифта са ниски, това означава, че сте докоснали проводника, така че зумерът ще издаде звук и ако началният щифт на проводника е висок, а крайният щифт е нисък, това означава, че сте достигнали крайната точка.
if (start == LOW && end _ == LOW) {digitalWrite (зумер, HIGH); забавяне (1000); digitalWrite (зумер, LOW); lcd.setCursor (0,0); lcd.print ("Опитайте отново"); Serial.print ("Опитайте отново"); } иначе ако (начало == HIGH && end _ == LOW) {lcd.setCursor (0,0); lcd.print ("Добре направено"); Serial.print ("Добре направено"); }
Тестване на играта Buzz Wire
След като свържете хардуера и качите дадения код, можете да започнете да играете играта. Така че дръжте проводника с кръг в ръката си и се опитайте да прекарате проводник с кръг по целия път до диода, споен със зиг-заг тел, без да оставяте кръглия проводник да се докосне никъде. Ако докоснете проводниците, зумерът ще издаде звук и на LCD ще се появи „ Опитайте отново “. И ако завършите играта, без да докосвате жицата, тя ще покаже „ Браво “.
Това е начинът, по който можете да направите игра на Buzz Wire с Arduino. Работно видео и пълен код са дадени по-долу.