Orodha ya maudhui:

Taa za Fairy za Muziki: Hatua 6 (na Picha)
Taa za Fairy za Muziki: Hatua 6 (na Picha)

Video: Taa za Fairy za Muziki: Hatua 6 (na Picha)

Video: Taa za Fairy za Muziki: Hatua 6 (na Picha)
Video: MAIDS WAINGIA BILA VIATU UKUMBINI !! NA WANAVYOJUA KURINGA SASA! |GadsonAndSalome |MCKATOKISHA 2024, Novemba
Anonim
Image
Image

Na IanCumming Fuata Zaidi na mwandishi:

Intervalometer ya Arduino
Intervalometer ya Arduino
Sio Saa tu
Sio Saa tu
Sio Saa tu
Sio Saa tu
Kipimajoto cha Pixel moja
Kipimajoto cha Pixel moja
Kipimajoto cha Pixel moja
Kipimajoto cha Pixel moja

Kuhusu: Ninapenda kutengeneza vitu kutoka kwa roketi hadi umeme. Zaidi Kuhusu IanCumming »

Karibisha Kila Mtu

Ni karibu msimu wa sikukuu na idadi ya maduka imeanza kuweka mapambo yao ya sherehe, nilidhani kuwa ni wakati muafaka wa kujenga taa za hadithi za muziki!

Hatua ya 1: Sehemu Zilizotumiwa

Sehemu Zilizotumiwa
Sehemu Zilizotumiwa

Nitatumia yafuatayo:

  • 12 ya LED
  • Kizuizi cha sasa cha Resistors
  • 1 ULN 2803 Darlington Mpangilio wa Transistor
  • Baadhi ya waya za Jumper
  • Spika wa piezo
  • Bodi ya mkate na
  • Arduino
  • Ili kutengeneza kamba ya taa za hadithi nilitumia waya 5 kutoka kwa kebo ya Ethernet

Hatua ya 2: Kanuni

// GLOBAL VARS int barTime = 1200; // 8/8 = 1000ms byte nrLEDS = 4; // 4 za LED za Msingi, Unaweza kuongeza nyingi kwa visambamba vya baiti = {3, 4, 5, 6}; msemaji wa byte = 11; muundo wa baitiUrefu = 64; // wimbo wimbo wa urefu urefu byte = 51; wimbo wa const byte = {// 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}; // Muundo ni Nambari ya Kumbuka kisha // KumbukaLength katika muundo wa 8 wa const = {// Data ya Mfano 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, 0b01, 0, 0, 0, 0, 0 0b1010, 0b0101, 0b1010, 0b0101, 0b1010, 0b0101, 0b1010, 0b0101, 0b1010, 0b0101, 0b1010, 0b0101. 0b0011, 0b1100, 0b0011, 0b1100, 0b0011,};

Kwanza mimi hutangaza vigeuzi vyangu, zile za kupendeza ni Wimbo na Mfano.

  • Wimbo unahifadhi tune; katika kesi hii ni kengele za Jingle.
  • Mfano huhifadhi na kuzima nafasi kwenye bits za maadili katika safu.

Kazi za kawaida

// FUNCTIONS int noteToHz (maelezo ya ndani) {// Badilisha Nr. kwa Frequency kuelea freq = 440 * (pow (1.059463094359, kumbuka-21)); // -21 inakupa dokezo 1 katika C3 (Nadhani) kurudi int (freq); // Matokeo ni sahihi kwa 1hz} taa batili (byte PORT_X) {// Dhibiti Jimbo la LED la (int q = 0; q

Kazi mbili nilizo nazo zitafanya zifuatazo:

  • Hesabu masafa ya utendaji wa toni kwenye kitanzi
  • kuwasha au kuzima LED kulingana na thamani iliyopitishwa kwa kazi hiyo

Kazi ya Usanidi

kuanzisha batili () {// kuanzisha OUTPUT pini pinMode (spika, OUTPUT); kwa (int t = 0; t <nrLEDS; t ++) {pinMode (leds [t], OUTPUT); }}

Katika kazi ya usanidi nimeweka pini zinazohitajika kwa OUTPUT.

Kazi ya Kitanzi

kitanzi batili () {// Muziki wa Muziki wa (int t = 0; t <songLength; t ++) {// Vidokezo, Urefu na ucheze melody int note = noteToHz (wimbo [t * 2]); urefu wa int = ((wimbo [(t * 2) +1] * barTime) / 8); toni (spika, kumbuka, urefu - 50); // Taa zinazowaka! taa za mwangaza (muundo [t% muundoUrefu]); kuchelewesha (urefu); } // Kimya kimya int randomSilence = nasibu (1000, 5000); kwa (int t = 0; t

Nina vitanzi 2 katika kazi ya Kitanzi Kuu. Kitanzi cha wimbo na kitanzi cha ukimya

Kitanzi cha wimbo kitasoma data kutoka kwa safu ya wimbo, cheza dokezo ukitumia kazi ya toni

Kitanzi cha wimbo,

  • Soma data kutoka kwa safu ya wimbo,
  • Cheza dokezo ukitumia toni ya kazi hapo
  • Washa taa ya muundo wa kusoma wa LED.

Katika kitanzi cha Ukimya

LED tu zinawashwa

Chomeka Arduino na upakie nambari. (Kisha uiondoe)

Hatua ya 3: Kuanzisha Mzunguko

Kuanzia Mzunguko
Kuanzia Mzunguko
Kuanzia Mzunguko
Kuanzia Mzunguko
Kuanzia Mzunguko
Kuanzia Mzunguko
Kuanzia Mzunguko
Kuanzia Mzunguko

Nitaanza na kamba ya taa

  • Nilitumia waya kutoka kwa kebo ya Ethernet na kuuuza 3 LED kwa sambamba mara nne, kuhakikisha nafasi ya LED sawasawa juu ya mita 2
  • Niliuza Anode ya kila moja iliyoongozwa kwa waya moja.
  • Kisha Cathode ya kila LED kwa waya 4 tofauti. Kwa kupinga bila shaka
  • Nilirudia mchakato huu mara 3 kupata kamba ya 12 ya LED na niliweka pini za kichwa mwishoni mwa waya 5

Unganisha reli nzuri na za chini kwenye ubao wa mkate

Hatua ya 4: ULN2803

Mfumo wa ULN2803
Mfumo wa ULN2803
Mfumo wa ULN2803
Mfumo wa ULN2803
Mfumo wa ULN2803
Mfumo wa ULN2803

Weka Chip ya ULN2308 kwenye ubao wa mkate

ULN2308 ni chip ya safu ya transistor; kutoka kwa karatasi ya data ninaweza kuona

  • Pini 1 hiyo ni pembejeo ambayo inabadilisha pini 18 "ILIYO"
  • Pini 2 inawasha 17. Na kadhalika.
  • Pin 9 ni ardhi
  • Unganisha Pin 9 ya chip kwenye reli ya ardhini
  • Unganisha reli nzuri kwa ukanda wa terminal, ukanda mmoja juu ya pini 18. (Utaona ni kwa nini kwa dakika)
  • Unganisha siri 1 ya chip ili kubandika 3 ya Arduino
  • 2 huenda kwa 4
  • 3 ya chip huenda kwa 5 na
  • 4 huenda kubandika 6 ya Arduino
  • Weka kamba ya LED kwenye ubao wa mkate. Ambapo waya ya anode ya kawaida imeunganishwa na ukanda uliounganishwa na volts 5. Pini zilizobaki za taa za hadithi zinapaswa kwenda kubandika 18, 17, 16 na 15 ya chip.

Hatua ya 5: Kuongeza Sauti

Kuongeza Sauti
Kuongeza Sauti
  • Unganisha Spika ya Piezo kati ya vipande viwili vya terminal
  • Unganisha pole hasi ya kipengee cha Piezo ardhini na
  • Mwisho mwingine wa spika kubandika 11

Hatua ya 6: Hitimisho

Hitimisho
Hitimisho
Hitimisho
Hitimisho

Nina taa ya taa ambayo itacheza kengele za jingle kwa kunikumbusha kuwa ni msimu wa sherehe.

Ilipendekeza: