Hallo zusammen,
Ich bin ein ziemlicher Anfänger in Sachen Mikrocontroller. Ich habe nun
ein kleines Projekt bei dem ich ein wenig Hilfe benötige.
Ich will einen möglichst kleinen (etwa 3x3x3 cm) mp3-Player bauen der
auf Knopfdruck ein gespeichertes Lied abspielt und sonst nichts macht.
DA ich bis jetzt nur einfache Schaltungen mit Tastern, LED's etc gemacht
habe weiss ich nicht genau wie vorgehen. Könnt ihr mir helfen?
pankraz
> Ich bin ein ziemlicher Anfänger in Sachen Mikrocontroller. Ich habe nun> ein kleines Projekt bei dem ich ein wenig Hilfe benötige.
Ein MP3-Player ist kein einfaches Projekt und schon gar nichts für einen
Anfänger. Nutze mal die Forensuche und das große G, da findest du ein
paar Beispiele und kannst dir ein Bild vom Aufwand machen.
Naja das Problem ist folgendes:
1.) Die MP3 Datei muss ja irgendwo gespeichert sein, am einfachsten ist
hier entweder ein Flash Speicher IC oder eine SD Karte.
2.) Nun muss man die Daten aus dem Speicher holen,
3.) sie decodieren und
4.) in analoge signale umwandeln, (5.)) diese so verstärken und dann
ausgeben.
So nun musst du Lösungen für diese Probleme finden. Zu 1.) hab ich
bereits alles gesagt. Das 2. Problem löst schon ein einfacher
Mikrocontroller wie ein AVR oder ein PIC, dazu musst du dich aber in
diese Problematik hineinarbeiten, wenn du das gut machst hast du nach
ca. einem Monat alles über diese Controller verstanden. 3. kannst du
entweder in Hardware oder mit Software lösen, sprich es gibt fix fertige
ICs, in denen die AVR die vom Speicher geholten Daten hineinstopft und
diese an der anderen Seite analoge und für einen Kopfhörer genügend
verstärkte Signale ausgibt. In Software und echtzeit MP3 Daten zu
dekodieren braucht es ziemliche Rechenleistung, die nur komplexere
Controller erreichen (Vergiss zunächst diese Methode).
Fazit: such im Forum und in der Artikelsammlung, dort findest du alles
weitere
Ach ja: lass dich nicht abschrecken, von wegen ein MP3 Player sei ein
schweres Projekt! Wenn du es mit der Hardwarevariante machst ist es nur
ein wenig zeitaufwendig sich in alles einzuarbeiten (AVR, SD Karten)
aber sonst erledigt die (fast) ganze schwere Arbeit der MP3 Decoder IC
Vielen Dank erstmal.
Zum decoden der mp3 habe ich noch eine Frage. Ist es schwieriger mp3
DAten zu verarbeiten als zum Bespiel .wav dateien oder ähnliches? Das
Format des der Audio-Datei ist mir eigtnlich egal.
>Ist es schwieriger mp3>DAten zu verarbeiten als zum Bespiel .wav dateien oder ähnliches?
Wieso glaubt eigentlich jeder Depp er könnte
mal eben so mit WAV oder MP3 rumspielen?
Man sollte sich schon mal mit den Dateiformaten
bekannt gemacht haben, bevor man Dinge tun will
die einen KOMPLETT überfordern.
> >Ist es schwieriger mp3> >DAten zu verarbeiten als zum Bespiel .wav dateien oder ähnliches?>Wieso glaubt eigentlich jeder Depp er könnte>mal eben so mit WAV oder MP3 rumspielen?>Man sollte sich schon mal mit den Dateiformaten>bekannt gemacht haben, bevor man Dinge tun will>die einen KOMPLETT überfordern.
Danke für deine sehr hilfreiche Antwort. Ich nehme an auch du hast mal
mit disem Thema angefangen und warst am Anfang auf Hilfe angewiesen.
WAV-Dateien sind unkomprimiert, die brauchst du nur mit der richtigen
Geschwindigkeit zum DAC schieben. Allerdings ist die Datenmenge riesig
(mehrere MB/min). MP3 ist wesentlich komplexer, mit den üblichen
Controllern in Software nicht zu beherrschen. Da gibt es jedoch fertige
Decoder, z.B. VS1011, die sind aber auch nicht gerade trivial, dazu
kommt das SD-Card-Handling... Ich bleibe dabei, es ist kein einfaches
Projekt für einen Anänger. Aber trotzdem viel Erfolg.
> Ust es schwieriger mp3 DAten zu verarbeiten als zum Bespiel> .wav dateien oder ähnliches?
Schwieriger würd ich nicht sagen. Eher anders.
"Einfacher" zum auslesen ohne irgendwelche Decoder ist eine reine
PCM-Wave. Da reichts, wenn man die Datenbytes z.B. an nen PWM-Kanal
sendet.
Nachteil: Gewaltiger Speicherplatzbedarf.
MP3 spart halt Platz, braucht aber mehr als "nur" Software.
pankraz schrieb:
> Ist es schwieriger mp3> DAten zu verarbeiten als zum Bespiel .wav dateien oder ähnliches?
Ja. mp3 muss dekodiert werden, dazu sind >50MIPS und >30kByte RAM
notwendig.
Wave abspielen ist nichts anderes als die Werte direkt mit der
Samplerate an den DAC zu schicken. Dafür ist die Datenmenge bei
ähnlicher Qualität aber rund 10x größer.
Hi
>Wieso glaubt eigentlich jeder Depp er könnte>mal eben so mit WAV oder MP3 rumspielen?>Man sollte sich schon mal mit den Dateiformaten...
Falls es solche Deppen wie du schon mal geschafft haben sollten, kann
das auch jeder normalsterblicher.
@pankraz (Gast)
Das Vorhaben gehört in die Kategorie: Etwas komplizierter, aber machbar.
Es gab hier schon einige MP3-Projekte (Codesammlung). Einfach mal
suchen.
Sieh dir das mal an, und entscheide dann, ob du dir das zutraust.
MfG Spess
>Falls es solche Deppen wie du schon mal geschafft haben sollten, kann>das auch jeder normalsterblicher.
Das stimmt.
Man muss
1. Mal selber nach dem Wave Format suchen
2. Nach MP3 Playern suchen
Dauert vieleicht ein paar Stunden.
Aber wenn man selbst dazu zu dumm ist
dann würde ich es gleich sein lassen.
@spess53 (Gast)
>Falls es solche Deppen wie du schon mal geschafft haben sollten, kann>das auch jeder normalsterblicher.
Na ja, da war nun ein wenig unter der GL.
Wenn man allerdings die 5 Faktoren:
1.
>Ich bin ein ziemlicher Anfänger in Sachen Mikrocontroller.
(bedeutet eher NULL Ahnung - aber das wird heute ja nicht mehr
zugegeben)
2.
>Ich habe nun ein _kleines_ Projekt bei dem ich ein __wenig__
Hilfe benötige.
(Beweis zu 1.)
3.
>Ich will einen möglichst kleinen (etwa 3x3x3 cm) mp3-Player bauen der
auf Knopfdruck ein gespeichertes Lied abspielt und sonst nichts macht.
(die Groesse gibt es heutzutage mit ca 10000 Liedern)
4.
>DA ich bis jetzt nur einfache Schaltungen mit Tastern, LED's etc gemacht habe
weiss ich nicht genau wie vorgehen.
(Er weiss GAR NICHTS ueber die Thematik und hat auch noch nichts
darueber gelesen, sein Wissensstand beschraenkt sich auf die
Verarbeitung EINES Bytes)
5.
>Ist es schwieriger mp3 DAten zu verarbeiten als zum Bespiel .wav dateien oder
ähnliches?
(Also noch absolut nichts gelesen, gesucht, eigene Gedanken (nach
Recherche) gemacht).
6.
>Das Format des der Audio-Datei ist mir eigtnlich egal.
(Unterstreicht wieder: absolut nichts gelesen, gesucht, eigene Gedanken
(nach Recherche) gemacht)
7. Schulferienbeginn
dazunimmt, koennte einem schon der Hals platzen.
Gast4
Ach besorg dir einen ATMEGA (am besten mit 2 SPI Schnittstellen), einen
VS1011 und einen SD Karten Stecker, pack die Daten der SD Karte in den
VS1011, der macht den Rest. Was MP3 Daten sind, wie sie decodiert werden
etc. brauchst hier nicht wissen.
@ Gurtenpflicht (Gast)
Natürlich sind das SD-Card-Handling und die Ansteuerung des VS1011 so
trivial, dass selbst ein blutiger Anfänger das in 10 Minuten hinbekommt.
Das macht der ATMega quasi schon in Hardware ...
Auch wenn ein solches Projekt für einen selbst kein Problem darstellt,
gibt es immer noch genug Leute, die damit extrem überfordert sind.
Mein Tip:
Das Audio liegt als .wav vor.
Einen Dataflash oder sonstiges CFI Flash.
Einen 16 Bit D/A Wandler
Einen beliebigen AVR Mega (Wegen SPI)
Plus ein bisschen Batterie Managment
Software ist einfach da .wav
Wie du das Audio File in den Flash reinkriegst - dein Problem
uvm.
In 3 Monaten hast du vlt. die erste Hardware/Software fertig. Dann
siehst du die Probleme. Fertig bist du deinen Kennisstand in ca. 2
Jahren.
Schonmal über das PCB Design nachgedacht ???.
Beim Einsatz von SD Karten mit Fat32 rechne mit 3+ Jahren.
Einfacher ist es für dich einen MP3 Player zu nehmen, nur diesen Track
darauf zu speichen (Repeat Mode), und den Play Knopf uber den µC zu
steuern.
für nen Anfänger wie dich wäre doch als erstes mal ein nachbau
interessant, zb von Chan, der hat auch noch andere schöne Projekte, nur
seine Löttechnik ist etwas anspruchsvoller:
http://elm-chan.org/works/mp3/report_e.html