Arduino mūzikas melodiju ģeneratora shēma

Izmēģiniet Mūsu Instrumentu Problēmu Novēršanai





Šo mazo Arduino mūzikas melodiju ģeneratora shēmu varat izmantot vēlamam lietojumam, piemēram, lai izveidotu interesantu durvju zvanu, kā automašīnas reverso ragu vai mūzikas kasti kāda dāvināšanai vai vienkārši personīgai izklaidēšanai.

Nepieciešama aparatūra

Projektam nepieciešamā aparatūra ir šāda:



  • Arduino vai Genuino dēlis
  • pjezo skaņas signāls vai skaļrunis
  • savienojuma vadi

Arduino tiek darbināts ar 9V, 500mA barošanas avotu, kas varētu būt no jebkura standarta SMPS maiņstrāvas līdz līdzstrāvas adaptera, vai arī varat izmēģināt to pašu mobilā tālruņa lādētāju.

Arduino tapu Nr. 8 var tieši konfigurēt ar skaļruni, kura vērtējums nedrīkst pārsniegt 8 omus un 1 vatu.



Tātad viens skaļruņa vads savienojas ar Arduino dēļa tapu # 8, un otrs vads iet uz dēļa negatīvo līniju vai zemes līniju.

Pastiprinātai izejai

Skaļākai vai ļoti pastiprinātai skaņai jūs varat konfigurēt tapu Nr. 8 ar tranzistora draivera pakāpi, kas sastāv no TIP31 tranzistora, kura pamatni var savienot ar pin8 caur 1K rezistoru, izstarotāju zemē un kolektoru pie viena no vadiem. skaļrunis, otrs spakera vads tagad savienojas ar pozitīvo padevi, kas ir 9 V barošana (+).

Pārliecinieties, ka skaļruņa vērtējums ir 8 omi, bet ar daudz lielāku jaudu, pastiprinātas mūzikas melodijas paaudzei tas var būt aptuveni 5 vati.

Šī skice ir kodēta, lai atskaņotu un ģenerētu diezgan daudz izlases
melodijas pēc kārtas, izmantojot pentatonisko skalu
/*
Musician
Plays a (fairly) random tune until the program is stopped.
8-ohm speaker on digital pin 8.
//Copyright (c) 2012 Jeremy Fonte
//This code is released under the MIT license
//https://opensource.org/licenses/MIT
*/
int randomNote = 131
int randomDuration = 2
int noteStep = 1
int notes[15]
void setup() {
pinMode(8, OUTPUT)
notes[1] = 131
notes[2] = 147
notes[3] = 165
notes[4] = 196
notes[5] = 220
notes[6] = 262
notes[7] = 294
notes[8] = 330
notes[9] = 392
notes[10] = 440
notes[11] = 523
notes[12] = 587
notes[13] = 659
notes[14] = 784
notes[15] = 880
randomNote = random(1, 15)
}
void loop() {
noteStep = random(-3, 3)
randomNote = randomNote + noteStep
if(randomNote <1) {
randomNote = random(1, 15)
}
else if(randomNote > 15) {
randomNote = random(1, 15)
}
randomDuration = random(1, 8)
// to calculate the note duration, take one second
// divided by the note type.
//e.g. quarter note = 1000 / 4, eighth note = 1000/8, etc.
int noteDuration = 1000/randomDuration
tone(8, notes[randomNote],noteDuration)
// to distinguish the notes, set a minimum time between them.
// the note's duration + 30% seems to work well:
int pauseBetweenNotes = noteDuration * 1.30
delay(pauseBetweenNotes)
// stop the tone playing:
noTone(8)
}

Piedāvātās Arduino mūzikas melodijas ģeneratora shēmas savienojuma shēma ir parādīta zemāk:

Arduino mūzikas melodiju ģeneratora shēma

Pastiprinātai klausīšanai ar lielu jaudu to pašu iestatījumu var uzlabot ar strāvas tranzistoru, kā norādīts šajā attēlā:




Pāri: 4 vienkāršas Power Bank ķēdes izskaidrotas Nākamais: Arduino RGB plūstoša secīga gaismas ķēde