Cuprins:
- Pasul 1: Piese utilizate
- Pasul 2: Codul
- Pasul 3: Pornirea circuitului
- Pasul 4: ULN2803
- Pasul 5: Adăugarea de sunet
- Pasul 6: Concluzie
Video: Lumini muzicale de zână: 6 pași (cu imagini)
2024 Autor: John Day | [email protected]. Modificat ultima dată: 2024-01-30 11:46
De IanCumming Urmărește mai multe de la autor:
Despre: Îmi place să fac lucruri de la rachete la electronice. Mai multe despre IanCumming »
Bun venit tuturor
Este aproape sezonul festiv și un număr de magazine au început să-și scoată decorațiunile festive, am crezut că este momentul potrivit pentru a construi niște lumini de zână muzicale!
Pasul 1: Piese utilizate
Voi folosi următoarele:
- 12 LED-uri
- 12 Rezistoare cu limitare de curent
- 1 ULN 2803 Darlington Transistor Array
- Unele fire Jumper
- Un difuzor piezo
- O pană de pâine și
- un Arduino
- Pentru a face șirul de lumini de zână am folosit 5 fire dintr-un cablu Ethernet
Pasul 2: Codul
// GLOBAL VARS int barTime = 1200; // 8/8 = 1000ms byte nrLEDS = 4; // 4 LED-uri de bază, puteți adăuga multe led-uri paralele de octeți = {3, 4, 5, 6}; byte speaker = 11; byte patternLength = 64; // model Lungime octet melodieLungime = 51; const byte song = {// 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}; // Structura este numărul de notă apoi // Lungimea notei în modelul octetului const al 8-lea = {// Datele modelului 0b0001, 0b0010, 0b0100, 0b1000, // Biți corespunzători Leds în matrice 0b0001, 0b0010, 0b0100, 0b1000, 0b0001, 0b0010, 0b0100, 0b1000, 0b0001, 0b0010, 0b0100, 0b1000, 0b1000, 0b1100, 0b0100, 0b0110, 0b0010, 0b0011, 0b0001, 0b1001, 0b1000, 0b1100, 0b0100, 0b01, 0b01, 0b01, 0b01 0b1010, 0b0101, 0b1010, 0b0101, 0b1010, 0b0101, 0b1010, 0b0101, 0b1010, 0b0101, 0b1010, 0b0101, 0b1010, 0b0101, 0b1100, 0b0011, 0b1100, 011, 011, 011, 011, 011, 011, 011, 011 0b0011, 0b1100, 0b0011, 0b1100, 0b0011,};
În primul rând îmi declar variabilele, cele interesante fiind Song and Pattern.
- Melodia stochează melodia; în acest caz este vorba de clopote Jingle.
- Modelul stochează pozițiile de pornire și oprire în biții valorilor din matrice.
Funcții personalizate
// FUNCȚII int noteToHz (int note) {// Conversia unei note Nr. la Freq float freq = 440 * (pow (1.059463094359, nota-21)); // -21 îți dă nota 1 la C3 (cred) return int (freq); // Rezultatele sunt corecte pentru 1hz} LED-uri void (octet PORT_X) {// Starea LED-ului de control pentru (int q = 0; q
Cele două funcții pe care le am vor face următoarele:
- Calculați frecvența pentru funcția de ton în buclă
- porniți sau opriți LED-urile în funcție de valoarea transmisă funcției
Funcția de configurare
void setup () {// setup OUTPUT pin pinMode (difuzor, OUTPUT); for (int t = 0; t <nrLEDS; t ++) {pinMode (leduri [t], OUTPUT); }}
În funcția de configurare am setat pinii necesari la OUTPUT.
Funcția Loop
void loop () {// Music Loop for (int t = 0; t <songLength; t ++) {// Note, Lungime și redați melodia int note = noteToHz (melodie [t * 2]); lungime int = ((melodie [(t * 2) +1] * barTime) / 8); ton (difuzor, notă, lungime - 50); // Lumini intermitente! lightLED-uri (model [t% patternLength]); întârziere (lungime); } // Silence Loop int randomSilence = random (1000, 5000); pentru (int t = 0; t
Am 2 bucle în funcția Main Loop. O buclă de melodie și o buclă de tăcere
Bucla melodiei va citi datele din matricea melodiei, va reda nota folosind funcția de ton
Bucla melodiei va,
- Citiți datele din matricea de melodii,
- Redați nota folosind funcția de ton atunci
- Aprindeți LED-urile, citind matricea de modele.
În bucla Silence
doar LED-urile sunt aprinse
Conectați Arduino și încărcați codul. (Apoi deconectați-l)
Pasul 3: Pornirea circuitului
Voi începe cu șirul de lumini
- Am folosit sârmă de la un cablu Ethernet și am lipit 3 LED-uri în paralel de patru ori, asigurându-mă că spațiuzi LED-urile în mod egal pe aproximativ 2 metri
- Am lipit Anodul fiecărui condus la un singur fir.
- Apoi, catodul fiecărui LED la 4 fire separate. Cu un rezistor desigur
- Am repetat acest proces de 3 ori pentru a obține un șir de 12 LED-uri și am pus știfturi la capătul celor 5 fire
Conectați șinele pozitive și de masă la panou
Pasul 4: ULN2803
Așezați cipul ULN2308 pe panou
ULN2308 este un cip cu matrice de tranzistoare; din fisa tehnica pe care o pot vedea
- Acel pin 1 este o intrare care activează pinul 18 „ON”
- Pinul 2 pornește 17. Etc.
- Pinul 9 este măcinat
- Conectați pinul 9 al cipului la șina de la sol
- Conectați șina pozitivă la o bandă terminală, o bandă deasupra pinului 18. (Veți vedea de ce într-un minut)
- Conectați pinul 1 al cipului la pinul 3 al Arduino
- 2 merge la 4
- 3 din cip merge la 5 și
- 4 merge la pinul 6 din Arduino
- Așezați șirul de LED-uri pe panoul de verificare. În cazul în care firul anod comun este conectat la banda conectată la 5 volți. Restul pinilor luminoase de zână ar trebui să meargă la pinul 18, 17, 16 și 15 al cipului.
Pasul 5: Adăugarea de sunet
- Conectați difuzorul Piezo între 2 benzi terminale
- Conectați polul negativ al elementului piezo la sol și
- Celălalt capăt al difuzorului la pinul 11
Pasul 6: Concluzie
Am un șir de lumini care vor reda aleatoriu clopotele pentru a-mi reaminti că este sezonul festiv.
Recomandat:
Suport pentru sticle muzicale care interacționează cu lumini reglabile: 14 pași
Suport pentru sticle cu interacțiune muzicală cu lumini reglabile: Cu ceva timp în urmă, un prieten de-al meu a comandat un inel cu LED de 16 biți cu care să se clatine și, în timp ce făcea acest lucru, a avut ideea să pună o sticlă deasupra acestuia. Când l-am văzut, am fost fascinat de aspectul luminii care luminează balonul și mi-am amintit de awes
Respirați: lumini de zână care se estompează într-un bloc de sticlă: 6 pași
Breathe: Fading Fairy Lights in a Glass Block: Pentru Crăciunul din acest an am decis să folosesc un bloc de sticlă, un controler PWM și câteva fire cu LED-uri de zână pentru a-i oferi soției mele un cadou colorat
Lumină simplă de noapte folosind lumini de zână: 3 pași (cu imagini)
Lumină de noapte simplă folosind lumini de zână: obișnuiam să folosesc bec de noapte simplu, dar apoi aveam niște lumini de zână uimitoare, m-am gândit de ce să nu le folosesc ca lumină de noapte? noaptea și cel mai important, vederea este uimitoare
Lumini muzicale de Crăciun DIY pentru începători cu Raspberry Pi: 12 pași (cu imagini)
Luminile muzicale DIY de Crăciun pentru începători cu Raspberry Pi: Astăzi, voi parcurge pașii pentru a folosi un pi zmeură pentru ca luminile de Crăciun să clipească cu muzică. Cu doar câțiva dolari de material suplimentar, vă îndrum spre transformarea luminilor obișnuite de Crăciun într-un spectacol de lumină pentru toată casa. Scopul pe care el
Lumini de Crăciun DIY setate pe muzică - Lumini de casă coregrafiate: 15 pași (cu imagini)
Luminile de Crăciun DIY setate pe muzică - Lumini de casă coregrafiate: Luminile de Crăciun DIY setate pe muzică - Lumini de casă coreografiate Acesta NU este un DIY pentru începători. Veți avea nevoie de o înțelegere fermă în ceea ce privește electronica, circuitul, programarea BASIC și inteligența generală despre siguranța electrică. Acest DIY este pentru o persoană cu experiență, așa că