Circuit générateur de mélodies musicales Arduino

Essayez Notre Instrument Pour Éliminer Les Problèmes





Vous pouvez utiliser ce petit circuit générateur de mélodies musicales Arduino pour une application préférée, par exemple pour fabriquer une sonnette de porte intéressante, comme klaxon inversé de voiture ou boîte à musique pour offrir à quelqu'un, ou simplement pour un amusement personnel.

Matériel requis

Le matériel requis pour le projet est donné comme suit:



  • Carte Arduino ou Genuino
  • buzzer piézo ou haut-parleur
  • fils de raccordement

L'Arduino est alimenté par une entrée d'alimentation 9V, 500mA qui peut provenir de n'importe quel adaptateur SMPS AC / DC standard, ou vous pouvez également essayer votre chargeur de téléphone portable pour le même.

La broche n ° 8 de l'Arduino peut être directement configurée avec le haut-parleur qui ne doit pas être évalué au-dessus de 8 ohms et 1 watt.



Ainsi, un fil du haut-parleur se connecte à la broche n ° 8 de la carte Arduino et l'autre fil va à la ligne négative ou à la ligne de masse de la carte.

Pour sortie amplifiée

Pour un son plus fort ou très amplifié, vous pouvez configurer la broche # 8 avec un étage de pilote de transistor, composé d'un transistor TIP31, dont la base peut être connectée à la broche 8 via une résistance 1K, l'émetteur à la terre et le collecteur à l'un des fils du haut-parleur, l'autre fil du spaker se connecte maintenant à l'alimentation positive qui est l'alimentation 9V (+).

Ici, assurez-vous que le haut-parleur est évalué à 8 ohms mais à une puissance beaucoup plus élevée, peut être d'environ 5 watts pour une génération de musique amplifiée.

Ce croquis est codé pour jouer et générer de nombreux aléatoires
mélodies en séquence à l'aide d'une gamme pentatonique
/*
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)
}

Le schéma de connexion du circuit générateur de mélodies musical Arduino proposé est illustré ci-dessous:

Circuit générateur de mélodies musicales Arduino

Pour une écoute amplifiée haute puissance, la même configuration peut être mise à niveau avec un transistor de puissance comme indiqué dans la figure suivante:




Une paire de: Explication de 4 circuits de banque d'alimentation simples Un article: Circuit de lumière séquentielle fluide Arduino RGB