ዝርዝር ሁኔታ:

የርቀት መቆጣጠሪያ ሰዓት ቆጣሪ ከኖድ ኤምሲዩ ጋር - 14 ደረጃዎች
የርቀት መቆጣጠሪያ ሰዓት ቆጣሪ ከኖድ ኤምሲዩ ጋር - 14 ደረጃዎች

ቪዲዮ: የርቀት መቆጣጠሪያ ሰዓት ቆጣሪ ከኖድ ኤምሲዩ ጋር - 14 ደረጃዎች

ቪዲዮ: የርቀት መቆጣጠሪያ ሰዓት ቆጣሪ ከኖድ ኤምሲዩ ጋር - 14 ደረጃዎች
ቪዲዮ: How to connect single phase breaker / የ220v ቆጣሪ ብሬከር አገጣጠም 2024, ሀምሌ
Anonim
በርቀት ቁጥጥር የሚደረግበት ሰዓት ቆጣሪ ከ NodeMCU ጋር
በርቀት ቁጥጥር የሚደረግበት ሰዓት ቆጣሪ ከ NodeMCU ጋር

እዚህ እኛ NodeMCU እና Adafruit ን በመጠቀም ሰዓት ቆጣሪ እንፈጥራለን። እኛ ሰዓት ቆጣሪችንን በ LED ስትሪፕ እናሳያለን እና ስልካችንን ወይም ኮምፒተርችንን በመጠቀም መቆጣጠር እንችላለን!

ግባችን ፦

እኛ የምንችለውን የ LED ንጣፍ በመጠቀም ሰዓት ቆጣሪን ይፍጠሩ - ስልካችንን ወይም ኮምፒተርችንን በመጠቀም ይጀምሩ ፣ ለአፍታ ያቁሙ እና ዳግም ያስጀምሩ።

አቅርቦቶች

ሃርድዌር

  • NodeMCU ESP 8266 እ.ኤ.አ.
  • Adafruit NeoPixel LED strip

ቤተመጻሕፍት ፦

  • Adafruit_NeoPixel.h
  • AdafruitIO_WiFi.h

ሌላ:

ጥሩ የ WiFi ግንኙነት

ደረጃ 1 በአዳፍሬው ውስጥ ምግብ እንፍጠር

በአዳፍሬው ውስጥ ምግብ እንፍጠር!
በአዳፍሬው ውስጥ ምግብ እንፍጠር!

አሁን የምንፈልገውን ሁሉ ስላገኘን ፣ ግንባታ ለመጀመር ዝግጁ ነን! በመጀመሪያ በአዳፍሬሽ ውስጥ ምግብ መፍጠር አለብን። አዳፍሩት የእኛን አርዱinoኖን ከበይነመረቡ ጋር ማገናኘት እና ጠቃሚ የርቀት መቆጣጠሪያ ባህሪያትን እንድናደርግ በእውነት ለእኛ ቀላል የሚያደርግ አገልግሎት ነው። እስካሁን ካላደረጉ ለአዳፍሬዝ ይመዝገቡ።

አሁን አዲስ ምግብ እንፍጠር

እኛ የምንፈልገውን ማንኛውንም ነገር መሰየም እንችላለን ፣ እኔ ‹ሰዓት ቆጣሪ› ብዬ እጠራለሁ።

ምግብ የሚሠራው በእኛ ዳሽቦርድ ውስጥ የምናደርገውን ሁሉ (በአንድ ደቂቃ ውስጥ ብቻ የምንፈጥረው) መመዝገብ እና ያንን ውሂብ ወደ ቦርዳችን መላክ ነው ፣ ግን እኛ የምንላከው ውሂብ ካለን በኋላ የምንመለከተው ነገር ነው።

ደረጃ 2 አሁን ዳሽቦርድ እንሥራ

አሁን ዳሽቦርድ እንሥራ
አሁን ዳሽቦርድ እንሥራ
አሁን ዳሽቦርድ እንሥራ
አሁን ዳሽቦርድ እንሥራ
አሁን ዳሽቦርድ እንሥራ
አሁን ዳሽቦርድ እንሥራ

አሁን እኛ ምግብ እንደሠራን በተመሳሳይ አዲስ ዳሽቦርድ እንፈጥራለን። እኔ የእኔን ዳሽቦርድ እጠራለሁ ‹የጊዜ ቆጣሪ በይነገጽ› ምክንያቱም በመሠረቱ የእኛ ዳሽቦርድ ምን እንደሚሆን -ሰዓት ቆጣሪችንን ለመቆጣጠር ቁልፎች ያሉት በይነገጽ።

