Obsah:

Svetlá hudobnej víly: 6 krokov (s obrázkami)
Svetlá hudobnej víly: 6 krokov (s obrázkami)

Video: Svetlá hudobnej víly: 6 krokov (s obrázkami)

Video: Svetlá hudobnej víly: 6 krokov (s obrázkami)
Video: 6 letý chlapec se ztratil. Když ho našli, byli v šoku z toho, co leželo vedle něj... 2024, November
Anonim
Image
Image

Od IanCummingSledovať viac od autora:

Intervalometer Arduino
Intervalometer Arduino
Nielen hodinový časovač
Nielen hodinový časovač
Nielen hodinový časovač
Nielen hodinový časovač
Jeden pixelový teplomer
Jeden pixelový teplomer
Jeden pixelový teplomer
Jeden pixelový teplomer

O: Rád vyrábam veci od rakiet po elektroniku. Viac o IanCumming »

Vitajte všetci

Je takmer sviatočné obdobie a množstvo obchodov začalo vydávať svoje sviatočné ozdoby. Myslel som si, že je načase postaviť svetlá hudobných víl!

Krok 1: Použité diely

Použité diely
Použité diely

Budem používať nasledujúce:

  • 12 LED diód
  • 12 Rezistory obmedzujúce prúd
  • 1 ULN 2803 Darlingtonovo tranzistorové pole
  • Niektoré prepojovacie vodiče
  • Piezo reproduktor
  • Breadboard a
  • Arduino
  • Na výrobu reťaze rozprávkových svetiel som použil 5 drôtov z ethernetového kábla

Krok 2: Kód

// GLOBÁLNE VARS int barTime = 1200; // 8/8 = 1000ms byte nrLEDS = 4; // 4 základné LED diódy, môžete pridať mnoho paralelne bajtových LED = {3, 4, 5, 6}; bajtový reproduktor = 11; bajtový vzorDĺžka = 64; // vzor Dĺžka byte byteLength = 51; konštantná bajtová pieseň = {// 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}; // Štruktúra je číslo poznámky potom // NoteLength v 8 -tom konštantnom bajtovom vzore = {// Pattern Pattern 0b0001, 0b0010, 0b0100, 0b1000, // Bits corrispond to 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, 0b0110, 0b00 0b1010, 0b0101, 0b1010, 0b010, 0b00, 0b00, 0b00 0b0011, 0b1100, 0b0011, 0b1100, 0b0011,};

Najprv deklarujem svoje premenné, medzi zaujímavé patria pieseň a vzor.

  • Pieseň uchováva melódiu; v tomto prípade ide o rolničky.
  • Vzor ukladá polohy zapínania a vypínania do bitov hodnôt v poli.

Vlastné funkcie

// FUNKCIE int noteToHz (int note) {// Previesť poznámku č. na frekvenciu float freq = 440 * (pow (1,059463094359, poznámka-21)); // -21 vám dáva poznámku 1 na C3 (myslím) return int (freq); // Výsledky sú presné na 1 Hz} neplatné svetelné diódy LED (bajt PORT_X) {// Stav kontrolných LED pre (int q = 0; q

Dve funkcie, ktoré mám, budú vykonávať nasledovné:

  • Vypočítajte frekvenciu pre funkciu tónu v slučke
  • zapnite alebo vypnite LED diódy v závislosti od hodnoty odovzdanej funkcii

Funkcia nastavenia

void setup () {// nastavenie VÝSTUPNÝCH pinov pinMode (reproduktor, VÝSTUP); for (int t = 0; t <nrLEDS; t ++) {pinMode (leds [t], OUTPUT); }}

Vo funkcii nastavenia som nastavil požadované piny na VÝSTUP.

Funkcia slučky

void loop () {// Music Loop for (int t = 0; t <songLength; t ++) {// Notes, Length and play the melody int note = noteToHz (song [t * 2]); int dĺžka = ((skladba [(t * 2) +1] * barTime) / 8); tón (reproduktor, poznámka, dĺžka - 50); // Blikajúce svetlá! svetelné diódy LED (vzor [t % dĺžka vzoru]); oneskorenie (dĺžka); } // Tichá slučka int randomSilence = random (1000, 5000); pre (int t = 0; t

Vo funkcii Hlavnej slučky mám 2 slučky. Slučka piesní a tichá slučka

Slučka skladieb načíta údaje z poľa skladieb a prehrá notu pomocou funkcie tónu

Pieseň piesne bude,

  • Prečítajte si údaje z poľa skladieb,
  • Potom zahrajte notu pomocou funkcie tónu
  • Rozsvieťte diódy LED, pole vzorov čítania.

V slučke Ticho

rozsvietia sa iba LED diódy

Pripojte Arduino a nahrajte kód. (Potom ho odpojte)

Krok 3: Spustenie obvodu

Spustenie obvodu
Spustenie obvodu
Spustenie obvodu
Spustenie obvodu
Spustenie obvodu
Spustenie obvodu
Spustenie obvodu
Spustenie obvodu

Začnem so sériou svetiel

  • Použil som drôt z ethernetového kábla a štyrikrát som spájkoval 3 LED diódy paralelne, pričom som zaistil rovnomerné rozmiestnenie LED diód na približne 2 metre.
  • Spájkoval som anódu každej z nich na jeden drôt.
  • Potom katóda každej LED na 4 samostatné vodiče. Samozrejme s odporom
  • Tento postup som zopakoval 3 krát, aby som získal reťazec 12 diód LED, a na koniec 5 drôtov som dal kolíky záhlavia

Pripojte kladnú a uzemňovaciu koľajnicu k doštičke

Krok 4: ULN2803

ULN2803
ULN2803
ULN2803
ULN2803
ULN2803
ULN2803

Umiestnite čip ULN2308 na nepájivú dosku

ULN2308 je čip tranzistorového poľa; z technického listu vidím

  • Tento kolík 1 je vstup, ktorý prepína kolík 18 „ZAPNUTÝ“
  • Kolík 2 zapína 17. Atď.
  • Kolík 9 je uzemnený
  • Pripojte kolík 9 čipu k uzemňovacej lište
  • Pripojte kladnú lištu k svorkovnici, jeden prúžok nad kolík 18. (Za minútu uvidíte, prečo)
  • Pripojte kolík 1 čipu k kolíku 3 Arduina
  • 2 ide na 4
  • 3 z čipu ide na 5 a
  • 4 ide na pin 6 Arduina
  • Umiestnite reťazec LED na dosku na chlieb. Tam, kde je spoločný anódový vodič spojený s pásikom pripojeným na 5 voltov. Ostatné kolíky Fairy Light by mali ísť na pin 18, 17, 16 a 15 čipu.

Krok 5: Pridanie zvuku

Pridanie zvuku
Pridanie zvuku
  • Pripojte piezo reproduktor medzi 2 svorkovnice
  • Pripojte záporný pól prvku Piezo k zemi a
  • Druhý koniec reproduktora na kolíku 11

Krok 6: Záver

Záver
Záver
Záver
Záver

Mám reťaz svetiel, ktoré budú náhodne hrať na rolničky, aby mi pripomenuli, že je sviatočné obdobie.

Odporúča: