Indholdsfortegnelse:
- Trin 1: Brugte dele
- Trin 2: Koden
- Trin 3: Start af kredsløbet
- Trin 4: ULN2803
- Trin 5: Tilføjelse af lyd
- Trin 6: Konklusion
Video: Musical Fairy Lights: 6 trin (med billeder)
2024 Forfatter: John Day | [email protected]. Sidst ændret: 2024-01-30 08:30
Af IanCummingFølg mere af forfatteren:
Om: Jeg kan godt lide at lave ting fra raketter til elektronik. Mere om IanCumming »
Velkommen alle sammen
Det er næsten juletid, og antallet af butikker er begyndt at slukke deres festlige dekorationer, jeg troede, at det var på det rigtige tidspunkt at bygge nogle musikalske eventyr!
Trin 1: Brugte dele
Jeg bruger følgende:
- 12 lysdioder
- 12 Strømbegrænsende modstande
- 1 ULN 2803 Darlington Transistor Array
- Nogle Jumper Wires
- En piezo -højttaler
- Et brødbræt og
- en Arduino
- For at lave rækken af eventyrlys brugte jeg 5 ledninger fra et Ethernet -kabel
Trin 2: Koden
// GLOBAL VARS int barTime = 1200; // 8/8 = 1000ms byte nrLEDS = 4; // 4 basis -LED'er, Du kan tilføje mange parallelle byte -leds = {3, 4, 5, 6}; byte højttaler = 11; byte mønsterlængde = 64; // mønster Længde byte songLength = 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}; // Strukturen er notenummer derefter // NoteLength i 8.s konst byte -mønster = {// Mønsterdata 0b0001, 0b0010, 0b0100, 0b1000, // Bits, der svarer til Leds in Array 0b0001, 0b0010, 0b0100, 0b1000, 0b0001, 0b0010, 0b0100, 0b1000, 0b0001, 0b0010, 0b0100, 0b1000, 0b1000, 0b1100, 0b0100, 0b0110, 0b0010, 0b0011, 0b0001, 0b1001, 0b1000, 0b1100, 0b0100, 0b110, 010, 0b, 0b1010, 0b0101, 0b1010, 0b0101, 0b1010, 0b0101, 0b1010, 0b0101, 0b1010, 0b0101, 0b1010, 0b0101, 0b1010, 0b0101, 0b1100, 0b0011, 0b1100, 0b0011, 0b1100, 0b1100, 0b0000 0b0011, 0b1100, 0b0011, 0b1100, 0b0011,};
Først erklærer jeg mine variabler, de interessante er sang og mønster.
- Sangen gemmer melodien; i dette tilfælde er det Jingle -klokker.
- Mønsteret gemmer positioner til og fra i bitene af værdierne i arrayet.
Tilpassede funktioner
// FUNKTIONER int noteToHz (int note) {// Konverter en note Nr. til Frequency float freq = 440 * (pow (1.059463094359, note-21)); // -21 giver dig note 1 ved C3 (I Think) return int (freq); // Resultaterne er nøjagtige til 1 hz} ugyldige lys -LED'er (byte PORT_X) {// Kontrollampes tilstand for (int q = 0; q
De to funktioner, jeg har, vil gøre følgende:
- Beregn frekvensen for tonefunktionen i sløjfen
- tænde eller slukke LED'erne afhængigt af værdien, der overføres til funktionen
Opsætningsfunktion
void setup () {// setup OUTPUT pins pinMode (højttaler, OUTPUT); for (int t = 0; t <nrLEDS; t ++) {pinMode (leds [t], OUTPUT); }}
I opsætningsfunktionen satte jeg de nødvendige ben til OUTPUT.
Sløjfe funktion
void loop () {// Music Loop for (int t = 0; t <songLength; t ++) {// Notes, Length and play melody int note = noteToHz (song [t * 2]); int længde = ((sang [(t * 2) +1] * barTime) / 8); tone (højttaler, note, længde - 50); // Blinkende lys! lightLED'er (mønster [t % patternLength]); forsinkelse (længde); } // Silence Loop int randomSilence = random (1000, 5000); for (int t = 0; t
Jeg har 2 sløjfer i Main Loop -funktionen. En sangsløjfe og en stilhedsløjfe
Sangløkken vil læse dataene fra sangmatrixen, afspille noden ved hjælp af tonefunktionen
Sangløkken vil,
- Læs dataene fra sangarrayet,
- Afspil noden ved hjælp af tonefunktionen derefter
- Tænd LED'erne, læsemønster array.
I Silence loop
kun LED'erne lyser
Sæt Arduino i og upload koden. (Tag derefter stikket ud)
Trin 3: Start af kredsløbet
Jeg vil starte med lysstrengen
- Jeg brugte ledning fra et Ethernet -kabel og lodde 3 lysdioder parallelt fire gange, og sørg for at placere lysdioderne jævnt over ca. 2 meter
- Jeg loddet anoden af hver ledning til en enkelt ledning.
- Derefter katoden for hver LED til 4 separate ledninger. Selvfølgelig med en modstand
- Jeg gentog denne proces 3 gange for at få en streng på 12 lysdioder, og jeg satte hovedstifter på enden af de 5 ledninger
Tilslut de positive og jordede skinner til brødbrættet
Trin 4: ULN2803
Læg ULN2308 -chippen på brødbrættet
ULN2308 er en transistor array -chip; fra databladet kan jeg se
- Denne pin 1 er en input, der tænder pin 18 "ON"
- Pin 2 tænder 17. Etc.
- Pin 9 er slebet
- Tilslut stiften 9 på chippen til jordskinnen
- Tilslut den positive skinne til en klemrække, en strimmel over pin 18. (Du vil se hvorfor om et minut)
- Slut pin 1 på chippen til pin 3 på Arduino
- 2 går til 4
- 3 af chippen går til 5 og
- 4 går til pin 6 i Arduino
- Placer LED -strengen på brødbrættet. Hvor den fælles anodetråd er forbundet til båndet forbundet til 5 volt. Resten af fairy light pins skulle gå til pin 18, 17, 16 og 15 i chippen.
Trin 5: Tilføjelse af lyd
- Tilslut Piezo -højttaleren mellem 2 klemmer
- Tilslut den negative pol af Piezo -elementet til jorden og
- Den anden ende af højttaleren til pin 11
Trin 6: Konklusion
Jeg har en stribe lys, der tilfældigt vil spille klingende klokker for at minde mig om, at det er jul.
Anbefalede:
Fairy Light Battery Saver: 8 trin (med billeder)
Fairy Light Battery Saver: CR2032 batterier er gode, men de holder ikke så længe, som vi gerne vil have, når vi kører LED " Fairy Light " Med feriesæsonen her besluttede jeg mig for at ændre et par 20 lysstrenge for at løbe ud af en USB -powerbank. Jeg søgte online og
Creative Switch Fairy Tree: 23 trin (med billeder)
Creative Switch Fairy Tree: Jeg vil vise dig, hvordan du opretter dette glødende eventyr. Kontakten er selve feen, og lysene tændes, hvis hun placeres på sit sted, og slukkes igen, hvis hun flyttes.TIP: Gløden ses ikke godt i lyset, så tænd det i
Træk vejret: Fading Fairy Lights i en glasblok: 6 trin
Træk vejret: Fading Fairy Lights in a Glass Block: Til jul i år besluttede jeg at bruge en glasblok, en PWM -controller og nogle LED fairy light -tråde for at give min kone en farverig gave
Musical Menorah (lavet med Arduino): 13 trin (med billeder)
Musical Menorah (lavet med Arduino): Chanukah kommer snart! Så jeg tænkte, at det ville være en god idé at lave et projekt vedrørende ferien. Jeg lavede denne fede Chanukah Menorah med en Arduino, der spiller en anden sang hver gang du ændrer natten ved at trykke på knappen. Lysdioderne
Fairy Juicing Cocktail Robot: 7 trin (med billeder)
Fairy Juicing Cocktail Robot: Dette projekt blev bygget til Roboexotica -konferencen i 2008 i Wien, Østrig, hvor det blev en førsteplads i kategorien drikkevarer. Sådan blev det lavet