ዝርዝር ሁኔታ:
2024 ደራሲ ደራሲ: John Day | [email protected]. ለመጨረሻ ጊዜ የተሻሻለው: 2024-01-30 07:33
ዛሬ እኛ ቀለል ያለ የ C#ላይ የተመሠረተ የመሣሪያ ስርዓት ጨዋታን ለመቆጣጠር የአርዱዲኖ ማይክሮ መቆጣጠሪያን እንጠቀማለን። እኔ ከጆይስቲክ ሞዱል ግብዓት ለመውሰድ አርዱዲኖን እየተጠቀምኩ ነው ፣ እና ያንን ግቤት በተከታታይ ግንኙነት ላይ ግቤትን ወደሚያዳምጥ እና ወደሚጽፍ ወደ C# መተግበሪያ እልካለሁ። ምንም እንኳን ፕሮጄክቱን ለማጠናቀቅ የቪዲዮ ጨዋታዎችን በመገንባት ውስጥ ምንም ቀዳሚ ተሞክሮ ባይኖርዎትም ፣ በኋላ ላይ የምንወያይበትን “የጨዋታ ዙር” ውስጥ ያሉትን አንዳንድ ነገሮች ለመቅሰም የተወሰነ ጊዜ ሊፈልግ ይችላል።
ይህንን ፕሮጀክት ለማጠናቀቅ የሚከተሉትን ያስፈልግዎታል
- የእይታ ስቱዲዮ ማህበረሰብ
- አርዱዲኖ ኡኖ (ወይም ተመሳሳይ)
- ጆይስቲክ መቆጣጠሪያ ሞዱል
- ትዕግስት
ለመጀመር ዝግጁ ከሆኑ ይቀጥሉ!
ደረጃ 1 - ጆይስቲክ እና አይአር ኤል ን ያገናኙ
እዚህ ፣ መንጠቆው በጣም ቀላል ነው። ከብዙ አርዱዲኖ ኪትዎች ጋር የሚመጣውን ጨዋታ በርቀት መቆጣጠሪያ ለመቆጣጠር ጆይስቲክን እና ኢንፍራሬድ LED ን ያካተተ ጆይስቲክን ብቻ ፣ እንዲሁም እኔ የምጠቀምበትን ቅንብር የሚያሳዩ ስዕሎችን አካትቻለሁ። ይህ አማራጭ ነው ፣ ግን ሽቦ አልባ ጨዋታዎችን መሥራት መቻል ጥሩ ሀሳብ ይመስላል።
በማዋቀሩ ውስጥ ጥቅም ላይ የዋሉት ፒኖች -
- A0 (አናሎግ) <- አግድም ወይም ኤክስ-ዘንግ
- A1 (አናሎግ) <- አቀባዊ ወይም Y- ዘንግ
- ፒን 2 <- ጆይስቲክ ቀይር ግብዓት
- ፒን 2 <- የኢንፍራሬድ LED ግቤት
- ቪሲሲ <- 5V
- መሬት
- መሬት ቁጥር 2
ደረጃ 2 አዲስ ንድፍ ይፍጠሩ
የእኛን የአርዱዲኖ ረቂቅ ፋይል በመፍጠር እንጀምራለን። ይህ ለለውጦች ጆይስቲክን ይመርጣል ፣ እና እነዚያን ለውጦች በየሲሊሰከንዶች ወደ C# ፕሮግራም ይልካል። በእውነተኛ የቪዲዮ ጨዋታ ውስጥ ፣ የግብዓት ጨዋታ ዙር ውስጥ ተከታታይ ወደቡን እንፈትሻለን ፣ ግን ጨዋታውን እንደ ሙከራ ጀመርኩ ፣ ስለዚህ ክፈፉ በእውነቱ በተከታታይ ወደብ ላይ ባሉት ክስተቶች ብዛት ላይ የተመሠረተ ነው። በእውነቱ ፕሮጄክቱን በአርዱዲኖ እህት ፕሮጄክት ውስጥ ጀምሬ ነበር ፣ ግን እሱ በጣም ፣ በጣም ቀርፋፋ እና በማያ ገጹ ላይ ያሉትን ሳጥኖች ብዛት ማስተናገድ አልቻለም።
ስለዚህ ፣ በመጀመሪያ በአርዱዲኖ ኮድ አርታኢ ፕሮግራም ውስጥ አዲስ ንድፍ ይፍጠሩ። እኔ ኮዴን አሳይሻለሁ እና ከዚያ ምን እንደሚሰራ አብራራለሁ-
#"IRremote.h" ን ያካትቱ
// የ IR ተለዋጮች int ተቀባይ = 3; // የ IR ተቀባዩ የምልክት ፒን IRrecv irrecv (ተቀባይ); // የ ‹irrecv› decode_results ውጤቶችን ምሳሌ ይፍጠሩ ፤ // የ ‹decode_results› ምሳሌን ይፍጠሩ // ጆይስቲክ/የጨዋታ ተለዋዋጮች int xPos = 507; int yPos = 507; ባይት joyXPin = A0; ባይት ደስታYPin = A1; ባይት joySwitch = 2; ተለዋዋጭ ባይት ጠቅታ ኮተር = -1; int minMoveHigh = 530; int minMoveLow = 490; int currentSpeed = 550; // ነባሪ = አማካይ የፍጥነት ፍጥነት ፍጥነት Increment = 25; // በ Y ግቤት ያልተፈረመ ረዥም የአሁኑን ፍጥነት = ለመጨመር ፍጥነት/መጠን። // የአሁኑን የጊዜ ማህተም int ይጠብቃል = 40; በመልእክቶች መካከል ለመጠባበቅ // ms // አዝራሩ ከተጫነ ባዶነት ማዋቀር () {Serial.begin (9600); pinMode (joySwitch ፣ INPUT_PULLUP); አባሪ መቋረጥ (0 ፣ ዝለል ፣ መውደቅ); የአሁኑ = ሚሊስ (); // የአሁኑን ጊዜ ያዋቅሩ // የኢንፍራሬድ መቀበያ ያዘጋጁ: irrecv.enableIRIn (); // ተቀባዩን ያስጀምሩ} // ማዋቀር ባዶነት loop () {int xMovement = analogRead (joyXPin); int yPos = analogRead (joyYPin); // የጊዜ ገደብ ምንም ይሁን ምን የጆይስቲክ ኤክስ እንቅስቃሴን ይያዙ - (xMovement> minMoveHigh || xMovement current + wait) {currentSpeed = yPos> minMoveLow && yPos <minMoveHigh // ትንሽ ቢንቀሳቀስ…? currentSpeed //… አሁን ያለውን ፍጥነት ይመልሱ: getSpeed (yPos); // ጆይስቲክ በከፍተኛ ሁኔታ ከተንቀሳቀሰ yPos ን ብቻ ይለውጡ // int ርቀት =; Serial.print ((String) xPos + "," + (String) yPos + ',' + (String) currentSpeed + '\ n'); የአሁኑ = ሚሊስ (); }} // loop int getSpeed (int yPos) {// አሉታዊ እሴቶች ጆይስቲክ ወደ ላይ ከፍ ካለ (yPos 1023? ከ 0 በታች መመለስ የአሁኑን ፍጥነት - የፍጥነት መጨመር / 0? የርቀት መቆጣጠሪያ ፣ ተገቢውን ምላሽ ባዶ ትርጉምን ያስተናግዱ IR (የዴኮድ_ ውጤት ውጤቶች) // በ IR ኮድ መሠረት እርምጃ ይወስዳል {መቀየሪያ (results.value) {case 0xFF18E7: //Serial.println("2 "); currentSpeed += speedIncrement * 2; ማቋረጥ ፤ መያዣ 0xFF10EF: //Serial.println("4 ") ፤ xPos = -900 ፤ ዕረፍት ፤ ጉዳይ 0xFF38C7: //Serial.println ("5") ፤ መዝለል () ፤ ዕረፍት ፤ ጉዳይ 0xFF5AA5: // ተከታታይ። println ("6"); xPos = 900; እረፍት; መያዣ 0xFF4AB5: //Serial.println("8 "); currentSpeed -= speedIncrement * 2; እረፍት; ነባሪ: //Serial.println (" ሌላ አዝራር "); እረፍት ፤} // ማብሪያ ማብቂያ} // መጨረሻ ተርጓሚ
እኔ በአብዛኛው ራስን ገላጭ ለመሆን ኮዱን ለመፍጠር ሞከርኩ ፣ ግን መጥቀስ የሚገባቸው ጥቂት ነገሮች አሉ። ለማስላት የሞከርኩት አንድ ነገር በሚከተሉት መስመሮች ውስጥ ነበር።
int minYMoveUp = 520;
int minYMoveDown = 500;
ፕሮግራሙ በሚሠራበት ጊዜ ፣ ከጆይስቲክ የመጣው የአናሎግ ግብዓት ዘልሎ የመግባት አዝማሚያ አለው ፣ ብዙውን ጊዜ ወደ 507 አካባቢ ይቆያል። ይህንን ለማስተካከል ፣ ግቡ ከ minYMoveUp ወይም ከ minYMoveDown ያነሰ ካልሆነ በስተቀር አይቀየርም።
pinMode (joySwitch ፣ INPUT_PULLUP);
አባሪ መቋረጥ (0 ፣ መዝለል ፣ መውደቅ);
እንደ ጆይስቲክ ቁልፍ ሲጫን እንደ አዝራር ተጭኖ ግብዓት መውሰድ እንድንችል የአባሪ ኢንተርፕራይዝ () ዘዴ በማንኛውም ጊዜ መደበኛውን ዑደት ለማቋረጥ ያስችለናል። እዚህ ፣ የ pinMode () ዘዴን በመጠቀም ፣ በፊቱ ያለውን ማቋረጫ አያይዘነዋል። እዚህ አንድ አስፈላጊ ማስታወሻ በአርዱዲኖ ኡኖ ላይ ማቋረጫ ለማያያዝ ፒን 2 ወይም 3. ሌሎች ሞዴሎችን የተለያዩ የማቋረጫ ፒኖችን መጠቀም አለብዎት ፣ ስለሆነም ሞዴልዎ በአርዲኖ ድርጣቢያ ላይ የትኛውን ፒን እንደሚጠቀም ማረጋገጥ ሊኖርብዎት ይችላል። ሁለተኛው ግቤት ለመልሶ ማግኛ ዘዴ ነው ፣ እዚህ ISR ወይም “Interrupt Service Routine” ተብሎ ይጠራል። ማንኛውንም መለኪያዎች መውሰድ ወይም ማንኛውንም ነገር መመለስ የለበትም።
Serial.print (…)
ይህ የእኛን ውሂብ ወደ ሲ# ጨዋታ የሚልክ መስመር ነው። እዚህ ፣ የኤክስ-ዘንግ ንባብ ፣ የ Y- ዘንግ ንባብ እና የፍጥነት ተለዋዋጭ ወደ ጨዋታው እንልካለን። ጨዋታው የበለጠ አስደሳች እንዲሆን ሌሎች ግብዓቶችን እና ንባቦችን ለማካተት እነዚህ ንባቦች ሊሰፉ ይችላሉ ፣ ግን እዚህ እኛ ጥንድ ብቻ እንጠቀማለን።
ኮድዎን ለመሞከር ዝግጁ ከሆኑ ወደ አርዱዲኖ ይስቀሉት እና ተከታታይ መቆጣጠሪያውን ለመክፈት እና ማንኛውንም ውጤት እያገኙ እንደሆነ ለማየት [Shift] + [Ctrl] + [M] ን ይጫኑ። ከ Arduino መረጃ እየቀበሉ ከሆነ ፣ ወደ ኮዱ C# ክፍል ለመሄድ ዝግጁ ነን…
ደረጃ 3 የ C# ፕሮጀክት ይፍጠሩ
የእኛን ግራፊክስ ለማሳየት በመጀመሪያ እኔ በማቀነባበር ላይ ፕሮጀክት ጀመርኩ ፣ በኋላ ግን እኛ ማሳየት ያለብንን ነገሮች ሁሉ ለማሳየት በጣም ቀርፋፋ እንደሚሆን ወሰንኩ። ስለዚህ ፣ ግቤታችንን በሚይዝበት ጊዜ በጣም ለስላሳ እና የበለጠ ምላሽ ሰጭ የሆነውን C#ን ለመጠቀም መረጥኩ።
ለፕሮጀክቱ ሲ# ክፍል በቀላሉ የ.zip ፋይልን ማውረድ እና ወደ ራሱ አቃፊ ማውጣቱ እና ከዚያ ማሻሻል የተሻለ ነው። በዚፕ ፋይል ውስጥ ሁለት አቃፊዎች አሉ። በእይታ ስቱዲዮ ውስጥ ፕሮጀክቱን ለመክፈት በዊንዶውስ ኤክስፕሎረር ውስጥ የ RunnerGame_CSharp አቃፊን ያስገቡ። እዚህ ፣.sln (መፍትሄ) ፋይልን ሁለቴ ጠቅ ያድርጉ ፣ እና ቪኤስ ፕሮጀክቱን ይጭናል።
ለጨዋታው የፈጠርኳቸው ጥቂት የተለያዩ ክፍሎች አሉ። ስለ እያንዳንዱ ክፍል ሁሉንም ዝርዝሮች አልገባም ፣ ግን ዋናዎቹ ክፍሎች ምን እንደሆኑ አጠቃላይ እይታ እሰጣለሁ።
የሳጥን ክፍል
በመስኮት ቅጽ ላይ በማያ ገጽ ላይ ሊስሉ የሚችሉ ቀለል ያሉ አራት ማእዘን ነገሮችን እንዲፈጥሩ ለማስቻል የሳጥን ክፍልን ፈጠርኩ። ሀሳቡ አንድ ዓይነት ግራፊክስ ለመሳል ሊፈልጉ የሚችሉ ሌሎች ክፍሎችን በመጠቀም ሊራዘም የሚችል ክፍል መፍጠር ነው። ሌሎች ክፍሎች እንዲሻሩባቸው (“ተሻጋሪ” ቁልፍ ቃሉን በመጠቀም) “ምናባዊ” ቁልፍ ቃል ጥቅም ላይ ውሏል። በዚያ መንገድ ፣ እኛ በተፈለገበት ጊዜ ለተጫዋቹ ክፍል እና ለመድረክ ክፍሉ ተመሳሳይ ባህሪን ማግኘት እንችላለን ፣ እንዲሁም እኛ የምንፈልገውን ነገር ሁሉ እንለውጣለን።
ስለ ሁሉም ንብረቶች በጣም ብዙ አይጨነቁ እና ጥሪዎችን ይሳሉ። ለወደፊቱ ላደርገው የምፈልገው ለማንኛውም የጨዋታ ወይም የግራፊክስ ፕሮግራም ማራዘም እችል ዘንድ ይህንን ክፍል ጽፌያለሁ። በዝንብ ላይ በቀላሉ አራት ማእዘን ለመሳል ከፈለጉ እንደዚህ ያለ ትልቅ ክፍል መፃፍ የለብዎትም። የ C# ሰነድ ይህንን እንዴት ማድረግ እንደሚቻል ጥሩ ምሳሌዎች አሉት።
ሆኖም ፣ የ “ሣጥን” ክፍሌን አንዳንድ አመክንዮ እዘረጋለሁ-
ይፋዊ ምናባዊ bool IsCollidedX (ሳጥን otherObject) {…}
እዚህ በ X- አቅጣጫ ካሉ ዕቃዎች ጋር ግጭቶችን እንፈትሻለን ፣ ምክንያቱም ተጫዋቹ በማያ ገጹ ላይ ከተሰለፈ በ Y አቅጣጫ (ወደ ላይ እና ወደ ታች) ግጭቶችን ብቻ መፈተሽ አለበት።
ይፋዊ ምናባዊ bool IsCollidedY (ሣጥን otherObject) {…}
እኛ ከሌላ ወይም ሌላ የጨዋታ ነገር በታች ስንሆን ፣ የ Y ግጭቶችን እንፈትሻለን።
ይፋዊ ምናባዊ bool IsCollided (ሳጥን otherObject) {…}
ይህ የ X እና Y ግጭቶችን ያጣምራል ፣ ማንኛውም ነገር ከዚህ ጋር ተጋጭቶ እንደሆነ ይመለሳል።
ይፋዊ ምናባዊ ባዶነት OnPaint (ግራፊክስ ግራፊክስ) {…}
ከላይ የተጠቀሰውን ዘዴ በመጠቀም ማንኛውንም የግራፊክስ ነገር እናስተላልፋለን እና ፕሮግራሙ እየሄደ ባለበት እንጠቀማለን። ሊስሉ የሚችሉ ማናቸውንም አራት ማዕዘኖች እንፈጥራለን። ምንም እንኳን ይህ ለተለያዩ እነማዎች ጥቅም ላይ ሊውል ይችላል። ለእኛ ዓላማዎች ፣ አራት ማዕዘኖች ለሁለቱም መድረኮች እና ለተጫዋቹ ጥሩ ይሰራሉ።
የባህሪው ክፍል
የባህሪው ክፍል የሳጥን ክፍሌን ያሰፋል ፣ ስለዚህ እኛ የተወሰኑ ፊዚክስ ከሳጥኑ ውስጥ አለን። ለግጭት የፈጠርናቸውን ሁሉንም መድረኮች በፍጥነት ለመፈተሽ የ “CheckForCollisions” ዘዴን ፈጠርኩ። የ “መዝለል” ዘዴው የተጫዋቹን ወደላይ ፍጥነት ወደ “JumpSpeed” ተለዋዋጭ ያዘጋጃል ፣ ከዚያ በዋናው መስኮት ክፍል ውስጥ ፍሬም-በ-ፍሬም ይቀየራል።
ግጭቶች እዚህ ከቦክስ ክፍል ይልቅ በመጠኑ በተለየ ሁኔታ ይስተናገዳሉ። ወደ ላይ ከዘለለ ፣ በመድረክ በኩል መዝለል እንደምንችል በዚህ ጨዋታ ውስጥ ወሰንኩ ፣ ግን ከእሱ ጋር ከተጋጨ የእኛን ተጫዋች በመንገዱ ላይ ይይዛል።
የመድረክ ክፍል
በዚህ ጨዋታ ውስጥ እኔ በዋናው መስኮት ክፍል ውስጥ ያሉትን ሁሉንም የመሣሪያ ስርዓቶች X ሥፍራዎችን በማስላት ኤክስ አስተባባሪን እንደ ግብዓት የሚወስደውን የዚህ ክፍል ገንቢን ብቻ እጠቀማለሁ። እያንዳንዱ የመሣሪያ ስርዓት በዘፈቀደ Y- አስተባባሪ ከ 1/2 ማያ ገጹ እስከ ማያ ገጹ ቁመት 3/4 ድረስ ይዘጋጃል። ቁመቱ ፣ ስፋቱ እና ቀለሙ እንዲሁ በዘፈቀደ የተፈጠሩ ናቸው።
ዋናው መስኮት ክፍል
ጨዋታው በሚካሄድበት ጊዜ ሁሉንም አመክንዮዎች እንዲጠቀሙበት የምናደርግበት ይህ ነው። በመጀመሪያ ፣ በግንባታው ውስጥ ፣ ለፕሮግራሙ የሚገኙትን ሁሉንም የ COM ወደቦች እናተምታለን።
foreach (በ SerialPort ውስጥ ሕብረቁምፊ ወደብ። GetPortNames ())
Console. WriteLine ("AVAILABLE PORTS:" + port);
አርዱዲኖ በየትኛው ወደብ እንደሚጠቀም በየትኛው ላይ ግንኙነቶችን እንደምንቀበል እንመርጣለን-
SerialPort = አዲስ SerialPort (SerialPort. GetPortNames () [2] ፣ 9600 ፣ Parity. None ፣ 8 ፣ StopBits. One) ፤
ለትእዛዙ ትኩረት ይስጡ SerialPort. GetPortNames () [2]። [2] የትኛውን ተከታታይ ወደብ መጠቀም እንዳለበት ያመለክታል። ለምሳሌ ፣ ፕሮግራሙ “COM1 ፣ COM2 ፣ COM3” የታተመ ከሆነ ፣ ቁጥሩ በቁጥር 0 ውስጥ ስለሚጀምር COM3 ላይ እናዳምጣለን።
እንዲሁም በገንቢው ውስጥ ፣ ሁሉንም መድረኮች በከፊል የዘፈቀደ ክፍተት እና በማያ ገጹ ላይ ባለው የ Y አቅጣጫ ውስጥ እንፈጥራለን። ሁሉም የመሣሪያ ስርዓቶች በዝርዝሩ ነገር ላይ ተጨምረዋል ፣ ይህም በ C# ውስጥ በቀላሉ ድርድር የመሰለ የውሂብ አወቃቀርን ለማስተዳደር በጣም ለተጠቃሚ ምቹ እና ቀልጣፋ መንገድ ነው። ከዚያ የእኛ የባህርይ ነገር የሆነውን ማጫወቻውን እንፈጥራለን ፣ ውጤቱን ወደ 0 አስቀምጠን እና GameOver ን ወደ ሐሰት ያቀናጃል።
የግል የማይንቀሳቀስ ባዶነት DataReived (የነገር ላኪ ፣ SerialDataReceivedEventArgs e)
ይህ በተከታታይ ወደብ ላይ መረጃ ሲደርሰው የሚጠራው ይህ ዘዴ ነው። እኛ ሁሉንም ፊዚክስችንን የምንተገብርበት ፣ ጨዋታን ለማሳየት ፣ መድረኮችን ለማንቀሳቀስ ፣ ወዘተ የሚወስኑበት ጨዋታ ከመቼውም ጊዜ በአጠቃላይ ጨዋታ ከገነቡ በአጠቃላይ “የጨዋታ ዙር” የሚባል ነገር አለዎት ፣ ይህም በእያንዳንዱ ጊዜ ፍሬም ይባላል። ያድሳል። በዚህ ጨዋታ ውስጥ የ DataReceived ዘዴ እንደ የጨዋታ ዑደት ሆኖ ይሠራል ፣ መረጃው ከተቆጣጣሪው እንደተቀበለ ፊዚክስን ብቻ ያሽከረክራል። በዋናው መስኮት ውስጥ ሰዓት ቆጣሪን ማቀናበር ፣ እና በተቀበለው መረጃ ላይ በመመርኮዝ ዕቃዎቹን ማደስ የተሻለ ሰርቶ ሊሆን ይችላል ፣ ግን ይህ የአርዱዲኖ ፕሮጀክት እንደመሆኑ ፣ ከሱ በሚመጣው መረጃ ላይ የተመሠረተ በእውነቱ የሮጠ ጨዋታ መሥራት እፈልግ ነበር።.
ለማጠቃለል ፣ ይህ ማዋቀር ጨዋታውን ወደሚጠቅም ነገር ለማስፋፋት ጥሩ መሠረት ይሰጣል። ምንም እንኳን ፊዚክስ ፍጹም ባይሆንም ፣ ለዓላማችን በደንብ ይሠራል ፣ ይህም አርዱዲኖ ለሁሉም ለሚወደው ነገር - ጨዋታዎችን መጫወት!
የሚመከር:
በ GameGo ላይ በ ‹GoGo› ላይ ማለቂያ ከሌላቸው ደረጃዎች ጋር የመሣሪያ ስርዓት - 5 ደረጃዎች (ከስዕሎች ጋር)
በ GameGo ላይ በ MakeGo Arcade የመጫወቻ ማዕከል ላይ ገደብ የለሽ ደረጃዎች ያለው የመሣሪያ ስርዓት - GameGo በ TinkerGen STEM ትምህርት የተገነባ የ Microsoft Makecode ተኳሃኝ የሆነ የሬትሮ ጨዋታ ተንቀሳቃሽ ኮንሶል ነው። እሱ በ STM32F401RET6 ARM Cortex M4 ቺፕ ላይ የተመሠረተ እና ለ STEM አስተማሪዎች ወይም የሬትሮ ቪዲዮ ጨዋታን መፍጠር መዝናናትን ለሚወዱ ሰዎች ብቻ የተሰራ ነው
የቀለም ድርድር ስርዓት -አርዱዲኖ የተመሠረተ ስርዓት በሁለት ቀበቶዎች 8 ደረጃዎች
የቀለም ድርድር ስርዓት - አርዱinoኖ ላይ የተመሠረተ ስርዓት በሁለት ቀበቶዎች - በኢንዱስትሪ መስክ ውስጥ ምርቶችን እና ዕቃዎችን ማጓጓዝ እና/ወይም ማሸግ የሚከናወነው ማጓጓዣ ቀበቶዎችን በመጠቀም የተሰሩ መስመሮችን በመጠቀም ነው። እነዚያ ቀበቶዎች በተወሰነ ፍጥነት ዕቃውን ከአንድ ነጥብ ወደ ሌላ ለማንቀሳቀስ ይረዳሉ። አንዳንድ የማቀናበር ወይም የመለየት ተግባራት ምናልባት
አርዱዲኖ አይአር ዳሳሽ እና ርቀት ከ LCD ጋር - 4 ደረጃዎች
አርዱዲኖ አይአር ዳሳሽ እና ከ LCD ጋር የርቀት እኛ እኛ ከዩኒቲቲ ቱ ሁሴን ኦን ማሌዥያ (UTHM) የ UQD10801 (Robocon1) ተማሪዎች ቡድን ነን። ) Arduino Uno R3 ን በመጠቀም። ይህ አጋዥ ሥልጠና
IoT Base Platform ከ RaspberryPi ፣ WIZ850io ጋር: የመሣሪያ ስርዓት መሣሪያ ነጂ -5 ደረጃዎች (ከስዕሎች ጋር)
IoT Base Platform ከ RaspberryPi ፣ WIZ850io ጋር: የመሣሪያ ስርዓት መሣሪያ ነጂ - እኔ ለ RaspberryPi መድረክ ለ IoT አውቃለሁ። በቅርቡ WIZ850io በ WIZnet ይፋ ተደርጓል። ስለዚህ እኔ የምንጭ ኮድ በቀላሉ ማስተናገድ ስለምችል የ RaspberryPi መተግበሪያን በኤተርኔት SW ማሻሻያ ተግባራዊ አደረግሁ። በ RaspberryPi በኩል የመሣሪያ ስርዓት መሣሪያ ነጂን መሞከር ይችላሉ
የኦዲዮ ቪዲዮ ተቀባይ ተቀባይ የድምፅ ኖት እንዴት ወደ ኋላ ማብራት እንደሚቻል። (onkyo Hr550): 3 ደረጃዎች
የኦዲዮ ቪዲዮ ተቀባይ ተቀባይ የድምፅ ኖት እንዴት ወደ ኋላ ማብራት እንደሚቻል። (onkyo Hr550): የኋላ ብርሃን ጥራዝ ቁልፎች ትንሽ የቅርብ ጊዜ ፈጠራ ናቸው። በእውነቱ በውስጡ ምንም ተግባር የለም ፣ ግን በጣም ጥሩ ይመስላል። ለ chistmas hr550 መቀበያ አግኝቻለሁ ፣ እና ይህንን እንዴት ማድረግ እንደሚቻል አጋዥ ስልጠና ለመጣል ወሰንኩ። የሚያስፈልጉት ነገሮች - መልቲሜትር የማሸጊያ ብረት