Mundarija:
- 1 -qadam: Ishlatilgan qismlar
- 2 -qadam: Kod
- 3 -qadam: davrani ishga tushirish
- 4 -qadam: ULN2803
- 5 -qadam: Ovoz qo'shish
- 6 -qadam: Xulosa
Video: Musiqiy ertak chiroqlari: 6 qadam (rasmlar bilan)
2024 Muallif: John Day | [email protected]. Oxirgi o'zgartirilgan: 2024-01-30 13:28
IanCummingFollow tomonidan Muallifning yana:
Haqida: Men raketadan elektronikaga qadar buyumlar yasashni yaxshi ko'raman. IanCumming haqida ko'proq ma'lumot »
Hammaga Xush kelibsiz
Bu deyarli bayram mavsumi va ko'plab do'konlar bayramona bezaklarini chiqara boshladilar, menimcha, musiqiy ertaklarni yoqish vaqti keldi!
1 -qadam: Ishlatilgan qismlar
Men quyidagilarni ishlataman:
- 12 ta LED
- 12 oqim cheklovli rezistorlar
- 1 ULN 2803 Darlington tranzistorli massiv
- Ba'zi jumper simlari
- Piezo karnay
- Non paneli va
- Arduino
- Ertak chiroqlarini yaratish uchun Ethernet kabelidan 5 ta sim ishlatilgan
2 -qadam: Kod
// GLOBAL VARS int barTime = 1200; // 8/8 = 1000ms bayt nrLEDS = 4; // 4 ta asosiy LED, Siz parallel ravishda ko'p baytli LEDlarni qo'shishingiz mumkin = {3, 4, 5, 6}; bayt dinamik = 11; bayt naqshLength = 64; // naqsh Length bayt songLength = 51; const bayt qo'shig'i = {// Jingle Bells ma'lumotlari 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}; // Struktura - bu eslatma raqami, keyin // NoteLength 8 -chi const bayt naqshida = {// Pattern Data 0b0001, 0b0010, 0b0100, 0b1000, // Bitlar 0b0001, 0b0010, 0b0100, 0b1000, 0b0001 qatoridagi Ledsga mos keladi. 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, 0b1100, 0b1100, 0b0000 0b0011, 0b1100, 0b0011, 0b1100, 0b0011,};
Birinchidan, men o'zgaruvchilarni e'lon qilaman, ularning eng qiziqlari qo'shiq va naqshdir.
- Qo'shiq ohangni saqlaydi; bu holda bu Jingle qo'ng'iroqlari.
- Naqsh qatordagi qiymatlarning bitlarida yoqish va o'chirish pozitsiyalarini saqlaydi.
Maxsus funktsiyalar
// FUNKSIYALAR int noteToHz (int note) {// Eslatmani Nr ga aylantiring. to Frequency float freq = 440 * (pow (1.059463094359, izoh-21)); // -21 sizga C3 da 1 -eslatmani beradi (Menimcha) return int (freq); // Natijalar 1 gigagertsli yorug'liksiz LEDlar (bayt PORT_X) {// Boshqarish LED holati uchun aniq (int q = 0; q
Menda mavjud bo'lgan ikkita funktsiya quyidagilarni bajaradi:
- Loopdagi ohang funktsiyasi uchun chastotani hisoblang
- funktsiyaga berilgan qiymatga qarab LEDni yoqing yoki o'chiring
O'rnatish funktsiyasi
void setup () {// sozlash OUTPUT pinlari pinMode (karnay, OUTPUT); uchun (int t = 0; t <nrLEDS; t ++) {pinMode (leds [t], OUTPUT); }}
O'rnatish funktsiyasida men kerakli pinlarni OUTPUT ga o'rnatdim.
Loop funktsiyasi
void loop () {// Music Loop for (int t = 0; t <songLength; t ++) {// Notes, Length va ohangni ijro etish int note = noteToHz (qo'shiq [t * 2]); int length = ((qo'shiq [(t * 2) +1] * barTime) / 8); ohang (karnay, eslatma, uzunlik - 50); // Yorqin chiroqlar! yorug'likli LEDlar (naqsh [t % patternLength]); kechikish (uzunlik); } // Silence Loop int randomSilence = tasodifiy (1000, 5000); uchun (int t = 0; t
Main Loop funktsiyasida 2 ta halqa bor. Qo'shiq va sukunat aylanishi
Qo'shiq tsikli qo'shiqlar majmuasidagi ma'lumotlarni o'qiydi, ohang funktsiyasidan foydalangan holda yozuvni ijro etadi
Qo'shiq aylanishi bo'ladi,
- Qo'shiqlar majmuasidagi ma'lumotlarni o'qing,
- Eslatmani ohang funksiyasi yordamida o'ynating
- LEDlarning o'qish chizig'ini yoqing.
Silence loopida
faqat LEDlar yonadi
Arduino -ni ulang va kodni yuklang. (Keyin ajratib oling)
3 -qadam: davrani ishga tushirish
Men chiroqlar qatoridan boshlayman
- Men Ethernet kabelidan sim ishlatardim va 3 LEDni to'rt marta parallel ravishda lehimladim, bu esa LEDni taxminan 2 metrga teng masofada joylashtirishga ishonch hosil qildi.
- Men har birining anodini bitta simga lehimladim.
- Keyin har bir LEDning katodini 4 ta alohida simga ulang. Albatta, qarshilik bilan
- Men 12 ta LEDni olish uchun bu jarayonni 3 marta takrorladim va 5 ta simning uchiga bosh pimlarini qo'ydim.
Pozitiv va tuproqli relslarni non paneliga ulang
4 -qadam: ULN2803
ULN2308 chipini non taxtasiga joylashtiring
ULN2308 - tranzistorli massiv chip; ma'lumotlar sahifasidan men ko'rishim mumkin
- Bu 1 -pin 18 -pinni "ON" ga aylantiradigan kirishdir.
- 2 -pin 17 ga aylanadi. Va boshqalar.
- 9 -pin erga ulangan
- Chipning 9 -pinini tuproqli temir yo'lga ulang
- Pozitiv temir yo'lni 18 -pin ustidagi bitta chiziqli terminalga ulang. (Buning sababini bir daqiqadan so'ng bilib olasiz)
- Chipning 1 -pinini Arduino -ning 3 -piniga ulang
- 2 4 ga o'tadi
- Chipning 3 tasi 5 ga o'tadi
- 4 Arduino 6 -piniga o'tadi
- LED chizig'ini non paneliga qo'ying. Qaerda umumiy anodli sim 5 voltga ulangan chiziqqa ulangan bo'lsa. Qolgan peri nuri pinlari chipning 18, 17, 16 va 15 -pinlariga o'tishi kerak.
5 -qadam: Ovoz qo'shish
- Piezo karnayini 2 ta terminal chizig'i orasiga ulang
- Piezo elementining salbiy qutbini erga ulang va
- Karnayning ikkinchi uchi 11 -pin
6 -qadam: Xulosa
Menda bayram chizig'i borligini eslatish uchun tasodifiy jiringlash qo'ng'iroqlarini o'ynaydigan yorug'lik simlari bor.
Tavsiya:
DIY avtomatik musiqiy Rojdestvo chiroqlari (MSGEQ7 + Arduino): 6 qadam (rasmlar bilan)
DIY avtomatik musiqiy Rojdestvo chiroqlari (MSGEQ7 + Arduino): Shunday qilib, men har yili shunday qilaman, deb aytaman va hech qachon bu ishni qilmayman, chunki men ko'p ishni kechiktiraman. 2020 - o'zgarish yili, shuning uchun men buni amalga oshirish yili deb aytaman. Umid qilamanki, sizga Rojdestvo chiroqlari yoqadi va o'zingiz yoqasiz. Bu s bo'ladi
Ijodiy kalit ertak daraxti: 23 qadam (rasmlar bilan)
Ijodiy kalit ertak daraxti: Men sizga bu porloq ertak daraxtini qanday yaratishni ko'rsataman. Kommutator - bu perining o'zi, va agar u joyiga qo'yilsa, chiroqlar yonadi, agar u qimirlatsa - yana o'chadi
Musiqiy reaktiv kayfiyat chiroqlari: 5 qadam (rasmlar bilan)
Musiqiy reaktiv kayfiyat chiroqlari: kirish va orqa fon. Birinchi kursda (2019 yil bahori), men yotoqxonamni bezatmoqchi edim. Men minigarnituramda tinglagan musiqaga javob beradigan o'z ruhiy chiroqlarimni yaratish g'oyasini oldim. Ochig'ini aytganda, menda alohida ilhom yo'q edi
Raspberry Pi bilan yangi boshlanuvchilar uchun DIY musiqiy Rojdestvo chiroqlari: 12 qadam (rasmlar bilan)
Raspberry Pi bilan yangi boshlanuvchilar uchun DIY musiqiy Rojdestvo chiroqlari: Bugun men Rojdestvo chiroqlarini musiqa bilan miltillash uchun malina pi ishlatish bosqichlarini o'taman. Bir necha dollarlik qo'shimcha materiallar bilan men sizga oddiy Rojdestvo chiroqlarini butun uy yorug'lik shousiga aylantirish bo'yicha maslahat beraman. Uning maqsadi
DIY Rojdestvo chiroqlari musiqaga o'rnatildi - Xoreografik uy chiroqlari: 15 qadam (rasmlar bilan)
DIY Rojdestvo chiroqlari musiqaga o'rnatildi - Xoreografik uy chiroqlari: DIY Rojdestvo chiroqlari musiqaga o'rnatildi - Xoreografiya qilingan uy chiroqlari Bu boshlang'ich DIY emas. Sizga elektronika, davriylik, BASIC dasturlash va elektr xavfsizligi haqida umumiy bilimlar kerak bo'ladi. Ushbu DIY tajribali odam uchun mo'ljallangan, shuning uchun