ዝርዝር ሁኔታ:

“የኒንጃ ዶላር” ጨዋታው ለአርዱዲኖ 3 ደረጃዎች
“የኒንጃ ዶላር” ጨዋታው ለአርዱዲኖ 3 ደረጃዎች

ቪዲዮ: “የኒንጃ ዶላር” ጨዋታው ለአርዱዲኖ 3 ደረጃዎች

ቪዲዮ: “የኒንጃ ዶላር” ጨዋታው ለአርዱዲኖ 3 ደረጃዎች
ቪዲዮ: 🛑አደገኛ ተደባዳቢዎች|sera ye film tarik |ሴራ የፊም ታሪክ ባጭሩ|film wedaj ምርጥ ፊልም ቆንጆ me #Business #Finance #Money 2024, ህዳር
Anonim
ምስል
ምስል

ለ arduino.it ታላቅ የቪዲዮ ጨዋታ ሌላ የቪዲዮ ጨዋታ ካለፈው እኔ ካተምሁት የበለጠ የላቀ ነው። ለምን ከሌላው የበለጠ የተወሳሰበ ነው? ይህ የበለጠ የተወሳሰበ ነው ምክንያቱም ይህ መዝለል እና መተኮስ እና የድምፅ መብራት እና አዲስ የነጥብ መቆጣጠሪያ ዘዴ ሊኖረው ይችላል።

አቅርቦቶች

  1. አርዱinoኖ።
  2. የዳቦ ሰሌዳ
  3. ዝላይ ሽቦዎች
  4. ቀይ LED
  5. 2 የግፋ አዝራሮች
  6. 2 10k ohm resistors
  7. 2 220R ተቃዋሚዎች።
  8. እጅግ በጣም ብሩህ ሰማያዊ ኤልኢዲ።
  9. piezo buzzer
  10. 16*2 ኤልሲዲ ማሳያ

ደረጃ 1 ሁሉንም በአንድ ላይ ማገናኘት።

ሁሉንም ነገር በአንድ ላይ ማገናኘት።
ሁሉንም ነገር በአንድ ላይ ማገናኘት።

አሁን ሁሉንም ነገር ሽቦ ማገናኘት ያስፈልግዎታል

ደረጃ 2: እንዴት እንደሚጫወት

  1. አርዱዲኖን ያብሩ።
  2. ኤልሲዲው ማተም አለበት - “ጨዋታው ይጀምራል” እና ቆጠራ።
  3. ለመዝለል ከአዝራሮቹ ውስጥ አንዱን ይጫኑ እና ሌላ ለመምታት።
  4. የሚዘልሉት እያንዳንዱ ብሎክ አንድ ነጥብ አሸንፈዋል እና እርስዎ የሚይዙት እያንዳንዱ * 5 ነጥቦችን ይሰጥዎታል።
  5. 50 ነጥቦች ወይም ከዚያ በላይ ሲኖርዎት አሸንፈዋል

ደረጃ 3 - ኮዱ።

// este jogo e muito interessante e ao mesmo tempo irritante e frustante mas muito divertido.

#ያካትቱ

const int rs = 12 ፣ en = 11 ፣ d4 = 5 ፣ d5 = 4 ፣ d6 = 3 ፣ d7 = 2;

const int buttonPin1 = 1; const int buttonPin2 = 6; const int buzzer = 7; ያልተፈረመ ረዥም ነጥብ = 0; // አዘጋጅ አዝራሮች ግዛቶች bool buttonState1 = 0; bool buttonState2 = 0; // የዘፈቀደ ቁጥር ለ እንቅፋቶች አቀማመጥ በዘፈቀደ ቁጥሮች [6]; // የዘፈቀደ ቁጥር ለ እንቅፋቶች ብዛት int randomNum = 0; // የዘፈቀደ ቁጥር ለ pts int randomNums1 [3]; // የዘፈቀደ ቁጥር ለ pts int randomNum1 = 0; // ቀስ በቀስ ያልተፈረመ int myDelay = 500 የሚቀንስ የመዘግየት ጊዜን ያስጀምሩ። // አዝራር 2 ተጭኖ እንደሆነ ለመፈተሽ ይህንን ቡሊያን አደረገው ምክንያቱም ለሉፕ በመጀመሪያ አንድ ጊዜ ከተጫነ መሰናክሎች እስኪያልቅ ድረስ እንዳይፃፉ እፈልጋለሁ bool temp = 0; // ይህ ተለዋዋጭ ተዋጊው በሚተኮስበት ጊዜ ቦታዎቹን ያከማቻል። ተዋጊው 16 ቦታዎች ስላሉት 16 ቦታዎች ሊኖሩ ይችላሉ። int tempI [16]; // ነጥቡ መያዙን ለማረጋገጥ ይህንን ቡሊያን እጠቀማለሁ bool temp1 = 0;