ደረጃ 3 ቁልፍችንን ያግኙ

የእኛን ቁልፍ ያግኙ
የእኛን ቁልፍ ያግኙ

የእኛን አርዱኢኖን ከምግቦቻችን ጋር ማገናኘት ከፈለግን የአዳፍ ፍሬያችን ቁልፍ ማግኘት አለብን ፣ ይህ እርስዎ ብቻ ከእርስዎ ምግቦች ጋር መገናኘትዎን የሚያረጋግጥ ሚስጥራዊ የይለፍ ቃልዎ ነው።

በአዳፍ ፍሬም ውስጥ በማያ ገጽዎ የላይኛው ቀኝ ጥግ ላይ ያለውን ቢጫ AIO ቁልፍ ቁልፍን ጠቅ በማድረግ ቁልፍዎን ማግኘት ይችላሉ።

ይህንን ቁልፍ የሆነ ቦታ ያስቀምጡ ፣ በኋላ እንፈልገዋለን።

ቁልፍዎን አይጋሩ! አለበለዚያ መጥፎ ዓላማ ያላቸው ሰዎች ከእርስዎ ምግቦች እና መሣሪያዎች ጋር መገናኘት ይችላሉ።

ደረጃ 4: የምግብ ንባብ ምሳሌን ይክፈቱ

የምግብ ንባብ ምሳሌን ይክፈቱ
የምግብ ንባብ ምሳሌን ይክፈቱ

አሁን የእኛን የአርዱዲኖ አይዲኢን እንከፍት እና የኮድ አሰጣጥ ሂደቶችን እንጀምር። በመጀመሪያ የአዳፍሬቱ አይኦ አርዱዲኖ ቤተ -መጽሐፍት እንዲጫንልን ያስፈልገናል።

ቤተመጽሐፍት እንዴት እንደሚጫኑ አታውቁም? ይህ በአዳፍ ፍሬዝ: አርዱዲኖ ቤተመፃህፍት ታላቅ መመሪያ ነው

እኛ ለመጠቀም እና ለመማር Adafruit ብዙ ቅድመ-ምሳሌዎችን ያቀርብልናል። ከእነዚህ ምሳሌዎች አንዱ adafruitio_21_feed_read ነው። ይህንን ምሳሌ እዚህ ማግኘት ይችላሉ - ፋይል - ምሳሌዎች Adafruit IO Arduino adafruitio_21_feed_read

(በምስሉ ላይ የእኔን የደች በይነገጽ ይቅር)

ደረጃ 5 ግንኙነታችንን እናስተካክል

የ adafruitio_21_feed_read ንድፍን በተሳካ ሁኔታ ከከፈቱ በስዕልዎ ውስጥ 2 ትሮችን ማየት አለብዎት - adafruitio_21_feed_read እና config.h። ይህ ንድፍ የተሠራው በደረጃ 1 ከሠራነው ምግብ ጋር መገናኘት እንድንችል ነው።

ከዚህ ምግብ ጋር ለመገናኘት ስለ ዋይፋይ እና ስለአዳፍሬው መለያችን ጥቂት ዝርዝሮችን መሙላት አለብን ፣

ወደ config.h እንጓዝ ፣ እዚህ የሚከተሉትን ዝርዝሮች እንሞላለን-

የእርስዎ የአዳፍሮት ተጠቃሚ ስም ፦

#IO_USERNAME “joopert” ን ይግለጹ

የእርስዎ የአዳፍሮት ቁልፍ -

#ጥራት IO_KEY "1234567890abcdefghijklmnop"

የእርስዎ WiFi ስም ፦

#WIFI_SSID “MyWifi” ን ይግለጹ

እና የእርስዎ የ WiFi ይለፍ ቃል ፦

#WIFI_PASS “aVerySecretPassword” ን ይግለጹ

አሁን ወደ adafruitio_21_feed_read ትር እንመለስ እና እንሞላ

የእርስዎ የአዳፍሮት ተጠቃሚ ስም… እንደገና ፦

#FEED_OWNER “joopert” ን ይግለጹ

እና በመጨረሻም የእርስዎ የመጠሪያ ስም (በደረጃ 1 ካደረግነው ምግብ)

AdafruitIO_Feed *sharedFeed = io.feed ("ሰዓት ቆጣሪ" ፣ FEED_OWNER) ፤

ደረጃ 6 - ከአዳፍሬዝ አይኦ ጋር ያለውን ግንኙነት ይፈትሹ

ወደ Adafruit IO ያለውን ግንኙነት ይፈትሹ
ወደ Adafruit IO ያለውን ግንኙነት ይፈትሹ

ከዚህ በፊት የወሰድናቸው እርምጃዎች በትክክል መፈጸማቸውን ለመፈተሽ የእኛን ንድፍ ወደ ኖድኤምሲዩ እንሰቅላለን። ተከታታይ ሞኒተርዎን ከከፈቱ ፣ ከዚህ በላይ ያለውን ስዕል የሚመስል ነገር መሆን አለበት። መጀመሪያ ተከታታይ ሞኒተር ከእርስዎ WiFi እና ከአዳፍ ፍሬው ጋር ለመገናኘት እየሞከረ መሆኑን እያሳየዎት ነው። ይህ ከተጠናቀቀ እንዲህ ማለት አለበት

Adafruit IO ተገናኝቷል

ይህ ታላቅ ዜና ነው! አሁን በእኛ ሰዓት ቆጣሪ ላይ ተግባራዊነትን ማከል መጀመር እንችላለን…

ደረጃ 7 - ኤልኢዲ እንዲኖር ያድርጉ

ኤል.ዲ
ኤል.ዲ
ኤል.ዲ
ኤል.ዲ

የእኛን LED ስትሪፕ ለማብራት ጊዜው አሁን ነው!

የኤልዲኤፍ ስትሪፕዎን ከ D5 ፒን ጋር ያገናኙ (D5 ን ማግኘት ካልቻሉ ከሌላ ፒን ጋር ያገናኙት እና በኮድ ውስጥ LED_PIN ን ይለውጡ)።

የ LED ስትሪፕን ይግለጹ

የሚከተለው ኮድ የ NeoPixel ቤተ-መጽሐፍትን ያክላል (እዚህ ስለዚህ ቤተ-መጽሐፍት የበለጠ ይወቁ https://learn.adafruit.com/adafruit-neopixel-uberguide/arduino-library-use) እና የእኛ አርዱኢኖ የእኛ የ LED ስትሪፕ የት እንዳለ እና እንደሚያውቅ ያረጋግጡ። ምን ያህል መብራቶች አሉት። የእርስዎ የ LED ስትሪፕ የተለያዩ ዝርዝሮች ካሉት በኮዱ ውስጥ ይለውጡት።

ከባዶ ማዋቀር () በላይ የሚከተለውን ኮድ ያክሉ

// ያዋቅሩ የ NeoPixel ግንኙነት ##ifdef _AVR_ #ያካትቱ #endif

#መግለፅ LED_PIN D5 // የ LED ስትሪፕ የት ተገናኝቷል?

#ጥራት LED_COUNT 30 // ስንት ፒክሰሎች አሉት?

#ጥርት ያለ ብሩህነት 50 // ኒኦፒክስል ብሩህነት ፣ 0 (ደቂቃ) እስከ 255 (ከፍተኛ)

Adafruit_NeoPixel strip (LED_COUNT ፣ LED_PIN ፣ NEO_GRB + NEO_KHZ800);

የ LED ስትሪፕን ይጀምሩ

አሁን የእኛን የ LED ንጣፍ እንጀምራለን እና ብሩህነትን እናስቀምጣለን (ብሩህነት ከ 0 ደቂቃ እስከ 255 ቢበዛ ይሄዳል ፣ ግን እኔ እመክራለሁ 50… 255 በእውነቱ ብሩህ ነው)።

በባዶ ማዋቀር () ውስጥ የሚከተለውን ኮድ ያክሉ

strip.begin (); // መጀመሪያ ኒኦፒክስል ስትሪፕ ነገር (ተፈላጊ) strip.show (); // ሁሉንም ፒክስሎች ያጥፉ ASAP strip.set ብሩህነት (50); // ብሩህነትን ወደ 1/5 (ከፍተኛ = 255) ያዘጋጁ

ledsOn (); // እያንዳንዱን ኤልኢዲ አንድ በአንድ ለማብራት ተግባሩን ይጠራል

መብራቶቹን ያብሩ

ምናልባት እኛ ገና ያልኖረውን ፣ ያ ቀጣዩ የኮድ ክፍላችን የሆነውን ተግባር እየጠራን መሆኑን አስቀድመው አስተውለው ይሆናል። እኛ መብራቶቻችንን ማብራት ከፈለግን እያንዳንዱን ኤልኢዲ (LED) አንድ በአንድ የሚያበራ ‹ለሉፕ› መፍጠር አለብን (ለሉፕ ምን ማለት እንደሆነ አያውቁም? እዚህ ይመልከቱት ፦ www.arduino.cc/reference/ en/ቋንቋ/መዋቅር/ቁጥጥር-መዋቅር/ለ/)።

አሁን እኛ ተግባሩን እንፈጥራለን ledsOn ();

የሚከተለውን ኮድ ከዚህ በታች ባዶ ባዶ እጀታ () ያክሉ

ባዶነት ledsOn () {ለ (int i = 0; i <strip.numPixels (); i ++)) {// ለእያንዳንዱ ፒክሰል በስትሪ… strip.setPixelColor (i ፣ 0 ፣ 0 ፣ 255) ፤ // የፒክሰል ቀለሙን ወደ ሰማያዊ ስትሪፕ ያዘጋጁ። አሳይ (); // ለማዛመድ ስትሪፕን ያዘምኑ}}

ስቀል

አሁን አስደሳችው ክፍል ነው ፣ ኮዳችንን ወደ ኖድኤምሲዩ እንሰቅለው… ሁሉም ነገር በትክክል የሚሰራ ከሆነ የእርስዎ የ LED ንጣፍ አሁን ሙሉ በሙሉ ሰማያዊ መሆን አለበት!

ምንም ፒክሰሎች አይታዩም ?: ጥረዛውን ከትክክለኛው ፒን ጋር አገናኝተዋል? ወይም ምናልባት የበይነመረብ ግንኙነትዎ ጠፍቷል።

አንዳንድ ፒክሰሎች ብቻ አይታዩም ?: ትክክለኛውን የፒክሰሎች መጠን ካዘጋጁ ያረጋግጡ!

ደረጃ 8: ሰዓት ቆጣሪን ወደ ሰዓት ቆጣሪ ያክሉ

አሁን የእኛ ሰዓት ቆጣሪ በእውነቱ… ደህና… ጊዜዎች ፣ የሆነ ነገር መሆኑን እናረጋግጣለን።

ከአርዱዲኖ ጋር ጊዜን ለማከናወን የተለያዩ መንገዶች አሉ ፣ አንዱ መዘግየት () ፣ ይህ ለተወሰነ ጊዜ የቦርዳችንን ሂደት ያቆማል። በመዘግየቱ ወቅት የእኛ አርዱኢኖ በመሠረቱ ስለሚቀዘቅዝ እኛ ይህንን አንጠቀምም ፣ እና የእኛ ሰሌዳ በመደበኛነት እንዲዘምን እንፈልጋለን። ስለዚህ እኛ ሚሊስን () እንጠቀማለን ፣ ይህ በአርዱዲኖ ውስጥ ጊዜን ይበልጥ የሚያምር የአሠራር ዘዴ ነው ፣ በሚሊስ () አሁንም እኛ በየተወሰነ ጊዜ መካከል ኮድን ማካሄድ እንችላለን።

ይህ እንዴት እንደሚሰራ ፍላጎት ካለዎት ይህንን ጽሑፍ ማየት ይችላሉ-

ለሚሊ ()) ኮዱን እንጨምር።

ይህንን ኮድ ከባዶ ማዋቀር () በላይ አስቀምጥ

ያልተፈረመ ረጅም ቀዳሚ ሚሊሊስ = 0; // የመጨረሻውን ጊዜ ያከማቻል የ LED ስትሪፕ በዘመነ = 1000; // የጊዜ ቆጣሪችን (ሚሊሰከንዶች)

እና ይህንን ኮድ በባዶው loop () ውስጥ እናስቀምጠው-

ያልተፈረመ ረዥም የአሁኑ ሚሊሊስ = ሚሊስ ();// የጊዜ ቆጠራን ይጀምሩ ************************************************* ********* ከሆነ (currentMillis - previousMillis> = interval) {previousMillis = currentMillis;

// መጨረሻ የሰዓት ቆጠራ ********************************************* ***********

እኛ አሁን ያደረግነው ኤልኢዲዎችን ለማጥፋት የኤልዲአችን ስትራቴጂን መፍጠር ነበር ፣ በሚቀጥለው ደረጃ ያንን ለማድረግ ኮዱን እንጨምራለን።

ደረጃ 9: ቆጠራ

በዚህ ደረጃ - እያንዳንዱ ሰከንድ (ወይም ያዋቀሩት የትኛውም የጊዜ ክፍተት) ሁሉም ኤልኢዲዎቻችን እስኪጠፉ ድረስ አንድ ኤልኢዲ በማጥፋቱ መጨረሻ ላይ የምናጠፋውን ተግባር እናደርጋለን።

ከላይ 'ሊድስ' የሚባል 'int' እንፈጥራለን። ይህ በኋላ ምን ያህል ሊዶች አሁንም ማጥፋት እንዳለበት ለሰዓት ቆጣሪችን ይነግረናል።

ከባዶ ማዋቀር () በላይ የሚከተለውን ኮድ ያክሉ

int leds = LED_COUNT-1; // ምን ያህል ፒክሰሎች መብራት እንዳለባቸው ይናገራል

አሁን ተግባሩን ‘ሰዓት ቆጣሪ () ፤’ እንጨምር ፣ ይህ በየሰከንዱ መብራት ያጠፋል

የሚከተለውን ኮድ ከዚህ በታች ባዶውን ledsOn () ያክሉ

ባዶ ሰዓት ቆጣሪ () {strip.setPixelColor (leds, 0, 0, 0);

ከሆነ (leds> -1) {leds--; } ሌላ {blinkie (); }}

ሁሉም መብራቶች ከተቃጠሉ በኋላ ሰዓት ቆጣሪው እንደተከናወነ ለተጠቃሚው አንዳንድ ግብረመልስ መስጠት እንፈልጋለን። በ ‹ብልጭ ድርግም› () ፤’ ሰዓት ቆጣሪው ከተጠናቀቀ በኋላ ኤልዲዎቹ ቀይ ብልጭ ድርግም ይላሉ!

ከባዶ ማዋቀር () በላይ የሚከተለውን ኮድ ያክሉ

int blinkStatus = 1; // ብልጭ ድርግም ይላል (); የበለጠ ብርሃን መብራቱን ማብራት ወይም ማጥፋት አለበት

ባዶውን ሰዓት ቆጣሪ () ከዚህ በታች የሚከተለውን ኮድ ያክሉ

ባዶነት ብልጭ ድርግም () {ከሆነ (blinkStatus == 1) {

blinkStatus = 0; strip.clear (); } ሌላ {blinkStatus = 1; ለ (int i = 0; i <strip.numPixels (); i ++) {// ለእያንዳንዱ ፒክሰል በስትሪ… strip.setPixelColor (i ፣ 255 ፣ 0 ፣ 0) ፤ // የፒክሰል ቀለም (በራም ውስጥ) ስትሪፕ ያዘጋጁ። አሳይ (); // ለማዛመድ ስትሪፕን ያዘምኑ}}}}

በመጨረሻ በባዶ ቀለበታችን () ውስጥ ተግባሩን መጥራት አለብን ፣

በደረጃ 8 ላይ ያከልነውን የጊዜ ቆጣሪን ያስታውሱ? በዚህ መግለጫ ውስጥ የተግባር ሰዓት ቆጣሪውን () እንጠራዋለን ፤.

የሰዓት ቆጣሪ ዘይቤ አሁን እንደዚህ መሆን አለበት

// የጊዜ ቆጠራን ይጀምሩ ************************************************* *********

ከሆነ (currentMillis - previousMillis> = ክፍተት) {previousMillis = currentMillis; ሰዓት ቆጣሪ (); strip.show ();} // የመጨረሻ የጊዜ አቆጣጠር ************************************* *****************

አሁን ይህንን ኮድ ይስቀሉ!

አሁን የእርስዎ የኤልዲዲ ስትሪፕ 1 ሴኮንድን በየሰከንዱ ማጥፋት እና ሲጠናቀቅ ቀይ ብልጭ ድርግም ማለት አለበት…

አሁን ይህንን እናት አፍቃሪ በርቀት ቁጥጥር እናድርገው!

ደረጃ 10 - በርቀት ቁጥጥር የሚደረግበት ያድርጉት - ክፍል አንድ

በርቀት እንዲቆጣጠር ያድርጉት - ክፍል 1
በርቀት እንዲቆጣጠር ያድርጉት - ክፍል 1
በርቀት እንዲቆጣጠር ያድርጉት - ክፍል 1
በርቀት እንዲቆጣጠር ያድርጉት - ክፍል 1

የእኛ ሰዓት ቆጣሪ አለን ፣ ያ ሁሉ ጥሩ እና ደብዛዛ ነው ፣ ግን በስልክዎ በትክክል መቆጣጠር እንደሚችሉ ቃል ገብቻለሁ? ወደ የፕሮጀክታችን የመጨረሻ ደረጃ እንሂድ -ሰዓት ቆጣሪችንን በርቀት እንዲቆጣጠር ማድረግ።

አሁንም የእርስዎ የአድራፍ ፍሬ ትር ተከፍቷል? ወደ io.adafruit.com ለመመለስ እንጓዝ እና ወደ የጊዜ ቆጣሪ በይነገጽ ዳሽቦርድ እንሂድ እና አዲስ ብሎክ እንፍጠር - TOGGLE

  1. መቀያየሪያውን ከ TIMER ምግብ ጋር ያገናኙ
  2. የ ON እሴትን ወደ: 1 ያዘጋጁ
  3. የጠፋውን እሴት ወደ: 0 ያዘጋጁ

ይህ የሆነበት ምክንያት አዳፍሮው የጽሑፍ መረጃን ወደ ኖድኤምሲዩ አይልክም ፣ ግን ቁጥሮች ብቻ ነው።

ከፈለጉ የ Toggle ስም መስጠት ይችላሉ ፣ ምናልባት ፦ «አብራ/አጥፋ ማብሪያ»

አሁን ወደ አርዱዲኖ አይዲኢ እንመለስ

የእኛ ኮድ ወቅታዊ መሆኑን ለማረጋገጥ ፣ የእኛን ኮድ እንደገና እንሰበስብ።

መጫኑን ከጨረሰ በኋላ ተከታታይ ተቆጣጣሪውን ይክፈቱ እና ጥቂት ጊዜ በአዳፍ ፍሬሽ ዳሽቦርድ ላይ TOGGLE ን ይጫኑ። አሁን በእኛ ተከታታይ ማሳያ ውስጥ እንደዚህ ያለ ነገር ብቅ እያለ ማየት አለብን።

ተቀብሏል <- 0 ተቀብሏል <- 1 ተቀብሏል <- 0 ተቀብሏል <- 1 ተቀብሏል <- 0

ይህ ማለት በእውነቱ መቆጣጠሪያዎቻችንን ወደ NodeMCU መላክ እንችላለን ማለት ነው!

እነዚህ መልእክቶች የማይቀበሉዎት ከሆነ ፣ በእርስዎ config.h ውስጥ ያለው የእርስዎ የአዳፍሮት ውሂብ አሁንም ትክክል መሆኑን ያረጋግጡ።

ደረጃ 11 - በርቀት ቁጥጥር የሚደረግበት ያድርጉት - ክፍል II

አሁን የሚቀረን በተቀበሉን መቆጣጠሪያዎች አንድ ነገር ማድረግ ብቻ ነው።

ይህንን ለማድረግ እኛ ባዶ የጊዜ ዑደት () ውስጥ ከሆነ የጊዜ ቆጠራ ስርዓታችንን መለወጥ አለብን። ትንሽ.

እኛ ‹1› (ማለትም ማለት በርቷል) ከአዳፍ ፍሬ ከተቀበልን በኋላ ጊዜ ቆጣሪውን ብቻ መጀመር እንዳለበት ለኖድኤምሲዩ እንነግራለን።

መጀመሪያ አዳፍሩስ የሚልክልንን መረጃ እንሰበስብ

ከባዶ ማዋቀር () በላይ የሚከተለውን ኮድ ያክሉ

int adaData; // መረጃውን ይሰበስባል AdaFruit ይልካል

አሁን በእውነቱ ያንን ውሂብ እንሰበስብ

የሚከተለውን ኮድ ያክሉ በባዶ እጀታ መልዕክት () ውስጥ:

adaData = data-> toInt ();

የባዶነት ቀለበታችንን () እንለውጥ ፤

የሰዓት ቆጣሪ ዘይቤ አሁን እንደዚህ መሆን አለበት

// የጊዜ ቆጠራን ይጀምሩ ************************************************* ********* ከሆነ (currentMillis - previousMillis> = interval) {previousMillis = currentMillis; ከሆነ (adaData == 0) {Serial.println (“አልሄድም”); } ሌላ ከሆነ (adaData == 1) {ሰዓት ቆጣሪ (); } strip.show (); } // የመጨረሻውን የጊዜ አቆጣጠር ******************************************** ************

ኮድዎን ይጫኑ…

አሁን በአዳፍ ፍሬዝ ውስጥ መቀየሪያውን በመጠቀም ሰዓት ቆጣሪውን ማብራት እና ማጥፋት መቻል አለብዎት!

ደረጃ 12 - በዙሪያው ይጫወቱ! ጨርሰናል… ወይስ እኛ ነን?

አሁን ሙሉ በሙሉ የሚሰራ የርቀት ሰዓት ቆጣሪ ሊኖርዎት ይገባል! ያ ለእርስዎ ከሆነ ታዲያ ከዚህ ፕሮጀክት ጋር ስለመጡ እናመሰግናለን!

ትንሽ ረዘም ላለ ጊዜ ለመቀጠል ከፈለጉ ፣ በሚቀጥሉት ጥቂት ደረጃዎች ውስጥ ለጊዜ ቆጣሪችን ዳግም ማስጀመሪያ ቁልፍን እንጨምራለን!

ደረጃ 13 ፦ EXTRA: ቅጽበታዊ አዝራርን ይፍጠሩ

EXTRA: ቅጽበታዊ አዝራርን ይፍጠሩ
EXTRA: ቅጽበታዊ አዝራርን ይፍጠሩ

ወደ ዳሽቦርድችን እንመለስ። አሁን አዲስ ብሎክን እንደገና መፍጠር እንፈልጋለን።

  1. ቅጽበታዊ አዝራር ይፍጠሩ
  2. ከ ‹ሰዓት ቆጣሪ› ምግብ ጋር ያገናኙት
  3. የፕሬስ እሴቱን ወደ: 2
  4. የመልቀቂያ እሴቱን ያስወግዱ
  5. ጥሩ ቀለም ይስጡት!

በሚመች ሁኔታ ጊዜያዊው ቁልፍ ቀድሞውኑ ‹ዳግም አስጀምር› ተብሎ ተጠርቷል!

አንዴ ይህንን የማገጃ ሙከራ አንዴ ከፈጠሩ ፣ እርስዎ ከተቀበሉ አዝራሩ ይሠራል

ተቀብሏል <- 2

በእርስዎ ተከታታይ ማሳያ ውስጥ።

ይህን መልዕክት የማይመለከቱ ከሆነ ፣ ንድፉን እንደገና ለመስቀል ይሞክሩ

ደረጃ 14: EXTRA: የመልሶ ማስጀመሪያ ተግባሩን ያክሉ

የዳግም አስጀምር አዝራሩ ማንኛውንም ነገር ለማድረግ ሁሉንም ኤልኢዲዎችን ወደ መጀመሪያው ሁኔታ የሚመልስ ተግባር ማከል አለብን።

የሚከተለውን ኮድ ከዚህ በታች ባዶውን ብልጭ ድርግም () ያክሉ

ባዶነት እንደገና ማካሄድ () {leds = LED_COUNT; ledsOn (); }

አሁን የቀረን ነገር የእኛን ተግባር መጥራት ነው ፣ ለዚያም የ TIMER RYTHM ን ለመጨረሻ ጊዜ መለወጥ አለብን

የሰዓት ቆጣሪ ዘይቤ አሁን እንደዚህ መሆን አለበት

// የጊዜ ቆጠራን ይጀምሩ ************************************************* ********* ከሆነ (currentMillis - previousMillis> = interval) {previousMillis = currentMillis if (adaData == 0) {Serial.println ("አልሄድም"); } ሌላ ከሆነ (adaData == 1) {ሰዓት ቆጣሪ (); } ሌላ ከሆነ (adaData == 2) {እንደገና ይድገሙ (); } strip.show (); } // የመጨረሻውን የጊዜ አቆጣጠር ******************************************** ************

ኮድዎን ይጫኑ…

አሁን አዝራሩን በመጫን ሰዓት ቆጣሪውን ዳግም ማስጀመር መቻል አለብዎት!

የሚመከር: