Go Down

Topic: Musik mit Arduino Mega abspielen (Read 2563 times) previous topic - next topic

mr10b032

Wie der Titel schon verrät versuche ich Musik mit einem Arduino Mega Board abzuspielen.
Ich weiß zwar, dass es Music-shields gibt, das Problem ist, dass auf meinem Board die meisten Pins schon verwendet werden und ich keinen Platz mehr hab um das Shield auf das Board zu montieren. Ein zweites Board möchte ich jetzt auch nicht dazukaufen, nur um das shield drauf zu geben.

Habt ihr eine Idee, wie ich auf einfachen Weg ein kurzes Musikstück wiedergeben kann.

Dazu wäre noch zu sagen, dass ich zwar Grundlegende Kenntnisse in Programmieren und Elektronik habe, aber ein wirklich tiefgehendes Wissen besitze ich nicht.

Ich danke euch jetzt gleich für die Hilfe

pylon

Das Arduino-Board selbst kann nicht vernünftig Musik abspielen und auch mit z.B. einem DAC angeschlossen stellt sich schnell das Problem, woher Du die Massen an Daten hast. Wenn Du wirklich Musik abspielen willst, empfiehlt sich die Verwendung eines Shields oder Breakout-Boards, das mit entsprechender Hardware ausgestattet ist. Welches Shield hättest Du denn eingesetzt, wenn Du noch genügend Pins frei hättest? Oder anders rum: Welche Art von Musik (Mono/Stereo) und in welcher Qualität möchtest Du abspielen? Denkst Du gar an MP3 oder ähnlich komprimierte Stücke?

uwefed

Es gibt die TONE-Bibiothek um töne und "Musik" wiederzugeben, aber wenn Du fast alle Pins des Mega verwendet hast nehme ich an daß auch der Sketch dementsprechend groß und umfagreich ist daß die bibliothek Dir Probleme bereitet.
Grüße Uwe

sth77

In diesem Thread: http://arduino.cc/forum/index.php/topic,159153.0.html hat jurs diese Module vorgeschlagen: http://www.elv.de/mp3-sound-modul-msm-2-komplettbausatz.html
Vielleicht hilft es ja, da der Mega somit entlastet wird. Andererseits könnte man ja auch nen alten MP3-Player schlachten .;)
Mein Arduino-Blog: http://www.sth77.de/ - letzte Einträge: Teensy 3.0 - Teensyduino unter Window 7 - Teensyduino unter Windows 8

mr10b032

@pylon: Das mit dem Shield hört sich ja vernünftig an. Gedacht hätte ich mir, dass ich dieses Shield verwenden könnte: http://www.physicalcomputing.at/shop/article_A-1126000/Music-Shield-V2.0.html?sessid=wzf8YJ3U6IZwaNdmOSutH2xj5K84W6E5WsJqyaCcQFck4xgaKvKU67EyQwdfHviN&shop_param=cid%3D2%26aid%3DA-1126000%26

Ich weiß aber nicht wie viele Pins und welcher Art Pins dieses Shield benötigt. Kannst du mir vielleicht sagen wie man das herausfindet. Auf der Wiki-Seite hab ich nicht gefunden und selbst gemacht hab ich so etwas leider noch nie.

Als Anforderung für die Musikwiedergabe hab ich nur, dass ich ein ca. 30 Sekunden Stück, dass selbst aufgenommen wird abspielen muss.
Ich hab halt nur das Problem, dass ich schon alle PWM Pins und über knapp 8 Digitale I/O-Pins verbraucht hab und jetzt nicht weiß wie ich weiter machen soll.

Generell ist zu sagen, dass ich ein Puppentheater mit einem Tastendruck starten möchte, und gleichzeitig zum Start des Stückes auch die Musik starten sollte.

Über die Idee mit dem Ausschlachten eines mp3-Players hab ich auch schon nachgedacht. Ich müsste ja nur die Start-Taste mit einem digitalen Pin verbinden und den Pin im Code dann High setzten. Bei dieser Idee bin ich mir aber nicht sicher ob das Board genügend Strom liefert um die Funktion der Play-taste übernehmen zu können.

pylon

Quote
Ich weiß aber nicht wie viele Pins und welcher Art Pins dieses Shield benötigt. Kannst du mir vielleicht sagen wie man das herausfindet. Auf der Wiki-Seite hab ich nicht gefunden und selbst gemacht hab ich so etwas leider noch nie.


Das Shield benötigt zusätzlich zu den SPI-Pins (die aber ein Bus sind und deshalb von mehreren Shields/Erweiterungen benützt werden können) noch 5 weiter digitale IO-Pins (standardmässig auf Pin 10 und A0-A3 verdrahtet), den Rest könntest Du weglassen. Mit dem Mega hast Du aber mehr als genügend Pins, wofür hast Du die denn alle gebraucht?
Ideal ist das Shield wahrscheinlich schon deshalb nicht, weil die Daten von der SD-Karte über den Arduino geleitet werden und vom Musik-Chip nicht direkt gelesen werden. Für Deine Anwendung wäre ein Breakout wie dieses:

http://shop.boxtec.ch/audio-sound-breakout-wtv020sd-p-40949.html

besser geeignet. Du brauchst nur 2 Pins vom Arduino für die Steuerung (notfalls genügt sogar einer) und die Musik spielt direkt von der SD-Karte ab.

mr10b032

Bezüglich des Board. Wir arbeiten an einem Projekt und meine Kollegen haben die meisten PWM- und Digitalen-I/O-Pins für Sensoren und Motoren verwendet. Nur dass mit der Musik fehlt halt noch.
@pylon: das breakout Board dass du mir empfohlen hast ist ja leider ausverkauft.
Kennt wer irgendeine einfache Methode, betonung auf Einfach, wie man Musik abspielen kann.

Ich hab ja schon darüber nachgedacht einen alten mp3-Player außeinander zu nehmen und mal zu schauen ob ich nicht ein Kabel auf einen Pin löten kann. Ich bin mir dabei aber nicht sicher ob das Arduino Mega Board genügend Strom liefern kann um den Taster zu simulieren und wirklich elegant ist das ja auch nicht.

sth77

Ein weiteres Modul habe ich dir bereits vorgeschlagen.
Zum Thema MP3-Player schlachten: Da brauchst du keine Sorge haben. Wenn bei einem Tastendruck nennenswerte Ströme fließen sollten, wäre das ein extrem schlechtes Schaltungsdesign.
Mein Arduino-Blog: http://www.sth77.de/ - letzte Einträge: Teensy 3.0 - Teensyduino unter Window 7 - Teensyduino unter Windows 8

volvodani

Bei denen gibt es das Modul noch
http://www.exp-tech.de/Shields/Sparkfun-Audio-Sound-Breakout---WTV020SD.html
Gruß
Der Dani
So ist das Leben:
Manchmal bis du das Denkmal, manchmal die Taube!

pylon

Quote
das breakout Board dass du mir empfohlen hast ist ja leider ausverkauft.


Nicht an Lager heisst doch nicht ausverkauft. Bei SparkFun gibt es das Board noch (https://www.sparkfun.com/products/11125), also kannst Du es bei Boxtec (oder einem anderen Anbieter, der SparkFun-Produkte führt) bestellen.

Go Up