ዝርዝር ሁኔታ:

አርዱዲኖ ፒያኖ 3 ደረጃዎች
አርዱዲኖ ፒያኖ 3 ደረጃዎች

ቪዲዮ: አርዱዲኖ ፒያኖ 3 ደረጃዎች

ቪዲዮ: አርዱዲኖ ፒያኖ 3 ደረጃዎች
ቪዲዮ: የአርዱብሎክ መተግበሪያን በመጫን ላይ 2024, ሰኔ
Anonim
አርዱዲኖ ፒያኖ
አርዱዲኖ ፒያኖ

ይህ “ፒያኖ” የእውነተኛ ፒያኖን አንድ ኦክታቭ መጫወት ይችላል። የአዝራሮች መጫን በፒያኖ ላይ ቁልፍን መጫን ይወክላል። ድምፁ በፓይዞ ተናጋሪ በኩል ይተላለፋል።

ደረጃ 1: ቁሳቁሶች

1. አርዱዲኖ ኡኖ

2. የዩኤስቢ ሽቦ

3. 3 ዳቦ ሰሌዳዎች

4. 8 ushሽቦተኖች

5. 8 100 Ohm resistors

6. "ፒዬዞ" ተናጋሪ

7. ብዙ የወንድ ሽቦዎች (ወደ 20 ገደማ)

8. የብረት ብረት

ደረጃ 2 - ቅንብሩን ይገንቡ

ቅንብሩን ይገንቡ
ቅንብሩን ይገንቡ

በአርዱዲኖ ውስጥ እያንዳንዳቸው ወደ 8 የተለያዩ ፒኖች በመግባት 8 ቁልፎችን ይገንቡ ፣ እያንዳንዱን ተከላካይ በመጨመር እና ከመሬት ጋር በማገናኘት (የወንድ ሽቦዎችን በመጠቀም)።

ድምጽ ማጉያውን ከተሰየመው የአርዱዲኖ ፒን ፣ እና ሌላውን ጎን ወደ መሬት ያገናኙ። እንዳይወድቅ ሽቦዎቹን ወደ ተናጋሪው መሸጥ ይኖርብዎታል። ወደ ተናጋሪው የተሸጡት ሁለቱ ሽቦዎች እርስ በእርሳቸው እንዳይነኩ ያረጋግጡ።

ደረጃ 3 - ኮዱን መገንባት

#መለየት NOTE_B0 31 #ይግለጹ ማስታወሻ_ሲ 1 33 #ጥርት ያለ ማስታወሻ_ሲኤስኤስ 35 #ይግለጹ ማስታወሻ_ዲ 1 37 #ጥርት ያለ ማስታወሻ_DS1 39 #ጥርት ያለ ማስታወሻ_E1 41 #ጥርት ያለ ማስታወሻ_F1 44 #ጥርት ያለ ማስታወሻ_FS1 46 #ፍፁም ማሳሰቢያ_ጂ1 49 #ራዕይ_አይደገፍ_እስጢር_አይደለ 58 NOTE_B1 62 #define NOTE_C2 65 #define NOTE_CS2 69 #define NOTE_D2 73 #define NOTE_DS2 78 #define NOTE_E2 82 #define NOTE_F2 87 #define NOTE_FS2 93 #define NOTE_G2 98 #define NOTE_GS2 104 #define NOTE_A2 110 #define NOTE_AS2 117 #define NOTE_B2 123 #መለየት NOTE_C3 131 #ገላጭ ማስታወሻ_CS3 139 #ገላጭ ማስታወሻ_D3 147 #ጥርት ያለ ማስታወሻ_DS3 156 #ጥርት ያለ ማስታወሻ_E3 165 #ጥርት ያለ ማስታወሻ_F3 175 #ጥርት ያለ ማስታወሻ_FS3 185 #መግለፅን ያስታውሱ_G3 196 #ማጣቀሻውን #3_Efine #3_Efine_Efeine_Efine_Efine_Efine_Efine_Efine_Efine_Efine_Efine_Efine_Efine_Efine_Efine_Efine_Ef3 NOTE_C4 262 #ተጣራ ማሳሰቢያ_ሲኤስኤስ 277 #ጥርት ያለ ማስታወሻ_ዲ 4 294 #ጥርት ያለ ማስታወሻ_DS4 311 #ተጣራ NOTE_E4 330 #ጥርት ያለ ማስታወሻ_F4 349 #ጥርት ያለ ማስታወሻ_FS4 370 #ጥርት ያለ ማስታወሻ_እስከ_44_እውነት_እስጢር_እስጢር_እስጢር_እስጢር_እስጢር_እስጢር_እስጢር_እስጢር_እስጢር_4444444 #መ efine NOTE_CS5 554 #ተገለፀ ማስታወሻ_D5 587 #ጥርት ያለ ማስታወሻ_DS5 622 #ጥርት ያለ ማስታወሻ_E5 659 #ጥርት ያለ ማስታወሻ_F5 698 #ጥርት ያለ ማስታወሻ_FS5 740 #ጥርት ያለ ማስታወሻ_G5 784 #መግለፅን አይደለም_እስከ_88_እስከ_86_እስከ_88_እስከ_88_88Efine_Efine_Efine_Efine_Efine_Efine_EdE_E_E_E_E_E_E_E_E_E_E_E_E_E_E_EFI 1109 #ገላጭ ማስታወሻ_ዲ 6 1175 #መግለፅ ማስታወሻ_DS6 1245 #ጥርት ማስታወሻ_E6 1319 #ጥርት ያለ ማስታወሻ_F6 1397 #ጥርት ማስታወሻ_FS6 1480 #ጥርት ያለ ማስታወሻ_G6 1568 #ጥርት ያለ ማስታወሻ_GS6 1661 #ማጣቀሻውን_እስከ_እስከ_እስከ_76_እስከ_እዚህ_እዚህ NOTE_D7 2349 #define NOTE_DS7 2489 #define NOTE_E7 2637 #define NOTE_F7 2794 #define NOTE_FS7 2960 #define NOTE_G7 3136 #define NOTE_GS7 3322 #define NOTE_A7 3520 #define NOTE_AS7 3729 #define NOTE_B7 3951 #define NOTE_C8 4186 #define NOTE_CS8 4435 #define NOTE_D8 ለመበየን 4699 #ገላጭ ማስታወሻ_DS8 4978

እነዚህ “#ይገልፃል” የትኛው ድግግሞሽ የትኛው ማስታወሻ እንደሚሰራ ለተናጋሪው መናገር ነው

const int C = 2; const int D = 3; const int E = 4; const int F = 5; const int G = 6; const int A = 7; const int B = 8; const int C2 = 9; const int piezoPin = 10; int cState = 0; int dState = 0; int eState = 0; int fState = 0; int gState = 0; int aState = 0; int bState = 0; int c2State = 0;

የአርዲኖኖን ፒኖች ወደ አዝራሮች ይመድቡ። "cState, dState, eState, ወዘተ;" አዝራሩ ተጭኖ እንደሆነ የሚያስቀምጡ ተለዋዋጮች ናቸው። ሀ 0 ማለት አልተጫነም ፣ 1 ማለት ተጭኗል ማለት ነው።

ባዶነት ማዋቀር () {// አንድ ጊዜ ለማሄድ የማዋቀሪያ ኮድዎን እዚህ ያስገቡ - pinMode (10 ፣ OUTPUT) ፤ Serial.begin (9600); }

ባዶነት loop () {// በተደጋጋሚ ለማሄድ ዋናውን ኮድዎን እዚህ ያስቀምጡ - cState = digitalRead (C); dState = digitalRead (D); eState = digitalRead (ኢ); fState = digitalRead (F); gState = digitalRead (G); aState = digitalRead (ሀ); bState = digitalRead (ለ); c2State = digitalRead (C2);

የአዝራሩ ሁኔታ (ከተጫነ ወይም ካልተጫነ) በ “cState ፣ dState ፣ eState ፣ ወዘተ” ውስጥ ተቀምጧል።

ሀ 0 ማለት አልተጫነም ፣ 1 ማለት ተጭኗል ማለት ነው።

ከሆነ (cState == 1) {ቶን (piezoPin ፣ 131); } ሌላ {noTone (piezoPin) ፤} ከሆነ (dState == 1) {tone (piezoPin ፣ 147) ፤ } ሌላ {noTone (piezoPin) ፤} ከሆነ (eState == 1) {tone (piezoPin ፣ 165) ፤ } ሌላ {noTone (piezoPin) ፤} ከሆነ (fState == 1) {ቶን (piezoPin ፣ 175) ፤ } ሌላ {noTone (piezoPin) ፤} ከሆነ (gState == 1) {ቶን (piezoPin ፣ 196) ፤ } ሌላ {noTone (piezoPin) ፤} ከሆነ (aState == 1) {tone (piezoPin ፣ 220) ፤ } ሌላ {noTone (piezoPin) ፤} ከሆነ (bState == 1) {tone (piezoPin ፣ 247) ፤ } ሌላ {noTone (piezoPin) ፤} ከሆነ (c2State == 1) {tone (piezoPin ፣ 262) ፤ } ሌላ {noTone (piezoPin);}}

አንድ አዝራር ከተጫነ ሰርቪው የማረጋገጫ ድግግሞሹን (ማስታወሻ) እንዲጫወት ይነግረዋል። ተግባሩ

{noTone (piezoPin) ፤} አዝራሩ ምንም ለመጫወት ካልተጫነ ይነግራቸዋል። ስለዚህ አዝራሩ በተጫነ ቁጥር የተሰየመውን ማስታወሻ ያጫውታል።

የሚመከር: