Mal wieder habe ich ein neues Projekt vor, bevor ich die anderen überhaupt abgeschlossen habe. Aber so ist es halt, wenn man mehrere Wochen auf seine China-Bestellung warten muss. Ich möchte ein Soundboard bauen, also ein Gerät, mit dem man Sounds durch einen Knopfdruck abspielen kann, wobei sich auf jede Taste ein Sound legen lässt. Die Sounds sollen auf einer SD-Karte gespeichert sein. Die Steuerung erfolgt über ein 4x4-Tastenfeld und Informationen zu den Sounds sollen auf einem 128x64-OLED-Display angezeigt werden. Steuern soll das ganze ein Arduino Pro Mini-Klon. Ein günstiges China-MP3-Modul namens "DFPlayer Mini" mit integriertem 3W-Verstärker, UART-Steuerung und SD-Slot habe ich schon gefunden: http://www.aliexpress.com/item/1PCS-Mini-MP3-Player-Module-with-Simplified-Output-Speaker-for-Arduino-UNO/32271894202.html Allerdings möchte ich auf dem Display Informationen zur Tastenbelegung anzeigen, z.B. die Dateinamen der jeweiligen Sounds. Das Board hat leider keine Möglichkeit, eine Dateiliste abzufragen. Hardcoden möchte ich auch nicht. Ein besseres Board zum ähnlichen Preis habe ich nicht gefunden. Jetzt ist meine Idee, die SD-Karte vorher mit dem Arduino selbst auszulesen und dann die Kontrolle an das Modul weitergeben. SMD-Löten ist keine Option. Die Firmware auf dem Board scheint sich nicht (einfach) austauschen zu lassen, zumindest finde ich zum verbauten IC keine SDKs, Datasheets und Ähnliches. Als Alternative habe ich noch ein günstiges ARM-Board gefunden: http://www.aliexpress.com/item/Free-Shipping-STM32F103C8T6-ARM-STM32-Minimum-System-Development-Board-Module-For-arduino/32555258029.html?ws_ab_test=searchweb201556_10,searchweb201602_2_10057_10056_10055_10037_10049_10033_10059_10058_10032_10017_10060_10061_10062_10063_412_10064,searchweb201603_8&btsid=0b984e2b-b48b-4a56-8782-7846055228bb Hat der ARM genug Leistung für Software MP3-Decoding und gibt es eine passende Library dafür?
>Hardcoden möchte ich auch nicht. >SMD-Löten ist keine Option. Aha! Nur ganz ohne zu Löten bzw. zu Programmieren wird das nichts. Deine Idee die SD-Karte erst vom uC und dann vom Soundmodul zu lesen funktioniert solange du das hintereinander machst. Natürlich brauchst du eine Umschaltlogik für die SD-Karte und ein Reset der Karte beim Umschalten tut auch gut. Also etwa so: - Umschalter steht auf uC, das Soundmodul wird vom uC im Reset gehalten. - uC initalisiert die SD und liest die gewünschten Daten. Soundmodul ist immer noch im Reset. - uC schaltet den Umschalter auf das Soundmodul, trennt kurz die Versorgungsspannung zur Karte (Reset) und gibt dann den Reset des Soundmoduls frei. Wie der 'Umschalter' aussieht, hängt davon ab wie die SD-Karte an den uC bzw. an das Soundmodul angebunden wird (SPI, SDIO1, SDIO4)
Ich habe schon eine andere Idee: Der ARM emuliert einen SD->USB-Adapter. Das MP3-Modul kann nämlich auch Dateien von USB-Sticks abspielen. Somit hat aber immer noch der ARM volle Kontrolle über den Speicher und kann ihn jederzeit auslesen.
Dann mach lieber MP3 Softdecoding, USB Massenspeicher ist da schwieriger. Mit einem STM32F4 sollte das gehen. minimp3: http://keyj.emphy.de/minimp3/
Dafür bräuchte man aber ein teureres Board, einen zusätzlichen DAC und einen extra Verstärker.
Es könnte nötig sein, das ganze Soundmodul zu resetten, wenn du den Inhalt der SD Karte änderst.
Raspberry Pi? Dann beschränkt sich das Ganze auf ein wenig Software, die bei Drücken eines Tasters (Standard GPIO) einen fertigen Mediaplayer mit der entsprechenden MP3 aufruft ... Display gibts als fertiges Modul in beliebiger Ausführung, Python-Programmierbeispiele auch zu Hauf ...
Stefan U. schrieb: > Es könnte nötig sein, das ganze Soundmodul zu resetten, wenn du den > Inhalt der SD Karte änderst. Es wird nur gelesen, nicht geschrieben. Ich schrieb: > Raspberry Pi? Dann beschränkt sich das Ganze auf ein wenig Software, die > bei Drücken eines Tasters (Standard GPIO) einen fertigen Mediaplayer mit > der entsprechenden MP3 aufruft ... Display gibts als fertiges Modul in > beliebiger Ausführung, Python-Programmierbeispiele auch zu Hauf ... Das ganze soll über einfache Batterien laufen, da ist ein Pi zu stromfressend. Außerdem möchte ich das Projekt so günstig gestalten wie möglich, da wäre ein Pi etwas extrem. Und die Bootzeit von Linux auf dem Pi ist ziemlich hoch, wenn man das mit einem einfachen MCU vergleicht. Einen extra Verstärker bräuchte ich ebenfalls noch. Das Projekt soll außerdem klein sein, da ist ein Pi ziemlich groß. Und der Pi Zero hat nicht einmal einen Audioausgang.
> Es wird nur gelesen, nicht geschrieben.
Dann benutze in dem zweiten gerät eine Kopie der SD Karte. Oder habe ich
dich missverstanden?
Stefan U. schrieb: >> Es wird nur gelesen, nicht geschrieben. > > Dann benutze in dem zweiten gerät eine Kopie der SD Karte. Oder habe ich > dich missverstanden? Wie gesagt, das MP3-Board hat auch Unterstützung für das Lesen von USB-Massenspeicher. Der der ARM ein natives USB-Interface besitzt, könnte ich einfach die SD-Karte im ARM lesen und gleichzeitig über den USB-Port dem MP3-Modul zur Verfügung stellen.
> Außerdem möchte ich das Projekt so günstig gestalten wie > möglich Dann musst Du mal aufhoeren mit Lego zu spielen und mal selber das Loetwerkzeug anwerfen. ST hat das mal auf einem Evalboard mit einem 8-Bitter, ST7-LITE und einem SPI-Flash realisiert. Die Qualitaet war allerdings eben nur 8 bittig. Ein kleiner ARM M0 zum Auslesen einer SD-Karte und ein PT8211 als unkomplizierter 16 Bit-DAC waeren heute wohl zeitgemaesser und vom Preis attraktiver.
Hallo, je nach Lust und Laune: ATMega, VS1003, SD-Card-Slot, Display und Tasten und selber programmieren. Bei 320kBit wurde es knapp, 128kBit gingen auch von einer 2,5" HD mit einem alten 8515 bei 14,xxx NHz Takt, Anzeige war ein 2x16 Diplay incl. Scrollen der Anzeige, gelesen wurden die MP3TAG-V1. Alternative wenn Mono und 12Bit reichen: externen SPI-DAC dran (hatte damals den DAC7512), dann sind 44,1kHz/16Bit kein Problem, incl. Lautstärkeregelung in der Ausgaberoutine. Nur, weil viele Wege nach Rom führen. Irgendein MP3-Modul gab es mal, das seriell gesteuert werden konnten und die Titelinfo auch schickte, finde ich nirgends mehr. Gruß aus Berlin Michael
./. schrieb: > Dann musst Du mal aufhoeren mit Lego zu spielen und > mal selber das Loetwerkzeug anwerfen. Das werde ich, in diesem Fall ging es mir nur um SMD.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.