ዝርዝር ሁኔታ:
- ደረጃ 1 ሁሉንም ክፍሎች ያግኙ
- ደረጃ 2 - 2.8 ኢንች የንክኪ ቀለም ማሳያ ለአርዱዲኖ።
- ደረጃ 3 ፕሮጀክቱን መገንባት እና መሞከር።
- ደረጃ 4 - የጨዋታ ስልተ ቀመር
- ደረጃ 5 የፕሮጀክቱ ኮድ
- ደረጃ 6 የመጨረሻ ሀሳቦች እና ማሻሻያዎች
ቪዲዮ: የአርዱዲኖ ንካ ቲክ ታክ ጣት ጨዋታ 6 ደረጃዎች (ከስዕሎች ጋር)
2024 ደራሲ ደራሲ: John Day | [email protected]. ለመጨረሻ ጊዜ የተሻሻለው: 2024-01-30 07:29
ውድ ጓደኞቼ ወደ ሌላ የአርዱዲኖ ትምህርት እንኳን በደህና መጡ! በዚህ ዝርዝር ትምህርት ውስጥ የአርዱዲኖ ቲክ ታክ ጣት ጨዋታ እንገነባለን። እርስዎ እንደሚመለከቱት ፣ የምንነካ ማያ ገጽ እየተጠቀምን እና ከኮምፒውተሩ ጋር እየተጫወትን ነው። እንደ Tic Tac Toe ያለ ቀላል ጨዋታ ለጨዋታ ፕሮግራም እና አርቲፊሻል ኢንተለጀንስ ጥሩ መግቢያ ነው። ምንም እንኳን በዚህ ጨዋታ ውስጥ ማንኛውንም ሰው ሰራሽ የማሰብ ስልተ ቀመሮችን ባንጠቀምም ፣ ውስብስብ በሆኑ ጨዋታዎች ውስጥ ሰው ሰራሽ የማሰብ ስልተ ቀመሮች ለምን እንደሚያስፈልጉ እንረዳለን።
ለ Arduino ጨዋታዎችን ማዳበር ቀላል አይደለም እና ብዙ ጊዜ ይጠይቃል። ግን ለአርዱዲኖ አንዳንድ ቀላል ጨዋታዎችን መገንባት እንችላለን ምክንያቱም አስደሳች ስለሆነ እና እንደ አርቴፊሻል ኢንተለጀንስ ያሉ አንዳንድ የላቁ የፕሮግራም ርዕሶችን እንድንመረምር ያስችለናል። እሱ ጥሩ የመማሪያ ተሞክሮ ነው እና በመጨረሻ ለልጆች ጥሩ ጨዋታ ይኖርዎታል!
አሁን ይህንን ፕሮጀክት እንገንባ።
ደረጃ 1 ሁሉንም ክፍሎች ያግኙ
ይህንን ፕሮጀክት ለመገንባት የሚያስፈልጉት ክፍሎች የሚከተሉት ናቸው።
አንድ አርዱዲኖ ኡኖ ▶
2.8”ንክኪ ማያ ገጽ ▶
የፕሮጀክቱ ዋጋ በጣም ዝቅተኛ ነው። እሱ 15 ዶላር ብቻ ነው።
ይህንን ፕሮጀክት ለመገንባት ከመሞከርዎ በፊት እባክዎን ስለ ንኪ ማሳያ ማሳያ ያዘጋጀሁትን ቪዲዮ ይመልከቱ። በዚህ አስተማሪ ውስጥ አያይ Iዋለሁ። ኮዱን እንዲረዱ እና የንክኪ ማያ ገጹን እንዲያስተካክሉ ይረዳዎታል።
ደረጃ 2 - 2.8 ኢንች የንክኪ ቀለም ማሳያ ለአርዱዲኖ።
ይህንን የንክኪ ማያ ገጽ በ banggood.com ላይ አግኝቼ በአንዳንድ ፕሮጀክቶቼ ውስጥ ለመጠቀም ለመሞከር ለመግዛት ወሰንኩ። እርስዎ እንደሚመለከቱት ማሳያው ርካሽ ነው ፣ ዋጋው ወደ 11 ዶላር አካባቢ ነው።
እዚህ ያግኙት ed
ማሳያው የ 320x240 ፒክሰሎች ጥራት ይሰጣል እና ከአርዱዲኖ ጋር ያለውን ግንኙነት እጅግ በጣም ቀላል የሚያደርግ ጋሻ ሆኖ ይመጣል። እንደሚመለከቱት ፣ ማሳያው ሁሉንም የአርዲኖኖ ኡኖ ዲጂታል እና አናሎግ ፒኖችን ይጠቀማል። ይህንን ጋሻ ስንጠቀም ለፕሮጀክቶቻችን 2 ዲጂታል ፒኖች እና 1 የአናሎግ ፒን ብቻ እንቀራለን። እንደ እድል ሆኖ ፣ ማሳያው ከአርዱዲኖ ሜጋ ጋር በጥሩ ሁኔታ ይሠራል ፣ ስለዚህ እኛ ብዙ ፒኖች ስንፈልግ ከአርዲኖ ኡኖ ይልቅ አርዱዲኖ ሜጋን መጠቀም እንችላለን። እንደ አለመታደል ሆኖ ይህ ማሳያ ከ Arduino Due ወይም Wemos D1 ESP8266 ቦርድ ጋር አይሰራም። የጋሻው ሌላው ጠቀሜታ ለመጠቀም በጣም ቀላል የሆነ የማይክሮ ኤስዲ ማስገቢያ ነው።
ደረጃ 3 ፕሮጀክቱን መገንባት እና መሞከር።
ማያ ገጹን ከአርዲኖ ኡኖ ጋር ካገናኘን በኋላ ኮዱን መጫን እንችላለን እና ለመጫወት ዝግጁ ነን።
መጀመሪያ ላይ “ጨዋታ ጀምር” የሚለውን ቁልፍ ተጭነን ጨዋታው ይጀምራል። አርዱዲኖ በመጀመሪያ ይጫወታል። ከዚያ ማያ ገጹን በመንካት በቀላሉ የእኛን እንቅስቃሴ መጫወት እንችላለን። ከዚያ አርዱዲኖ እንቅስቃሴውን እና የመሳሰሉትን ይጫወታል። ሶስት ምልክቶቻቸውን በአግድም ፣ በአቀባዊ ወይም በሰያፍ ረድፍ ውስጥ ያስቀመጠው ተጫዋች ጨዋታውን ያሸንፋል። ጨዋታው ሲያልቅ የጨዋታ Over ማያ ገጹ ይታያል። ከዚያ ጨዋታውን እንደገና ለመጀመር የጨዋታውን እንደገና ቁልፍን መጫን እንችላለን።
በዚህ ጨዋታ አርዱዲኖ በጣም ጥሩ ነው። አብዛኞቹን ጨዋታዎች ያሸንፋል ፣ ወይም በጣም ጥሩ ተጫዋች ከሆኑ ጨዋታው በአቻ ውጤት ይጠናቀቃል። ለሰብዓዊው ተጫዋች የማሸነፍ ዕድል ለመስጠት ሆን ብዬ ይህንን ስልተ ቀመር አንዳንድ ስህተቶችን ለማድረግ ሆንኩ። በጨዋታው ኮድ ላይ ሁለት ተጨማሪ መስመሮችን በማከል አርዱዲኖ ጨዋታውን ለማጣት የማይቻል እንዲሆን ማድረግ እንችላለን። ግን የ 2 $ ቺፕ አርዱinoኖ ሲፒዩ የሰውን አንጎል እንዴት ሊመታ ይችላል? እኛ ያዘጋጀነው ፕሮግራም ከሰው አንጎል የበለጠ ብልህ ነውን?
ደረጃ 4 - የጨዋታ ስልተ ቀመር
ይህንን ጥያቄ ለመመለስ እኔ የተተገበርኩትን ስልተ ቀመር እንመልከት።
ኮምፒዩተሩ ሁል ጊዜ በመጀመሪያ ይጫወታል። ይህ ውሳኔ ብቻውን ጨዋታውን አርዱዲኖ ለማሸነፍ በጣም ቀላል ያደርገዋል። የመጀመሪያው እርምጃ ሁል ጊዜ ጥግ ነው። ለአርዱዲኖ ሁለተኛው እንቅስቃሴ እንዲሁ የተጫዋቹን እንቅስቃሴ በጭራሽ ሳያስብ ከቀሪው የዘፈቀደ ጥግ ነው። ከዚህ ጊዜ ጀምሮ አርዱinoኖ ተጫዋቹ በሚቀጥለው እንቅስቃሴ ማሸነፍ ይችል እንደሆነ እና ያንን የሚንቀሳቀስ ብሎኮችን መጀመሪያ ይፈትሻል። ተጫዋቹ በአንድ እንቅስቃሴ ማሸነፍ ካልቻለ ፣ ከቀረ ወይም የዘፈቀደ ከሆነ የማዕዘን እንቅስቃሴን ይጫወታል። ያ ብቻ ነው ፣ ይህ ቀላል ስልተ ቀመር ሁል ጊዜ የሰውን ተጫዋች ሊመታ ይችላል ወይም በጣም በከፋ ሁኔታ ጨዋታው ዕጣ ያስከትላል። ይህ በጣም ጥሩ የቲክ ታክ ጣት የጨዋታ ስልተ ቀመር አይደለም ፣ ግን በጣም ቀላሉ አንዱ።
ይህ ስልተ ቀመር በአርዱዲኖ በቀላሉ ሊተገበር ይችላል ፣ ምክንያቱም የቲክ ታክ ጣት ጨዋታ በጣም ቀላል ነው ፣ እና እኛ በቀላሉ መተንተን እና መፍታት እንችላለን። የጨዋታውን ዛፍ ዲዛይን ካደረግን አንዳንድ የአሸናፊ ስልቶችን ማግኘት እና በኮድ ውስጥ በቀላሉ መተግበር እንችላለን ወይም ሲፒዩ የጨዋታውን ዛፍ በእውነተኛ ጊዜ እንዲያሰላ እና በራሱ የተሻለውን እንቅስቃሴ እንዲመርጥ ማድረግ እንችላለን። በእርግጥ በዚህ ጨዋታ የምንጠቀምበት ስልተ ቀመር በጣም ቀላል ነው ፣ ምክንያቱም ጨዋታው በጣም ቀላል ነው። ለቼዝ አሸናፊ ስልተ -ቀመር ለመንደፍ ከሞከርን ፣ በጣም ፈጣን ኮምፒተርን ብንጠቀምም በሺህ ዓመታት ውስጥ የጨዋታውን ዛፍ ማስላት አንችልም! ለእንደዚህ ላሉት ጨዋታዎች ሌላ አቀራረብ እንፈልጋለን ፣ አንዳንድ አርቲፊሻል ኢንተለጀንስ ስልተ ቀመሮች እና በእርግጥ ግዙፍ የማቀናበር ኃይል እንፈልጋለን። ወደፊት በዚህ ቪዲዮ ላይ ተጨማሪ።
ደረጃ 5 የፕሮጀክቱ ኮድ
እስቲ የፕሮጀክቱን ኮድ በፍጥነት እንመልከታቸው. ኮዱ እንዲጠናቅቅ ሦስት ቤተ -መጻሕፍት ያስፈልጉናል።
- Adafruit TFTLCD: https://github.com/adafruit/TFTLCD- ቤተ-መጽሐፍት
- Adafruit GFX:
- የንኪ ማያ ገጽ
እንደሚመለከቱት ፣ እንደዚህ ያለ ቀላል ጨዋታ እንኳን ከ 600 በላይ የኮድ መስመሮችን ይፈልጋል። ኮዱ ውስብስብ ነው ፣ ስለሆነም በአጭሩ አጋዥ ስልጠና ለማብራራት አልሞክርም። ምንም እንኳን ለአርዱዲኖ እንቅስቃሴዎች የአልጎሪዝም ስልተ -ቀመር ትግበራ አሳያችኋለሁ።
መጀመሪያ ላይ ሁለት የዘፈቀደ ማዕዘኖችን እንጫወታለን።
<int firstMoves = {0, 2, 6, 8}; // እነዚህን ቦታዎች በመጀመሪያ ይጠቀማል (ቆጣሪ = 0 ፤ ቆጣሪ <4 ፤ ቆጣሪ ++) // የተጫወቱ የመጀመሪያ እንቅስቃሴዎችን ይቆጥሩ {ከሆነ (ቦርድ [firstMoves [ቆጣሪ]! = 0) // የመጀመሪያ እርምጃ በአንድ ሰው ይጫወታል {movePlayed ++; }} ያድርጉ (ከተንቀሳቀሰ <= 2) {int randomMove = የዘፈቀደ (4) ፤ int c = firstMoves [randomMove]; ከሆነ (ሰሌዳ [c] == 0) {መዘግየት (1000); ሰሌዳ [c] = 2; Serial.print (firstMoves [randomMove]); Serial.println (); drawCpuMove (firstMoves [randomMove]); ለ = 1; }}
በመቀጠልም በእያንዳንዱ ዙር ተጫዋቹ በሚቀጥለው እንቅስቃሴ ማሸነፍ ይችል እንደሆነ እንፈትሻለን።
int checkOpponent ()
{ከሆነ (ሰሌዳ [0] == 1 && board [1] == 1 && board [2] == 0) ከተመለሰ 2; ሌላ ከሆነ (ሰሌዳ [0] == 1 && board [1] == 0 && board [2] == 1) 1 ቢመለስ ፤ ሌላ ከሆነ (ሰሌዳ [1] == 1 && ቦርድ [2] == 1 && board [0] == 0) 0 ቢመለስ ፤ ሌላ ከሆነ (ሰሌዳ [3] == 1 && board [4] == 1 && board [5] == 0) 5 ቢመለስ ፤ ሌላ ከሆነ (ሰሌዳ [4] == 1 && board [5] == 1 && board [3] == 0) ከተመለሰ 3; ሌላ ከሆነ (ሰሌዳ [3] == 1 && board [4] == 0 && board [5] == 1) ከተመለሰ 4; ሌላ ከሆነ (ሰሌዳ [1] == 0 && board [4] == 1 && board [7] == 1) 1 ቢመለስ ፤ ሌላ መመለስ 100; }
አዎ ከሆነ ያንን እንቅስቃሴ እናግዳለን ፣ ብዙ ጊዜ። ለሰብአዊው ተጫዋች የማሸነፍ ዕድል ለመስጠት ሁሉንም እንቅስቃሴዎችን አናግድም። የትኞቹ እንቅስቃሴዎች እንዳልታገዱ ማግኘት ይችላሉ? እንቅስቃሴውን ካገድን በኋላ ቀሪውን ጥግ ወይም የዘፈቀደ እንቅስቃሴ እንጫወታለን። ኮዱን ማጥናት እና የራስዎን ተወዳዳሪ የሌለው ስልተ ቀመር በቀላሉ መተግበር ይችላሉ። እንደተለመደው በዚህ አስተማሪ ላይ የተያያዘውን የፕሮጀክት ኮድ ማግኘት ይችላሉ።
ማሳሰቢያ -ባንግጎድ ከሁለት የተለያዩ የማሳያ ነጂዎች ጋር ተመሳሳይ ማሳያ ስለሚያቀርብ ፣ ከላይ ያለው ኮድ የማይሰራ ከሆነ የ initDisplay ተግባሩን ወደሚከተለው ይለውጡ
ባዶነት initDisplay ()
{tft.reset (); tft.begin (0x9341); tft.setRotation (3); }
ደረጃ 6 የመጨረሻ ሀሳቦች እና ማሻሻያዎች
እንደሚመለከቱት ፣ በአርዱዲኖ ኡኖ እንኳን ፣ ለቀላል ጨዋታዎች የማይሸነፍ ስልተ ቀመር መገንባት እንችላለን። ይህ ፕሮጀክት በጣም ጥሩ ነው ፣ ምክንያቱም ለመገንባት ቀላል ስለሆነ ፣ እና በተመሳሳይ ጊዜ ለአርቲፊሻል ኢንተለጀንስ እና ለጨዋታ መርሃ ግብር ታላቅ መግቢያ። የበለጠ ኃይለኛ Raspberry Pi ን በመጠቀም ወደፊት ከአርቲፊሻል ኢንተለጀንስ ጋር አንዳንድ የላቁ ፕሮጄክቶችን ለመገንባት እሞክራለሁ ስለዚህ ይከታተሉ! ስለዚህ ፕሮጀክት ያለዎትን አስተያየት መስማት እፈልጋለሁ።
እባክዎን አስተያየቶችዎን ከዚህ በታች ይለጥፉ እና አስደሳች ሆኖ ካገኙ አስተማሪውን መውደድን አይርሱ። አመሰግናለሁ!
የሚመከር:
የአርዱዲኖ ሶርታ ሱዶኩ ጨዋታ 3 ደረጃዎች (ከስዕሎች ጋር)
የአርዱዲኖ ሶርታ ሱዶኩ ጨዋታ - ብዙ ሰዎች ሱዶኩን መጫወት እና የልጅ ልጆችን እንደ ጨዋታዎች መገመት ይወዳሉ ስለዚህ ተንቀሳቃሽ “የሶርታ ሱዶኩ” ጨዋታ ለማድረግ ወሰንኩ። በእኔ ስሪት ጨዋታው 4x4 ፍርግርግ ነው ግን አንድ ቁጥር ብቻ ነው የቀረበው። ሀሳቡ ቀሪዎቹን ቁጥሮች በዚህ ውስጥ መገመት ነው
ይጫኑ (አዝራር); // የአርዱዲኖ ኤልሲዲ ጨዋታ 5 ደረጃዎች (ከስዕሎች ጋር)
ይጫኑ (አዝራር); // የአርዱዲኖ ኤልሲዲ ጨዋታ - በቅርቡ በስካውቶች ውስጥ ፣ በጨዋታ ዲዛይን ብቃት ባጅ ላይ ሠርቻለሁ። ከአስፈላጊዎቹ አንዱ ይህንን ጨዋታ የሠራሁት በኤልዲ ሮክ ጨዋታ ላይ የተመሠረተውን አርዱዲኖን በመጠቀም ነው። የጨዋታው ነጥብ በተቻለ መጠን ከፍተኛ ነጥቦችን ማስቆጠር ነው። በቲ መጀመሪያ ላይ
የአርዱዲኖ ሽቦ ጨዋታ 7 ደረጃዎች (ከስዕሎች ጋር)
የአርዱዲኖ ሽቦ ጨዋታ - ለዚህ ፕሮጀክት ከዚህ ድርጣቢያ አጣቅ I አዲስ ፕሮጀክት ለማድረግ ቀየርኩት። ይህ ፕሮጀክት የሽቦ ጨዋታ ይባላል ፣ እዚያም የብረት እጀታ ወስደው ሽቦውን ሳይነኩ በሽቦው ውስጥ እንዲያልፉ ያደርጋሉ። እጀታው ሽቦ ቢነካ
የአርዱዲኖ ጨዋታ መቆጣጠሪያ + የአንድነት ጨዋታ 5 ደረጃዎች
የአርዱዲኖ ጨዋታ መቆጣጠሪያ + የአንድነት ጨዋታ - በዚህ አስተማሪ ውስጥ ከአንድነት ጋር ሊገናኝ የሚችል የአርዱዲኖ ጨዋታ መቆጣጠሪያ እንዴት እንደሚገነቡ/እንደሚያሳዩ አሳያችኋለሁ።
የአርዱዲኖ የኪስ ጨዋታ ኮንሶል + ኤ -ማዝ - የማዝ ጨዋታ - 6 ደረጃዎች (ከስዕሎች ጋር)
የአርዱዲኖ የኪስ ጨዋታ ኮንሶል + ኤ -ማዜ - የማዝ ጨዋታ - ወደ መጀመሪያው አስተማሪዬ እንኳን በደህና መጡ! ዛሬ ላካፍላችሁ የምፈልገው ፕሮጀክት እንደ አርዱቦይ እና መሰል አርዱinoኖን መሠረት ያደረጉ የኪስ ኮንሶል የሆነው የ Arduino maze ጨዋታ ነው። ለኤክስፖ ምስጋና ይግባው በእኔ (ወይም በእርስዎ) የወደፊት ጨዋታዎች ሊበራ ይችላል