ዝርዝር ሁኔታ:

Whack-a-moLED !!: 7 ደረጃዎች
Whack-a-moLED !!: 7 ደረጃዎች

ቪዲዮ: Whack-a-moLED !!: 7 ደረጃዎች

ቪዲዮ: Whack-a-moLED !!: 7 ደረጃዎች
ቪዲዮ: 10 Signs Your Body Is Crying Out For Help 2024, ህዳር
Anonim
ዋክ-አንድ-ሞሌድ !!
ዋክ-አንድ-ሞሌድ !!
ዋክ-አንድ-ሞሌድ !!
ዋክ-አንድ-ሞሌድ !!

የቲንከርካድ ፕሮጄክቶች »

ይህ የጥንታዊው ዌክ-ሀ-ሞሌ ጨዋታ የ LED ስሪት ነው።

በመሠረቱ ከ 4 ኤልኢዲዎች ውጭ አንድ የዘፈቀደ ኤልኢዲ ከጉድጓዱ ውስጥ ከመመልከት ይልቅ ሞለኪውሉን ከመጨፍጨፍ ይልቅ ጆይስቲክን በመጠቀም ኤልዲውን ያጠፋል!

አቅርቦቶች

አርዱዲኖ ኡኖ/ናኖ ወይም ማንኛውም ተለዋጭ ሰሌዳ

4 LEDs እና ተጓዳኝ የአሁኑ የመገደብ ተቃዋሚዎች።

ጆይስቲክ ሞዱል ከ X ፣ Y ውጤቶች ጋር

ገቢር ቡዝ (አማራጭ)

ዝላይ ሽቦዎች.. ለማረም በቂ ነው!

ደረጃ 1 - ወረዳውን መንጠቆ

ወረዳውን መንጠቆ
ወረዳውን መንጠቆ

2 የአናሎግ ግብዓት ፒኖችን ከጆይስቲክ ኤክስ ውፅዓቶች ጋር በማገናኘት የአርዲኖ ኡኖ ሰሌዳውን ወደ ጆይስቲክ ሞዱል ያገናኙ።

4 ዲዲኤሎች ወደ 4 ዲጂታል ወይም አናሎግ የውጤት ፒን ፒኖች (resistors) በመጠቀም ሊገናኙ።

ከዲጂታል ውፅዓት ፒን ጋር ለመገናኘት ንቁ ቡዝ

ደረጃ 2: ፒኖችን ለማዋቀር ኮድ

int xVal = 0 ፣ yVal = 0 ፣ butVal = 0 ፣ xPin = A0 ፣ yPin = A1 ፣ joyPin = 13 ፣ butPin = 7 ፣ ተናጋሪ ፒን = 9;

int leftLED = A2 ፣ rightLED = A3 ፣ topLED = A4 ፣ bottomLED = A5;

int selectedLED = 0; // ከ A2 ፣ A3 ፣ A4 ወይም A5 አንዱ ሊሆን ይችላል

ባዶነት ማዋቀር () {

pinMode (xPin ፣ ማስገቢያ);

pinMode (yPin ፣ ማስገቢያ);

pinMode (leftLED ፣ ውፅዓት);

pinMode (rightLED ፣ ውፅዓት);

pinMode (topLED ፣ ውፅዓት); pinMode (bottomLED ፣ ውፅዓት);

pinMode (joyPin ፣ OUTPUT);

pinMode (buzzerPin ፣ OUTPUT);

}

ደረጃ 3 ለጆይስቲክ ዳሰሳ ኮድ

ባዶ ባዶ ጆይስቲክSenseRoutine ()

{

xVal = analogRead (xPin); yVal = analogRead (yPin); butVal = digitalRead (butPin);

joyPin = mapXYtoPin (xVal ፣ yVal ፣ butVal);

አናሎግ ፃፍ (ተመርጧል ኤልኢዲ ፣ 1024);

ከሆነ (የተመረጠLED! = leftLED) {analogWrite (leftLED ፣ 0); } ከሆነ (የተመረጠLED! = rightLED) {analogWrite (rightLED ፣ 0) ፤ }

ከሆነ (የተመረጠLED! = topLED) {analogWrite (topLED ፣ 0) ፤ }

ከሆነ (የተመረጠLED! = bottomLED) {analogWrite (bottomLED ፣ 0); }

ከሆነ (joyPin == selectedLED) // ሞሌ ተጎድቷል

{

አናሎግ ፃፍ (ተመርጧል ኤልኢዲ ፣ 0);

//

// ሞልድን ለመጨፍለቅ ሙዚቃ/ቶን ለማጫወት ኮድ ያክሉ !!

//

}

}