// የተያዘውን ቦታ አቀማመጥ ለማከማቸት ይህንን ተለዋዋጭ ይጠቀሙ። የሁሉንም ነጥቦች አቀማመጥ በአንደኛው ድግግሞሽ ውስጥ ለማከማቸት መሆን እና ማደራጀት አለበት። እሱ አንድ ቦታ ብቻ ካከማቸ ፣ ከዚያ “አሮጌው” ነጥብ በአዲሱ ድግግሞሽ ውስጥ ተመልሶ ይመጣል

int tempI1 [3]; // ተዋጊውን ብዙ ጥይቶች እንዲኖሩት ይህንን ተለዋዋጭ ይጠቀሙ ፣ ይህ ደግሞ የአንድ ድርድር tempI int button2IsPressed = 0 ርዝመት ነው። LiquidCrystal lcd (rs ፣ en ፣ d4 ፣ d5 ፣ d6 ፣ d7);

ባዶነት ማዋቀር () {

// የኤልሲዲውን የአምዶች እና የረድፎች ብዛት ያዘጋጁ - lcd.begin (16 ፣ 2); // የአቀናባሪ ሁነታን ሁኔታ ፒን ሞዶ (አዝራር ፒን 1 ፣ ግቤት) ያዘጋጁ ፤ pinMode (አዝራር ፒን 2 ፣ ግቤት); pinMode (buzzer, OUTPUT); lcd.setCursor (4, 0); lcd.print ("ጨዋታው"); lcd.setCursor (2, 1); lcd.print ("ይጀምራል"); lcd.print ("5"); መዘግየት (1000); lcd.setCursor (12, 1); lcd.print ("4"); መዘግየት (1000); lcd.setCursor (12, 1); lcd.print ("3"); መዘግየት (1000); lcd.setCursor (12, 1); lcd.print ("2"); መዘግየት (1000); lcd.setCursor (12, 1); lcd.print ("1"); መዘግየት (1000); lcd.clear ();

}

ባዶነት loop () {

እዚህ:

randomNum = የዘፈቀደ (5);

ለ (int i = 0; i9 && pts19 && pts29 && pts = 50) {pts = 0; myDelay = 500; lcd.clear (); lcd.setCursor (5, 0); lcd.print ("ድል"); ቶን (buzzer, 262); መዘግየት (200); ቶን (buzzer, 330); መዘግየት (200); ቶን (buzzer, 392); መዘግየት (100); ቶን (buzzer, 330); መዘግየት (100); ቶን (buzzer, 392); መዘግየት (100); ቶን (buzzer, 523); መዘግየት (200); noTone (buzzer); መዘግየት (3000); lcd.clear (); እዚህ ሄደ; } ሌላ lcd.setCursor (15, 0); lcd.print (pts); buttonState1 = digitalRead (buttonPin1); buttonState2 = digitalRead (buttonPin2); // ተዋጊው ካልተተኮሰ ወይም ቢተኩስ መሰናክሎችን ማዘጋጀት ግን እሱ (! temp) {ለ (int j = 0; jrandomNums [j]) {lcd.setCursor (randomNums [j], 1) ፤ lcd.print ("#"); }

}

}

// ነጥቦችን ማዘጋጀት

ከሆነ (! temp1) {ለ (int j = 0; j

}

የሚመከር: