Mündəricat:
- Addım 1: İstifadə olunan hissələr
- Addım 2: Kod
- Addım 3: Dövrənin Başlanması
- Addım 4: ULN2803
- Addım 5: Səs əlavə edin
- Addım 6: Nəticə
Video: Musiqili Pəri İşıqları: 6 addım (şəkillərlə)
2024 Müəllif: John Day | [email protected]. Son dəyişdirildi: 2024-01-30 07:48
Müəllif tərəfindən daha çox IanCummingFollow:
Haqqında: Raketdən elektronikaya qədər şeylər etməyi sevirəm. IanCumming haqqında daha çox »
Hərkəsə Xoş gəlmisiniz
Demək olar ki, şənlik mövsümüdür və bir çox mağaza bayram bəzəklərini çıxarmağa başladı, düşündüm ki, musiqili pəri işıqları qurmağın tam vaxtıdır!
Addım 1: İstifadə olunan hissələr
Aşağıdakıları istifadə edəcəyəm:
- 12 ədəd LED
- 12 Cari məhdudlaşdırıcı rezistorlar
- 1 ULN 2803 Darlington Transistor Dizisi
- Bəzi jumper telləri
- Piezo dinamik
- Çörək lövhəsi və
- bir Arduino
- Pəri işıqlarının simini düzəltmək üçün Ethernet kabelindən 5 tel istifadə etdim
Addım 2: Kod
// GLOBAL VARS int barTime = 1200; // 8/8 = 1000ms bayt nrLEDS = 4; // 4 Əsas LED, Paralel olaraq çoxlu bayt əlavə edə bilərsiniz = {3, 4, 5, 6}; bayt dinamik = 11; bayt modelLength = 64; // model Length byte songLength = 51; const bayt mahnısı = {// Jingle Bells Məlumatları 29, 2, 29, 2, 29, 4, 29, 2, 29, 2, 29, 4, 29, 2, 32, 2, 25, 3, 27, 1, 29, 8, 30, 2, 30, 2, 30, 3, 30, 1, 30, 2, 29, 2, 29, 2, 29, 1, 29, 1, 29, 2, 27, 2, 27, 2, 29, 2, 27, 4, 32, 4, 29, 2, 29, 2, 29, 4, 29, 2, 29, 2, 29, 4, 29, 2, 32, 2, 25, 3, 27, 1, 29, 8, 30, 2, 30, 2, 30, 2, 30, 2, 30, 2, 29, 2, 29, 2, 29, 1, 29, 1, 32, 2, 32, 2, 30, 2, 27, 2, 25, 8}; // Struktur Qeyd Nömrəsidir sonra // NoteLength 8 -ci const bayt modelində = {// Pattern Data 0b0001, 0b0010, 0b0100, 0b1000, // Bits 0b0001, 0b0010, 0b0100, 0b1000, 0b0001, 0b0010, 0b0100, 0b1000, 0b0001, 0b0010, 0b0100, 0b1000, 0b1000, 0b1100, 0b0100, 0b0110, 0b0010, 0b0011, 0b0001, 0b1001, 0b1000, 0b1100, 0b0100, 0b0100, 0b0100 0b1010, 0b0101, 0b1010, 0b0101, 0b1010, 0b0101, 0b1010, 0b0101, 0b1010, 0b0101, 0b1010, 0b0101, 0b1010, 0b0101, 0b1100, 0b0011, 0b0000, 0b1100, 0b1100, 0b0000 0b0011, 0b1100, 0b0011, 0b1100, 0b0011,};
Əvvəlcə dəyişənlərimi elan edirəm, ən maraqlısı mahnı və naxışdır.
- Mahnı melodiyanı saxlayır; bu halda Jingle zəngləridir.
- Nümunə, serialdakı dəyərlərin bitlərində açılma və sönmə mövqelərini saxlayır.
Xüsusi funksiyalar
// FUNKSİYALAR int noteToHz (int note) {// Nr. to Frequency float freq = 440 * (pow (1.059463094359, qeyd-21)); // -21, C3 -də 1 notu verir (Düşünürəm) return int (freq); // Nəticələr 1hz} boş işığı LEDləri (PORT_X bayt) {// Control LED -in vəziyyətini (int q = 0; q
Sahib olduğum iki funksiya aşağıdakıları edəcək:
- Döngədəki ton funksiyası üçün tezliyi hesablayın
- LED -in yandırılması və ya söndürülməsi funksiyaya verilən dəyərdən asılıdır
Quraşdırma funksiyası
void setup () {// setup OUTPUT pinləri pinMode (dinamik, Çıxış); for (int t = 0; t <nrLEDS; t ++) {pinMode (led [t], ÇIXIŞ); }}
Quraşdırma funksiyasında Çıxış üçün lazım olan pinləri təyin etdim.
Döngə funksiyası
void loop () {// Music Loop for (int t = 0; t <songLength; t ++) {// Notes, Uzunluq və melodiyanı çalın int note = noteToHz (mahnı [t * 2]); int uzunluğu = ((mahnı [(t * 2) +1] * barTime) / 8); ton (dinamik, qeyd, uzunluq - 50); // yanıb -sönən işıqlar! yüngül LEDlər (model [t % modelLength]); gecikmə (uzunluq); } // Silence Loop int randomSilence = təsadüfi (1000, 5000); üçün (int t = 0; t
Main Loop funksiyasında 2 döngəm var. Bir mahnı döngəsi və bir səssizlik döngəsi
Mahnı döngəsi mahnı serialındakı məlumatları oxuyacaq, ton funksiyasından istifadə edərək notu oxuyacaq
Mahnı döngəsi olacaq,
- Mahnı dizisindəki məlumatları oxuyun,
- Sonra ton funksiyasından istifadə edərək notu oxuyun
- LED -ləri işıqlandırın, oxu nümunəsi silsiləsini.
Səssizlik döngəsində
yalnız LEDlər yanır
Arduino'yu qoşun və kodu yükləyin. (Sonra ayırın)
Addım 3: Dövrənin Başlanması
İşıq tellərindən başlayacağam
- Ethernet kabelindən tel istifadə etdim və 4 LED -i paralel olaraq 4 dəfə lehimlədim ki, LED -ləri təxminən 2 metrdən bərabər şəkildə boşaldın
- Hər bir anodu tək bir telə lehimlədim.
- Sonra hər LED -in Katodunu 4 ayrı telə bağlayın. Əlbəttə ki, bir rezistorla
- 12 LEDdən ibarət bir sim almaq üçün bu prosesi 3 dəfə təkrar etdim və 5 telin ucuna baş pinləri qoydum.
Müsbət və yer raylarını çörək taxtasına qoşun
Addım 4: ULN2803
ULN2308 çipini çörək taxtasına yerləşdirin
ULN2308, tranzistorlu bir sıra çipidir; məlumat vərəqindən görə bilərəm
- Bu pin 1, pin 18 -i "ON" vəziyyətinə gətirən bir girişdir.
- 2 -ci pin 17 -yə çevrilir. Və s.
- Pin 9 zəmindir
- Çipin 9 -cu pinini yer rayı ilə bağlayın
- Müsbət rayı 18 -ci pindən yuxarı bir terminal zolağına bağlayın (Bunun səbəbini bir dəqiqədən sonra görəcəksiniz)
- Çipin 1 -ci pinini Arduinonun 3 -cü pininə qoşun
- 2 4 -ə gedir
- Çipdən 3 -ü 5 -ə gedir
- 4 Arduino 6 pininə gedir
- LED simini çörək taxtasına yerləşdirin. Ümumi anod telinin 5 volta qoşulmuş zolağa bağlandığı yer. Pəri işıq sancaqlarının qalan hissəsi çipin 18, 17, 16 və 15 -ci pinlərinə getməlidir.
Addım 5: Səs əlavə edin
- Piezo Dinamikini 2 terminal zolağı arasına bağlayın
- Piezo elementinin mənfi qütbünü yerə və qoşun
- Dinamikin digər ucu pin 11 -ə
Addım 6: Nəticə
Şənlik mövsümü olduğunu xatırlatmaq üçün təsadüfi olaraq zəng çalacaq bir işıq simim var.
Tövsiyə:
DIY Avtomatik Musiqili Milad İşıqları (MSGEQ7 + Arduino): 6 addım (şəkillərlə)
DIY Avtomatik Musiqili Milad İşıqları (MSGEQ7 + Arduino): Buna görə hər il bunu edəcəyimi deyirəm və çox vaxt təxirə saldığım üçün heç vaxt bunu etməyəcəyəm. 2020 dəyişiklik ilidir, buna görə də bunu edəcəyim il olduğunu söyləyirəm. Ümid edirik ki, xoşladığınız və öz musiqili Milad işıqlarınızı hazırlayacaqsınız. Bu s olacaq
İnteraktiv həyət işıqları, keçid işıqları: 3 addım
İnteraktiv həyət işıqları, keçid işıqları: Arxa həyətim üçün bir növ interaktiv həyət işıqları qurmaq istəyirdim. Fikir, kimsə bir tərəfə getdiyi zaman, getdiyin istiqamətdə bir animasiya quracaqdı. Dollar General 1.00 dollarlıq günəş işığı ilə başladım
Pəri işıqlarından istifadə edərək sadə gecə işığı: 3 addım (şəkillərlə)
Pəri İşıqlarından İstifadə Edilən Sadə Gecə İşığı: Əvvəllər sadə bir gecə lampası istifadə edirdim, amma sonra inanılmaz bir pəri işıqlarım var idi, niyə bunları gecə işığı kimi istifadə etməməyi düşünürdüm? gecə və ən əsası mənzərə heyrətamizdir
Raspberry Pi ilə yeni başlayanlar üçün DIY Musiqili Milad İşıqları: 12 addım (şəkillərlə)
Raspberry Pi ilə Başlayanlar üçün DIY Musiqili Xmas İşıqları: Bu gün Milad işıqlarınızın musiqi ilə yanıb -sönməsini təmin etmək üçün moruq pi istifadə etmək üçün addımlardan keçəcəyəm. Yalnız bir neçə dollar əlavə materialla, adi Milad işıqlarınızı bütün ev işıq şousuna çevirmək üçün sizə yol göstərirəm. Onun məqsədi
DIY Milad İşıqları Musiqiyə Quruldu - Xoreoqrafik Ev İşıqları: 15 Addım (Şəkillərlə)
DIY Milad İşıqları Musiqiyə Quruldu - Xoreoqrafiya Edilmiş Ev İşıqları: Musiqiyə Qurulan DIY Milad İşıqları - Xoreoqrafiya Edilmiş Ev İşıqları Bu yeni başlayan DIY deyil. Elektronika, dövrə, BASIC proqramlaşdırma və elektrik təhlükəsizliyi haqqında ümumi müdrikliklərə dair möhkəm bir anlayışa ehtiyacınız olacaq. Bu DIY təcrübəli bir adam üçündür, buna görə də