Daftar Isi:
- Langkah 1: Bagian yang Digunakan
- Langkah 2: Kode
- Langkah 3: Memulai Sirkuit
- Langkah 4: ULN2803
- Langkah 5: Menambahkan Suara
- Langkah 6: Kesimpulan
Video: Lampu Peri Musikal: 6 Langkah (dengan Gambar)
2024 Pengarang: John Day | [email protected]. Terakhir diubah: 2024-01-30 09:58
Oleh IanCummingIkuti Lainnya oleh penulis:
Tentang: Saya suka membuat barang dari roket hingga elektronik. Selengkapnya Tentang IanCumming »
Selamat datang semuanya
Ini hampir musim perayaan dan sejumlah toko mulai memasang dekorasi pesta mereka, saya pikir ini adalah waktu yang tepat untuk membangun beberapa lampu peri musik!
Langkah 1: Bagian yang Digunakan
Saya akan menggunakan yang berikut ini:
- 12 LED
- 12 Resistor pembatas arus
- 1 ULN 2803 Array Transistor Darlington
- Beberapa Kabel Jumper
- Pembicara piezo
- Sebuah papan tempat memotong roti dan
- sebuah Arduino
- Untuk membuat rangkaian lampu peri saya menggunakan 5 kabel dari kabel Ethernet
Langkah 2: Kode
//VARS GLOBAL int barWaktu = 1200; // 8/8 = 1000ms byte nrLEDS = 4; // 4 LED Dasar, Anda dapat menambahkan banyak LED byte paralel = { 3, 4, 5, 6}; byte pembicara = 11; byte polaPanjang = 64; // panjang pola byte songLength = 51; const byte lagu = { // Jingle Bells Data 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 }; // Strukturnya adalah Nomor Catatan lalu // Panjang Catatan dalam pola byte ke-8 = { //Data Pola 0b0001, 0b0010, 0b0100, 0b1000, //Bit sesuai dengan Led di Array 0b0001, 0b0010, 0b0100, 0b1000, 0b0001, 0b0010, 0b0100, 0b1000, 0b0001, 0b0010, 0b0100, 0b1000, 0b1000, 0b1100, 0b0100, 0b0110, 0b0010, 0b0011, 0b0001, 0b1001, 0b1000, 0b1100, 0b0100, 0b0110, 0b0010, 0b0011, 0b0001, 0b 0b1010, 0b0101, 0b1010, 0b0101, 0b1010, 0b0101, 0b1010, 0b0101, 0b1010, 0b0101, 0b1010, 0b0101, 0b1010, 0b0101, 0b1100, 0b0011, 0b1100, 0b0011, 0b1100, 0b0011, 0b1100, 0b0011, 0b0011, 0b1100, 0b0011, 0b1100, 0b0011, 0b 0b0011, 0b1100, 0b0011, 0b1100, 0b0011, };
Pertama saya mendeklarasikan variabel saya, yang menarik adalah Lagu dan Pola.
- Lagu menyimpan nada; dalam hal ini adalah lonceng Jingle.
- Pola menyimpan posisi on dan off dalam bit nilai dalam array.
Fungsi Kustom
//FUNCTIONS int noteToHz(int note) { // Mengonversi Catatan Nr. ke Frekuensi float freq = 440 * (pow(1.059463094359, note-21)); // -21 memberi Anda catatan 1 di C3 (Saya pikir) return int(freq); // Hasil akurat hingga 1hz } void lightLEDs(byte PORT_X) { // Kontrol Status LED untuk (int q = 0;q
Dua fungsi yang saya miliki akan melakukan hal berikut:
- Hitung frekuensi untuk fungsi nada dalam loop
- nyalakan atau matikan LED tergantung pada nilai yang diteruskan ke fungsi
Fungsi Pengaturan
void setup() { //setup pin OUTPUT pinMode(speaker, OUTPUT); for(int t = 0; t < nrLEDS; t++){ pinMode(leds[t], OUTPUT); } }
Dalam fungsi pengaturan saya mengatur pin yang diperlukan ke OUTPUT.
Fungsi lingkaran
void loop() { // Music Loop for (int t = 0; t < songLength; t++) { // Notes, Panjang dan mainkan melodi int note = noteToHz(song[t * 2]); int panjang = ((lagu[(t * 2)+1] * barTime) / 8); nada(speaker, nada, panjang - 50); // Lampu Berkedip! lightLEDs(pattern[t % patternLength]); penundaan (panjang); } // Silence Loop int randomSilence = random(1000, 5000); untuk (int t = 0;t
Saya memiliki 2 loop dalam fungsi Main Loop. Loop lagu dan loop hening
Loop lagu akan membaca data dari larik lagu, memutar not menggunakan fungsi nada
Putaran lagu akan,
- Baca data dari larik lagu,
- Mainkan not menggunakan fungsi nada lalu
- Nyalakan larik pola pembacaan LED.
Dalam lingkaran Keheningan
hanya LED yang menyala
Colokkan Arduino dan unggah kodenya. (Kemudian cabut)
Langkah 3: Memulai Sirkuit
Saya akan memulai dengan rangkaian lampu
- Saya menggunakan kabel dari kabel Ethernet dan menyolder 3 LED secara paralel empat kali, memastikan untuk memisahkan LED secara merata sekitar 2 meter
- Saya menyolder Anoda masing-masing mengarah ke satu kabel.
- Kemudian Katoda masing-masing LED ke 4 kabel terpisah. Dengan resistor tentunya
- Saya mengulangi proses ini 3 kali untuk mendapatkan string 12 LED dan saya meletakkan pin header di ujung 5 kabel
Hubungkan rel Positif dan ground ke papan tempat memotong roti
Langkah 4: ULN2803
Tempatkan Chip ULN2308 ke papan tempat memotong roti
ULN2308 adalah chip array transistor; dari lembar data yang bisa saya lihat
- Pin 1 itu adalah input yang mengubah pin 18 "ON"
- Pin 2 menyalakan 17. Dll.
- Pin 9 di-ground
- Hubungkan Pin 9 chip ke ground rail
- Hubungkan rel positif ke strip terminal, satu strip di atas pin 18. (Anda akan melihat alasannya dalam satu menit)
- Hubungkan pin 1 chip ke pin 3 Arduino
- 2 pergi ke 4
- 3 dari chip menjadi 5 dan
- 4 masuk ke pin 6 Arduino
- Tempatkan string LED ke papan tempat memotong roti. Dimana kabel common anode dihubungkan ke strip yang terhubung ke 5 volt. Sisa pin cahaya peri harus masuk ke pin 18, 17, 16 dan 15 chip.
Langkah 5: Menambahkan Suara
- Hubungkan Speaker Piezo antara 2 strip terminal
- Hubungkan kutub negatif elemen Piezo ke ground dan
- Ujung lain dari speaker ke pin 11
Langkah 6: Kesimpulan
Saya memiliki untaian lampu yang secara acak akan memainkan jingle bells untuk mengingatkan saya bahwa ini adalah musim perayaan.
Direkomendasikan:
Penghemat Baterai Cahaya Peri: 8 Langkah (dengan Gambar)
Penghemat Baterai Cahaya Peri: Baterai CR2032 sangat bagus, tetapi tidak bertahan selama yang kita inginkan saat mengemudikan LED "Fairy Light" strings.Dengan Musim Liburan di sini, saya memutuskan untuk memodifikasi beberapa 20 string cahaya untuk menjalankan bank daya USB.Saya mencari secara online dan f
Sepatu MIDI Musikal: 5 Langkah (dengan Gambar)
Sepatu MIDI Musikal: Seperti banyak orang, saya sering menemukan diri saya secara tidak sadar mengetuk-ngetuk kaki saya, entah itu karena lagu atau karena kebiasaan gugup. Meski menyenangkan, saya selalu merasa ada sesuatu yang hilang. Kalau saja saya bisa memicu suara say, a
Bernapas: Memudar Lampu Peri di Blok Kaca: 6 Langkah
Bernapas: Lampu Peri Memudar di Blok Kaca: Untuk Natal tahun ini saya memutuskan untuk menggunakan blok kaca, pengontrol PWM, dan beberapa untaian lampu peri LED untuk memberi istri saya hadiah berwarna-warni
Cahaya Malam Sederhana Menggunakan Lampu Peri: 3 Langkah (dengan Gambar)
Lampu Malam Sederhana Menggunakan Lampu Peri: Saya dulu menggunakan bohlam malam sederhana, tetapi kemudian saya memiliki beberapa lampu peri yang menakjubkan, berpikir mengapa tidak menggunakannya sebagai lampu malam? Ini juga mencegah lampu dari bohlam mengganggu tidur jika saya bangun di malam hari dan yang paling penting pemandangannya luar biasa
Microwave Musikal (Proyek Arduino): 6 Langkah (dengan Gambar)
Microwave Musikal (Proyek Arduino): Ingin mengubah microwave membosankan Anda menjadi jukebox nuklir** supercharged* yang memainkan lagu sambil menyinari*** makanan pilihan Anda?!?* hype** iklan palsu *** lebih banyak salah iklanBaca terus.Untuk proyek ini, saya menggunakan Arduino UNO