int mapXYtoPin (int xVal ፣ int yVal ፣ int butVal) {ከሆነ ((xVal <100) እና (yVal 400)) {bottomLED ይመለሱ ፤ }

ሌላ ከሆነ ((xVal> 900) እና (yVal 400)) {topLED ተመለስ; }

ሌላ ከሆነ ((xVal 400) እና (yVal <100)) {ተመለስ leftLED; }

ሌላ ከሆነ ((xVal 400) እና (yVal> 900)) {rightLED መመለስ ፤ }

ሌላ {መመለስ -1; }

}

ደረጃ 4: ዋናው የሉፕ የዕለት ተዕለት ኮድ

ባዶነት loop () {

ለ (int i = 0; i <length; i ++)

{

ከሆነ (በዘፈቀደ (0 ፣ 100)> 90) {selectedLED = anaPinMap (በዘፈቀደ (2 ፣ 6)) ፤}

// ለጨዋታ ሙዚቃ ኮድ እዚህ ያክሉ

// *** *** ***

//

}

int anaPinMap (int randNum) {

ከሆነ (randNum == 2) {መመለስ A2; }

ሌላ ከሆነ (randNum == 3) {መመለስ A3; }

ሌላ ከሆነ (randNum == 4) {መመለስ A4; }

ሌላ ከሆነ (randNum == 5) {መመለስ A5; }

}

ደረጃ 5: ለመሞከር ዝግጁ

ደረጃ 6: አርዱዲኖ ናኖ ትግበራ ለፕሮቶታይፕ

Image
Image

በእንጀራ ሰሌዳ ውስጥ በአርዱዲኖ ናኖ ፣ በብጁ የተሠራ ሰሌዳ ከ LEDs ፣ ከተቃዋሚዎች እና ከድምጽ ማጉያ ፣ እና ከ X- ጆይስቲክ መቀየሪያ ጋር ተመሳሳይ አፈፃፀም።

ደረጃ 7: የሚወዱትን ሰው ለማቅረብ የመጨረሻው የታሸገ Whack-a-MoLED ፕሮቶታይፕ

የሚወዱትን ለማቅረብ የመጨረሻው የታሸገ ዋክ-አንድ-ሞኤል ፕሮቶታይፕ!
የሚወዱትን ለማቅረብ የመጨረሻው የታሸገ ዋክ-አንድ-ሞኤል ፕሮቶታይፕ!
የሚወዱትን ለማቅረብ የመጨረሻው የታሸገ ዋክ-አንድ-ሞኤል ፕሮቶታይፕ!
የሚወዱትን ለማቅረብ የመጨረሻው የታሸገ ዋክ-አንድ-ሞኤል ፕሮቶታይፕ!

ለሙከራ ዕቃዎች አቅርቦቶች

ቀላል የካርቶን ሣጥን (ቢያንስ 4cmX6cmX3cm) ፣ ተጨማሪ የካርቶን ቁርጥራጮች ከድጋፍ።

የጌጣጌጥ ወረቀት የሻሲን ሽፋን (አማራጭ)

ሁለገብ ማጣበቂያ/ማጣበቂያ

አነስተኛ የዳቦ ሰሌዳ (አማራጭ)

አርዱዲኖ ናኖ

አነስተኛ ዩኒቨርሳል ፒሲቢ

አርዱዲኖ ናኖን ለማብራት 9 ቪ ባትሪ (ከቪን ፒን ጋር ይገናኙ)።

የ SPDT መቀየሪያ

ከላይ በደረጃ 1 እንደተገለፀው የቀሩት አቅርቦቶች (ኤልኢዲዎች ፣ ተቃዋሚዎች ፣ ጆይስቲክ ፣ ቡዝ ፣ ሽቦዎች)።

የሚመከር: