ዝርዝር ሁኔታ:
ቪዲዮ: የገና ሙዚቃ የደስታ ብርሃን 4 ደረጃዎች
2024 ደራሲ ደራሲ: John Day | [email protected]. ለመጨረሻ ጊዜ የተሻሻለው: 2024-01-30 07:32
መልካም ገና! ከእርስዎ ጋር መስተጋብር ሊፈጥር የሚችል የገና ዛፍ እንዲኖርዎት ይፈልጋሉ?
ደረጃ 1 በዚህ ፕሮጀክት ውስጥ ያገለገሉ ነገሮች
የሃርድዌር ክፍሎች
- Seeeduino V4.2
- ቤዝ ጋሻ V2
- ግሮቭ - ሊስተካከል የሚችል የፒአር እንቅስቃሴ ዳሳሽ
- ግሮቭ - የጩኸት ዳሳሽ
- ግሮቭ - WS2813 RGB LED Strip Waterproof - 60 LED/m - 1m
የሶፍትዌር መተግበሪያዎች እና የመስመር ላይ አገልግሎቶች
አርዱዲኖ አይዲኢ
ደረጃ 2 የሃርድዌር ግንኙነት
የፒአር ዳሳሽ ፣ የጩኸት ዳሳሽ እና የ LED ን ወደ ቤዝ ጋልድ ወደብ D2 ፣ A0 እና D6 ያገናኙ። ቤዝ ጋሻውን ወደ ሴዱዲኖ ይሰኩት ፣ ሁሉም ተከናውኗል።
ደረጃ 3 የሶፍትዌር ፕሮግራም
ከዚህ በታች ያሉት ቤተ -ፍርግሞች ከፕሮግራሙ በፊት መጫን አለባቸው ፣ እባክዎን በእጅዎ ወደ አርዱዲኖ አይዲኢ ያውርዷቸው እና ያስመጡዋቸው ፦
- መሪ_ስትሪፕ
- MsTimer2
- አርዱዲኖ_ቪክተር
ኮዱን የበለጠ አጭር ለማድረግ ፣ እኛ ጠቅልለነዋል። CheerLight ክፍል የዚህ ፕሮጀክት የትግበራ ክፍል ነው።
የክፍል ትግበራ:: CheerLight
: ይፋዊ ትግበራ:: በይነገጽ:: IApplication {public: void setup (ባዶ); ባዶ ባዶ (ባዶ); ባዶነት setPIRSensorPin (uint8_t pin); ባዶ setLoudnessSensorPin (uint8_t pin); ባዶ ልኬት ዳሳሾች (ባዶ); ባዶ ለውጥ አኒሜሽን (ባዶ * አርግ); ባዶ ለውጥ ፍጥነት (ባዶ * አርግ); ባዶ ለውጥ ቀለም (ባዶ * አርግ); የማይንቀሳቀስ መተግበሪያ:: CheerLight * getInstance (ባዶ); የተጠበቀ: ሾፌር:: LEDStrip _ledStrip; ሾፌር:: PIRSensor _pirSensor; ሾፌር:: LoudnessSensor _loudnessSensor; uint8_t _animation; middleware:: ውክልና _ ተገኝቷል ዲሌጌት; middleware:: ውክልና _absoluteLoudnessDelegate; መካከለኛ ዕቃዎች:: ውክልና _ ዘመድ ሎድነት ወኪል; CheerLight (ባዶ); የማይንቀሳቀስ መተግበሪያ:: CheerLight _instance; };
የ CheerLight ክፍል በ Singleton Patterns የተነደፈ ፣ ይህ ማለት ለእሱ አንድ ምሳሌ ብቻ አለ ፣ ለዚያ ምሳሌ CheerLight:: getInstance () ን መደወል ይችላሉ። የእርስዎ ዳሳሾች ግንኙነት ወደ ሃርድዌር ግንኙነት ልዩነት ከሆነ ፣ በ setPIRSensorPin () እና በ setLoudnessSensorPin () ዘዴዎች በመደወል መለወጥ ይችላሉ።
አነፍናፊዎችን በወቅቱ እንዲለካ ለማድረግ የመለኪያ ሴንሰሮችን () ዘዴን እንዲያቋርጡ እንመክራለን ፣ ነገር ግን ለውጥ አኒሜሽን () ፣ ለውጥ ፍጥነት () ወይም የለውጥ ቀለም () ዘዴዎችን በእጅ መጥራት አስፈላጊ አይደለም። ዳሳሾች በሚለኩበት ጊዜ በልዑካን በኩል ይጠራሉ።
ልዑክ ምንድን ነው?
ሁላችንም እንደምናውቀው የተግባር ጠቋሚ ማወጅ እና በ C ውስጥ ያለውን ተግባር እንዲያመላክት ማድረግ እንችላለን-
ባዶ func1 (ባዶ);
ባዶ (*pFunc) (ባዶ) = func1;
እና እሱ የጠቆመውን ተግባር ለመጥራት ይጠቀሙበት
pFunc ();
ግን በ C ++ ውስጥ ልዩነቶች አሉ ፣ ከዚህ በታች ያለውን ኮድ ለማጠናቀር ከሞከሩ
ክፍል ሀ {
የህዝብ: ባዶ func1 (ባዶ); }; ባዶ (*pFunc) (ባዶ) = & ሀ:: func1;
አጠናቃሪው አንድ ዓይነት የመቀየሪያ ስህተት ሪፖርት ያደርጋል ፣ ትክክለኛው ምሳሌ እዚህ አለ
ባዶ (ሀ::*pFunc) (ባዶ) = & ሀ:: func1;
ያንን ዘዴ ለመጥራት ልንጠቀምበት ስንሞክር እንደገና ስህተት። ለዚያ ስህተት ምክንያቱ አንድ ነገር-ዘዴ በአንድ ነገር መጠራት አለበት። ስለዚህ እሱን ለመጥራት አንድ ነገር እንፈጥራለን-
ሀ ሀ;
ሀ.*pFunc ();
በዚህ ጊዜ ምንም ችግር የለም። ስለዚህ በ Delegate.h ውስጥ የውክልና ክፍል አለ።
አብነት
class middleware:: ውክልና: የህዝብ መካከለኛ ዕቃዎች:: በይነገጽ:: ተወካይ {public: Delegate (T *object, ባዶ (ቲ:: *ዘዴ) (ባዶ *)); ባዶ ጥሪ (ባዶ * አርግ); የተጠበቀ - T * _object; ባዶ (ቲ:: *_ ዘዴ) (ባዶ *); }; አብነት የውስጥ መስመር middleware:: ውክልና:: ውክልና (ቲ *ነገር ፣ ባዶ (ቲ:: ባዶ * አርግ) {(_object-> * _ method) (args); }
የውክልና ክፍል የአብነት ክፍል ስለሆነ ፣ ይህ ማለት ውክልና የውክልና ልዩነት ነው ፣ እንዴት በጠቋሚው እንዲጠቆሙ ማድረግ አንድ ዓይነት አላቸው? መልሱ በይነገጽ ነው ፣ ስለዚህ በ IDelegate.h ውስጥ የ IDelegate በይነገጽ አለ።
class middleware:: interface:: IDelegate {
ይፋዊ - ምናባዊ ባዶ ጥሪ (ባዶ * አርግ) = 0; };
በፒአር ዳሳሽ እና የጩኸት ዳሳሽ ክፍል ውስጥ የልዑካን ጠቋሚን ለማከማቸት ያገለገሉ ተላላኪዎች (_delegates) የሚባል ተለዋዋጭ አለ ፣ እና ሁሉንም ልዑካን በ _ ተወካዮች ውስጥ ለመጥራት ያገለገለ (invokeAllDelegates) የሚባል ዘዴ አለ ፣ በመለኪያ () ዘዴ ይባላል።
ማሳሰቢያ-እንደ ለውጥAnimation () ፣ changeSpeed () እና changeColor () ያሉ የውክልና ዘዴዎች በሰዓት ቆጣሪ 2 ውስጥ ይጠራሉ ፣ ስለዚህ መዘግየትን () ወይም ሌላ በማቋረጥ ላይ የተመሠረተ ተግባር አይጠቀሙ።
የሚመከር:
ትንፋሽ የገና ዛፍ - አርዱዲኖ የገና ብርሃን መቆጣጠሪያ -4 ደረጃዎች
የገና ዛፍን መተንፈስ-የአርዱዲኖ የገና ብርሃን ተቆጣጣሪ-የእኔ የ 9 ጫማ ቅድመ-መብራት ሠራሽ የገና ዛፍ የመቆጣጠሪያ ሣጥን ከገና before በፊት መበላሸቱ እና አምራቹ ምትክ ክፍሎችን እንደማይሰጥ ጥሩ ዜና አይደለም። ይህ የማይታበል የእራስዎን የ LED መብራት ነጂ እና ተቆጣጣሪ አርን እንዴት እንደሚጠቀሙ ያሳያል
የልብ ሙዚቃ ምላሽ ሰጪ ብርሃን 7 ደረጃዎች
የልብ ሙዚቃ ምላሽ ሰጪ ብርሃን - ሂይ ጓደኛ ፣ ዛሬ እኔ ሙዚቃ በዚህ ወረዳ ዙሪያ ሲጫወት ከዚያ ኤልኢዲዎች እንደ ሙዚቃ የሚያበሩበትን የልብ ሙዚቃ ቀስቃሽ ብርሃን ወረዳ እሠራለሁ። እንጀምር ፣
ርካሽ ሙዚቃ አነቃቂ ብርሃን ማሳያ 22 ደረጃዎች (ከስዕሎች ጋር)
ርካሽ ሙዚቃ አነቃቂ ብርሃን ማሳያ - ይህ ሙዚቃ ቀልጣፋ የብርሃን ትርኢት ለማድረግ በጣም ቀላሉ መንገዶች አንዱ ነው! እሱ ከድምጽ ማጉያ በሚመጣ የድምፅ ሞገዶች የሚንቀሳቀስ አንጸባራቂ ድያፍራም/ሽፋን ተጠቅሞ የሌዘር ብርሃንን በማስተካከል ይሠራል። ሁለት አሉ በዚህ መመሪያ ውስጥ ስሪቶች እዚህ
የአዳራሽ ውጤት ዳሳሽ የገና ሙዚቃ ሣጥን 4 ደረጃዎች
የአዳራሽ ውጤት ዳሳሽ የገና ሙዚቃ ሣጥን - ይህ አንዴ ከተከፈተ ሙዚቃን የሚጫወት የሙዚቃ ሣጥን ነው (ቪዲዮውን ይመልከቱ!) ስጦታዎችዎን ለልዩ ሰው ለመጠቅለል በጣም ጥሩ ፣ ልዩ እና ልዩ መንገድ ነው! መግነጢሳዊ መስክ እጥረት በመኖሩ ክዳኑ ተከፍቶ እንደሆነ ለመፈተሽ የአዳራሽ ውጤት ዳሳሽ ይጠቀማል
UVIL: የጀርባ ብርሃን ጥቁር ብርሃን የሌሊት ብርሃን (ወይም የእንፋሎት ፓንክ አመልካች መብራት): 5 ደረጃዎች (ከስዕሎች ጋር)
UVIL: የጀርባ ብርሃን ጥቁር ብርሃን የሌሊት ብርሃን (ወይም የእንፋሎት ፓንክ አመላካች መብራት)-እጅግ በጣም የሚያብረቀርቅ የኒዮ-retropostmodern አልትራቫዮሌት አመላካች መብራትን እንዴት ማቀናጀት እንደሚቻል። ይህ በሌላ መመሪያ ውስጥ የተዘረዘሩትን የፒ.ሲ.ቢ የማጣበቅ ሂደትን ለመገምገም ያደረግኳቸውን የመጀመሪያዎቹን ሁለት ግንባታዎች ያሳያል። . የእኔ ሀሳብ እነዚህን እንደ እኔ መጠቀም ነው