Mündəricat:
Video: Arduino Piano Düymə Açarları: 3 addım
2024 Müəllif: John Day | [email protected]. Son dəyişdirildi: 2024-01-30 07:45
Yaradan: Haotian Ye
Baxış
Bu, bir oktavanı (Do Mi Mi Fa So La Si Do) çalmağa imkan verən səkkiz düymə açarı olan bir piano lövhəsidir və bu bir oktava ilə bəyəndiyiniz mahnıları çalmağa cəhd edə bilərsiniz. Bu layihə üçün başlamazdan əvvəl bilməli olduğunuz bəzi vacib biliklər var.
Birincisi, bir pianonun əsas notlarının tezliklərini bilməliyik.
Tezliklər aşağıda verilmişdir:
Güc - 261Hz
Yenidən - 294Hz
Mi - 329Hz
Fa - 349Hz
Beləliklə - 392Hz
Güc - 440Hz
Si - 493Hz
Həcmi - 523Hz
İkincisi, Lee'nin Elektronik Mağazasından əldə edilə bilən hissələrdən istifadə edərək dövrəni necə quracağınızı sizə göstərəcəyəm. Nəhayət , Arduino lövhəsinə yüklənməli olan kodu təqdim edəcəyəm və izah edəcəyəm.
Ehtiyac duyacağınız hissələr:
Arduino Uno R3 (Məhsul ID: 10997)
USB A - B Kabel M/M (Məhsul ID: 29861)
10K Rezistor * 8 (Məhsul ID: 91516)
Tack Switch -in fərqli rəngləri * 8 (Məhsul ID: 3124, 31242, 31243, 31245, 31246)
Mini Dinamik (Məhsul ID: 41680)
Çörək paneli (Məhsul ID: 106861)
Jumper Telləri (Məhsul ID: 21801)
Addım 1: Adım 1: Dövrün Qurulması
Birincisi, bütün düymə açarlarını və mini hoparlörü çörək taxtasına bir -bir daxil edin və bir sıraya uyğunlaşdırın. Sonra hər bir düymə açarının sancaqlarını yerə bağlayın. İkincisi, müsbət güc və hər bir düymə açarının digər pinləri arasında 10k rezistoru bağlayın. Və bu sütunu Arduino lövhəsindəki 2-9 pinlərinə bağlayın. Ayrıca, zəmini topraklama pininə və müsbət gücü Arduino'daki 3.3v pininə bağlayın. Nəhayət, mini hoparlörü Arduino -dakı pin 10 -a bağlayın.
Addım 2: Adım 2: Kod və İzahat
Aşağıdakı kod yazdığımdır
const int black = 2;
const int white = 3;
const int red = 4;
const int yaşıl = 5;
const int mavi = 6;
const int black2 = 7;
const int green2 = 8;
const int red2 = 9;
const int speaker = 10; // Bütün düymə açarlarını və dinamikini arduino siqnal pinləri ilə bağlayın
int tezliyi = {262, 294, 330, 349, 392, 440, 493, 523}; // sıra bir oktavanın bütün tezliklərini ehtiva edir
boş quraşdırma () {
// bir dəfə işə salmaq üçün quraşdırma kodunuzu bura qoyun:
pinMode (qara, GİRİŞ);
pinMode (ağ, GİRİŞ);
pinMode (qırmızı, GİRİŞ);
pinMode (yaşıl, GİRİŞ);
pinMode (mavi, GİRİŞ);
pinMode (qara2, GİRİŞ);
pinMode (yaşıl2, GİRİŞ);
pinMode (qırmızı2, GİRİŞ);
pinMode (dinamik, Çıxış);
ton (dinamik, 2000);
Serial.begin (9600);
}
boşluq döngəsi () {
// əsas kodunuzu bura qoyun, təkrar işləsin:
əgər (digitalRead (qara) == LOW) // "DO" düyməsinə keçid düyməsini basdığınız zaman
{ton (dinamik, tezlik [0], 50);
gecikmə (50);
noTone (dinamik);}
başqa halda (digitalRead (ağ) == LOW) // "RE" düyməsinə keçidinə basdığınız zaman
{ton (dinamik, tezlik [1], 50);
gecikmə (50);
noTone (dinamik);}
başqa halda (digitalRead (qırmızı) == LOW) // "MI" düyməsinə keçid düyməsini basdığınız zaman
{ton (dinamik, tezlik [2], 50);
gecikmə (50);
noTone (dinamik);}
başqa halda (digitalRead (yaşıl) == LOW) // "FA" düyməsinə keçidinə basdığınız zaman
{ton (dinamik, tezlik [3], 50);
gecikmə (50);
noTone (dinamik);}
başqa halda (digitalRead (mavi) == LOW) // "SO" düyməsinə keçidinə basdığınız zaman
{ton (dinamik, tezlik [4], 50);
gecikmə (50);
noTone (dinamik);}
başqa halda (digitalRead (black2) == LOW) // "LA" düyməsinə keçid düyməsini basdığınız zaman
{ton (dinamik, tezlik [5], 50);
gecikmə (50);
noTone (dinamik);}
başqa halda (digitalRead (green2) == LOW) // "SI" düyməsinə keçid düyməsini basdığınız zaman
{ton (dinamik, tezlik [6], 50);
gecikmə (50);
noTone (dinamik);}
başqa halda (digitalRead (red2) == LOW) // "DO" düyməsinə keçid düyməsini basdığınız zaman
{ton (dinamik, tezlik [7], 50);
gecikmə (50);
noTone (dinamik);}
başqa // heç nə basmadığınız zaman
noTone (dinamik);
}
Birincisi, bütün düymələri və dinamikləri Arduino'da 2 ilə 10 arasında bir pin olaraq elan etməliyik. Hər keçid bir notu təmsil edir. Sonra, bütün frekansları daxil etmək üçün bir sıra istifadə edin. Sonra, If and else ifadəsi, Arduinoya hansı düyməni basdığımı bildirmək üçün istifadə etdiyim şeydir.
Nəhayət, Arduino lövhənizi kompüterə və ya dizüstü kompüterinizə usb A - B kabeli ilə bağlayın. Kodunuzu yükləməzdən əvvəl hələ də Arduino proqramını yükləməlisiniz və bir neçə standart parametr etməlisiniz. Alətlər -> Board -> Arduino/Genuino Uno seçin; Sonra Arduino lövhəsinə qoşulmuş ünsiyyət limanını seçməliyik. Alətlər -> Limanı seçin, sonra hansı liman adı "(Arduino/Genuino Uno) olaraq etiketlənirsə seçin. Sonra kodu Arduino lövhəsinə yükləyə bilərsiniz.
Tövsiyə:
RGB açarları olan universal USB klaviatura: 6 addım
RGB Anahtarlı Universal USB Klaviatura: Bu təlimatda sizə adi kompüter klaviaturası kimi davranan öz USB klaviaturanızı necə quracağınızı göstərəcəyəm. Yalnız bir düyməni basarkən istənilən düymə kombinasiyasını və ya düymələrin ardıcıllığını təyin edə bilərsiniz
Avtomobil Stereo Adaptörünün Sükan Açarları (CAN Bus -> Açar1): 6 addım
Avtomobil Stereo Adaptörünün Sükan Tuşları (CAN Bus -> Açar1): İstifadə olunmuş bir avtomobil aldıqdan bir neçə gün sonra telefon stereo vasitəsi ilə telefonumdan musiqi dinləyə bilməyəcəyimi kəşf etdim. Maşında bluetooth olması, ancaq musiqiyə deyil, yalnız səsli zənglərə icazə verilməsi daha da sinir bozucu idi. Windows Phone USB portu da var idi, amma mən
SONOFF Ağıllı Açarları ilə Ağıllı Pərdələri necə DIY etmək olar ?: 14 addım
SONOFF Smart Açarları ilə Ağıllı Panjurları Necə DIY etmək olar?: SONOFF ağıllı açarlarda kilidləmə rejimindən istifadə edərək adi pərdələrinizi/pərdələrinizi ağıllı hala gətirin Çoxlarınız bunun səhərlər pərdələri/pərdələri çəkdiyiniz bir iş olduğunu qəbul edəcəksinizmi? və axşam aşağı çəkin? Hər halda, mən
Dəstəklənməyən Qaraj Qapı Açarları ilə HomeLink -dən istifadə: 6 addım
Dəstəklənməyən Qaraj Qapı Açarları ilə HomeLink -dən istifadə: Mənzil binasında yaşayıram və bu yaxınlarda maşına ev bağlantısı quraşdırmışam. Təəssüf ki, mənə verdikləri qaraj pultu ev bağlantısını dəstəkləməyən bu maxSecure bağlantısından istifadə edir. Buna görə bir həll yolu tapmağa qərar verdim
Uzaqdan İdarəetmə ilə İşıqlandırıcı İşıqlar - Mövcud Divar Açarları İşini Davam Edir: 8 Addım
Uzaqdan İdarəetmə ilə İşıqlandırma İşıqları - Mövcud Divar Açarları İşini davam etdirin: 4 Oktyabr 2017 -ni Yeniləyin - Uzaqdan İdarə Edilən İşıq Açarına baxın - Yeniləşdirmə. İşıq Açarı Hələ Çalışır, Təkmilləşdirilmiş Bluetooth Aşağı Enerji (BLE) versiyası üçün Əlavə Yazı yoxdur. 8 Noyabr 2016 -cı il Yeniləndi - Yenilənmiş Fan Taymerləri layihəsində edilən dəyişikliklərlə yeniləndi