Talaan ng mga Nilalaman:
- Hakbang 1: Mga Ginamit na Bahagi
- Hakbang 2: Ang Code
- Hakbang 3: Pagsisimula ng Circuit
- Hakbang 4: Ang ULN2803
- Hakbang 5: Pagdaragdag ng Tunog
- Hakbang 6: Konklusyon
Video: Musical Fairy Lights: 6 Mga Hakbang (na may Mga Larawan)
2024 May -akda: John Day | [email protected]. Huling binago: 2024-01-30 13:15
Sa pamamagitan ng IanCummingMasunod Dagdag ng may-akda:
Tungkol sa: Gusto kong gumawa ng mga bagay-bagay mula sa mga rocket hanggang sa electronics. Karagdagang Tungkol sa IanCumming »
Maligayang Pagdating sa Lahat
Ito ay halos panahon ng pagdiriwang at ang bilang ng mga tindahan ay nagsimulang maglagay ng kanilang maligaya na dekorasyon, naisip ko na ito ay tungkol sa tamang oras upang bumuo ng ilang mga musikal na engkantada ilaw!
Hakbang 1: Mga Ginamit na Bahagi
Gagamitin ko ang sumusunod:
- 12 LED's
- 12 Kasalukuyang nililimitahan ang Mga Resistor
- 1 ULN 2803 Darlington Transistor Array
- Ilang Mga Jumper Wires
- Isang piezo Speaker
- Isang Breadboard at
- isang Arduino
- Upang makagawa ng string ng mga ilaw ng engkanto gumamit ako ng 5 mga wire mula sa isang Ethernet cable
Hakbang 2: Ang Code
// GLOBAL VARS int barTime = 1200; // 8/8 = 1000ms byte nrLEDS = 4; // 4 Base LEDs, Maaari kang magdagdag ng maraming mga parallel byte leds = {3, 4, 5, 6}; byte speaker = 11; byte patternLength = 64; // pattern Haba 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}; // The Structure is Note Number then // NoteLength in 8th's const byte pattern = {// Pattern Data 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, 010, 0b, 0b, 0b, 0b, 0 0b1010, 0b0101, 0b1010, 0b0101, 0b1010, 0b0101, 0b1010, 0b0101, 0b1010, 0b0101, 0b1010, 0b0101, 0b1010, 0b0101, 0b1100, 0b0011, 0b1100, 0b0011, 0b0011, 0b0011, 0b0011, 0b0011, 0b0010 0b0011, 0b1100, 0b0011, 0b1100, 0b0011,};
Una kong idineklara ang aking mga variable, ang mga kawili-wili sa pagiging Song at pattern.
- Iniimbak ng kanta ang tono; sa kasong ito ay ang Jingle bells.
- Ang pattern ay nag-iimbak sa at off posisyon sa mga piraso ng mga halaga sa array.
Mga Pasadyang Pag-andar
// FUNCTIONS int noteToHz (int note) {// convert a Note Nr. sa Frequency float freq = 440 * (pow (1.059463094359, note-21)); // -21 ay nagbibigay sa iyo ng tala 1 sa C3 (Sa Palagay Ko) ibalik ang int (freq); // Ang mga resulta ay tumpak sa 1hz} void lightLEDs (byte PORT_X) {// Control LED's State para sa (int q = 0; q
Ang dalawang pagpapaandar na mayroon ako ay gagawin ang sumusunod:
- Kalkulahin ang dalas para sa paggana ng tono sa loop
- i-on o i-off ang LED depende sa halagang ipinasa sa pagpapaandar
Pag-andar ng Pag-setup
void setup () {// setup OUTPUT pin pinMode (speaker, OUTPUT); para sa (int t = 0; t <nrLEDS; t ++) {pinMode (leds [t], OUTPUT); }}
Sa pag-andar ng pag-setup itinakda ko ang mga pin na kinakailangan upang OUTPUT.
Pag-andar ng Loop
void loop () {// Music Loop for (int t = 0; t <songLength; t ++) {// Mga Tala, Haba at i-play ang melody int note = noteToHz (kanta [t * 2]); int haba = ((kanta [(t * 2) +1] * barTime) / 8); tono (nagsasalita, tala, haba - 50); // Flashing Light! lightLEDs (pattern [t% patternLength]); antala (haba); } // Silence Loop int randomSilence = random (1000, 5000); para sa (int t = 0; t
Mayroon akong 2 mga loop sa pagpapaandar ng Main Loop. Isang loop ng kanta at isang loop ng katahimikan
Basahin ng loop ng kanta ang data mula sa hanay ng kanta, i-play ang tala gamit ang pagpapaandar ng tono
Ang loop ng kanta ay,
- Basahin ang data mula sa hanay ng kanta,
- Patugtugin ang tala gamit ang pag-andar ng tono pagkatapos
- Magaan ang LED, magbasa ng pattern ng array.
Sa Silence loop
ang mga LED lamang ang naiilawan
I-plug ang Arduino at i-upload ang code. (Pagkatapos i-unplug ito)
Hakbang 3: Pagsisimula ng Circuit
Magsisimula na ako sa mga string ng ilaw
- Gumamit ako ng kawad mula sa isang Ethernet cable at soldered 3 LED's sa parallel na apat na beses, tinitiyak na mailagay nang pantay ang LED sa halos 2 metro
- Inhinang ko ang Anode ng bawat isa na humantong sa isang solong kawad.
- Pagkatapos ang Cathode ng bawat LED sa 4 na magkakahiwalay na mga wire. Sa isang resistor syempre
- Inulit ko ang prosesong ito ng 3 beses upang makakuha ng isang string ng 12 LED's at inilagay ko ang mga pin ng header sa dulo ng 5 wires
Ikonekta ang Positive at ground rails sa breadboard
Hakbang 4: Ang ULN2803
Ilagay ang ULN2308 Chip sa breadboard
Ang ULN2308 ay isang transistor array chip; mula sa data sheet na nakikita ko
- Ang pin na 1 ay isang input na magpapasara sa 18 "PIN"
- Ang Pin 2 ay nagiging 17. Atbp
- Ang Pin 9 ay ground
- Ikonekta ang Pin 9 ng maliit na tilad sa ground rail
- Ikonekta ang positibong riles sa isang terminal strip, isang strip sa itaas ng pin 18. (Makikita mo kung bakit sa isang minuto)
- Ikonekta ang pin 1 ng maliit na tilad sa pin 3 ng Arduino
- 2 napupunta sa 4
- 3 ng maliit na tilad ay pupunta sa 5 at
- 4 ang papunta sa pin 6 ng Arduino
- Ilagay ang LED string sa breadboard. Kung saan ang karaniwang anode wire ay konektado sa strip na konektado sa 5 volts. Ang natitirang mga fairy light pin ay dapat pumunta sa pin 18, 17, 16 at 15 ng maliit na tilad.
Hakbang 5: Pagdaragdag ng Tunog
- Ikonekta ang Piezo Speaker sa pagitan ng 2 terminal strips
- Ikonekta ang negatibong poste ng elemento ng Piezo sa lupa at
- Ang kabilang dulo ng nagsasalita sa pin 11
Hakbang 6: Konklusyon
Mayroon akong isang string ng ilaw na sapalarang maglalaro ng mga kampanilya ng jingle upang ipaalala sa akin na ito ay ang maligaya na panahon.
Inirerekumendang:
Fairy Light Battery Saver: 8 Hakbang (na may Mga Larawan)
Fairy Light Battery Saver: Ang mga baterya ng CR2032 ay mahusay, ngunit hindi ito tumatagal hangga't nais namin kapag nagmamaneho ng LED " Fairy Light " mga kuwerdas. Sa Holiday Season dito, nagpasya akong baguhin ang ilang 20 light strings upang maubusan ng isang USB power bank. Naghanap ako online at f
Creative Switch Fairy Tree: 23 Hakbang (na may Mga Larawan)
Creative Switch Fairy Tree: Ipapakita ko sa iyo kung paano likhain ang kumikinang na fairy tree na ito. Ang switch ay ang diwata mismo, at ang mga ilaw ay bubuksan kung siya ay inilagay sa kanyang lugar, at patayin muli kung siya ay inilipat. TIP: Ang glow ay hindi nakikita nang mabuti sa ilaw, kaya't i-on ito sa
Simpleng Light ng Gabi Gamit ang Mga Fairy Light: 3 Hakbang (na may Mga Larawan)
Simple Night Light Gamit ang Fairy Lights: Gumagamit ako dati ng simpleng bombilya, ngunit pagkatapos ay mayroon akong kamangha-manghang mga ilaw ng engkantada, naisip kung bakit hindi ko gamitin ito bilang ilaw sa gabi? Pinipigilan din nito ang ilaw mula sa bombilya upang makagambala sa pagtulog kung ako ay bumangon sa gabi at higit sa lahat ang kamangha-manghang tanawin.
DIY Musical Xmas Lights para sa Mga Nagsisimula Sa Raspberry Pi: 12 Hakbang (na may Mga Larawan)
Mga DIY Musical Xmas Lights para sa Mga Nagsisimula Sa Raspberry Pi: Ngayon, dadaan ako sa mga hakbang upang magamit ang isang raspberry pi upang makuha ang iyong mga ilaw sa Pasko na kumikislap sa musika. Sa pamamagitan lamang ng ilang mga pera ng labis na materyal, nilalakad kita sa pamamagitan ng pag-convert ng iyong regular na mga ilaw ng Pasko sa isang buong-bahay na light show. Ang layunin na
Fairy Juicing Cocktail Robot: 7 Hakbang (na may Mga Larawan)
Fairy Juicing Cocktail Robot: Ang proyektong ito ay binuo para sa kumperensya noong Roboexotica noong 2008 sa Vienna, Austria kung saan nagtali ito sa kategoryang naghahain ng inumin. Narito kung paano ito ginawa