Arduino Musical Tune Generator Schaltung

Arduino Musical Tune Generator Schaltung

Sie können diese kleine Arduino-Musikmeldergeneratorschaltung für eine bevorzugte Anwendung verwenden, z. B. zum Herstellen einer interessanten Türklingel, als Auto-Rückwärtshupe oder als Spieluhr zum Verschenken von Personen oder einfach zur persönlichen Unterhaltung.

Hardware erforderlich

Die für das Projekt erforderliche Hardware wird wie folgt angegeben:



  • Arduino oder Genuino Board
  • Piezo-Summer oder ein Lautsprecher
  • Anschlussdrähte

Das Arduino wird mit einem 9-V-500-mA-Netzteil versorgt, das von jedem Standard-SMPS-AC / DC-Adapter stammen kann, oder Sie können auch Ihr Handy-Ladegerät ausprobieren.



Pin Nr. 8 vom Arduino kann direkt mit dem Lautsprecher konfiguriert werden, der nicht über 8 Ohm und 1 Watt ausgelegt sein darf.

Ein Kabel des Lautsprechers ist also mit Pin 8 der Arduino-Platine verbunden, und das andere Kabel führt zur negativen Leitung oder zur Erdungsleitung der Platine.



Für verstärkten Ausgang

Für einen lauteren oder stark verstärkten Klang können Sie Pin 8 mit einer Transistortreiberstufe konfigurieren, die aus einem TIP31-Transistor besteht, dessen Basis über einen 1K-Widerstand mit Pin8 verbunden sein kann, Emitter gegen Masse und den Kollektor mit einem der Drähte des Lautsprecher, das andere Kabel des Spakers wird jetzt mit der positiven Versorgung verbunden, die die 9-V-Versorgung ist (+).

Stellen Sie hier sicher, dass der Lautsprecher eine Nennleistung von 8 Ohm hat, aber bei einer viel höheren Leistung etwa 5 Watt für eine verstärkte Musikmusikgenerierung beträgt.

Diese Skizze ist so codiert, dass sie viele zufällige Elemente abspielt und generiert
Melodien nacheinander mit einer pentatonischen Skala
/*
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)
}



Das Anschlussdiagramm für die vorgeschlagene Arduino-Musikmelodie-Generatorschaltung ist unten gezeigt:

Arduino Musical Tune Generator Schaltung

Für verstärktes Hören mit hoher Leistung kann derselbe Aufbau mit einem Leistungstransistor aufgerüstet werden, wie in der folgenden Abbildung gezeigt:




Zurück: 4 einfache Power Bank-Schaltkreise erklärt Weiter: Arduino RGB Fließender sequentieller Lichtkreis