Hi, bin gerade dabei einen MP3-Player mit Ethernet, USB - Connection und SD-Karte zu designen. Das ganze soll mit zwei 8051er Controllern, einem Ethernet-Device und dem VS1033 realisiert werden. Suche jemand der Lust hat über meinen Schaltplan drüber zu schauen. So wie es bisher geplant ist, werde ich mehrere (5) Leiterplatten fertigen lassen. Drei werde ich selber behalten, die restlichen würde ich zum Selbstkostenpreis weiterverkaufen... Steht aber noch alles in den Sternen... Meldet euch doch einfach hier im Forum für mehr Infos bzw. Schaltplan... Ciao Miu
moin, alles schön und gut wo ist dein schaltplan??? wofür ethernet und usb, wenn ne sd schon dabei ist??? gruss
Und warum 2 Controller wenn es einer (anderer) auch tun würde?
Mich würde es auch interessiern warum du zwei 8051 verwendet hast. Bei Ethernet und USB wäre doch ein ARM sehr interessant gewesen. Was für 8051 setzt du ein?
Hoi, also ich habe vor von Silabs den F120 und F340. Den F340 für USB und zwar habe ich vor das Ganze als Mass Storage Device anzusprechen. An den Controller soll auch ein Display ran. An den F120 soll der CP2200 Ethernet Controller, der VS1033 und ein zusätzliches SRAM hin. Einen ARM möchte ich nicht einsetzen, da ich keinen entsprechenden JTAG Adapter besitze... Außerdem möchte ich die Leistungsfähigkeit des F120 testen...
>Einen ARM möchte ich nicht einsetzen, da ich keinen entsprechenden JTAG >Adapter besitze... Das kann ja wohl kein Argument sein. Hast Du dir mal die AT91SAM7X Serie angeschaut? Die haben USB und Ethernet bereits implementiert.
> Das kann ja wohl kein Argument sein.
Einen einfachen Parallelportadapter ("Wiggler"-Clone) verkauft Andreas
hier in seinem Shop, einen ernstzunehmenden USB-Adapter (für OpenOCD auf
Basis des FT2232) auch.
Die Welt kosten beide nicht.
Den Wiggler-Clone kannst für etwa 2 Euro nachbauen. Der besteht ohnehin nur aus ein paar Widerständen, einem Treiber-IC und dem SUB D25 Stecker. Hab ähnliches mit einem PIC18F8722 realisiert. http://www.poms-engineering.at/html/index.php?inc=projects_mp3_player&lang=de Also zwei Controller zu nehmen ist doch Overkill!!!
Werd mir das Ganze mit dem ARM noch mal genau durch den Kopf gehen lassen. Aber im Prinzip kann ich mir wenn ich den ARM7TDMI nehme, den MP3 Hardware Decoder sparen und das Software mäßig machen...
Die Stellaris LM3S6000 Serie von Luminary Micro sollte man auch noch erwähnen. Die hat den 10/100 Ethernet MAC und PHY gleich in einem Gehäuse. Es fehlt zwar der USB Controller, aber den kann man zur Not noch durch einen externen erweitern.
> Aber im Prinzip kann ich mir wenn ich den ARM7TDMI nehme, den MP3 > Hardware Decoder sparen und das Software mäßig machen... Würde ich nicht machen, nimm einen Hardware Decoder und nutze die Ressourcen des ARM lieber für alles andere.
Ein ARM wie der AT91SAM7X512 hat genug Ressourcen für MP3 und alles andere, allerdings braucht man dann statt dem VS10xx einen DAC, vom Aufwand her wird es also auf das selbe hinauslaufen.
Also ganz ehrlich... denke nicht, dass der ARM so etwas ohne weiteres schafft. FTP (File Download), HTML Webserver, USB, Display und dann noch MP3 Decoding... alles zur selben Zeit? Hat das schon mal wer geschafft? Meiner Meinung nach, macht es schon Sinn vor allem die MP3 Funktionalität auszulagern. Der DSP am VS10xx bietet es an, einige Zusatzfunktionen laufen zu lassen. Unter anderem kann man ein Plugin raufladen um einen Spectrum Analyzer zu realisieren.
Ob das schonmal Jemand geschaft hat? Beitrag "Re: ARM MP3/AAC Player Web Radio" kommt dem ziemlich nah. Aber das Projekt ist dann irgendwann eingeschlafen, glaub ich.
Ich denke das sollte mit nem ARM kein Problem sein. USB soll hauptsächlich nur für den Zugriff auf die SD-Karte erfolgen (Stichwort Mass Storage Device). Das Display ist absolut kein Problem. Warum eigentlich FTP und Webserver, abgesehen davon, dass dies durchaus möglich wäre...
Viel mehr Sorgen mach ich mir um die Entwicklungsumgebung. Habe bisher bei ARM Controllern nur mit Hilfe von Keil, also einer professionellen Umgebung, gearbeitet. (Studium) Taugt die WinARM Umgebung oder was könnt ihr mir da empfehlen?
>FTP (File Download), HTML Webserver, USB, Display und dann noch MP3 >Decoding... alles zur selben Zeit? Zumindest zu USB MSD Class kann ich aus Erfahrung sagen, das der Transfer Speed bei USB einbricht sobald der Kontroller noch irgend etwas anderes macht ausser USB zu verarbeiten. @Miu >Warum eigentlich FTP und Webserver, abgesehen davon, dass dies durchaus >möglich wäre... Wozu dann die Ethernet Schnittstelle?
>Wozu dann die Ethernet Schnittstelle?
Ursprungsidee: Reines Streamen
Bei YAGARTO komm ich aber um SAM-ICE oder J-Link nich drum herum,oder?
Der MP3-Decoder braucht ca. 60% Rechenzeit, der Rest reicht locker für das bisschen HTTP und USB, das schafft ja auch schon ein AVR. Das wichtigste ist nur dass man genug RAM hat, 128 kB sollten es schon sein. > Zumindest zu USB MSD Class kann ich aus Erfahrung sagen, das der > Transfer Speed bei USB einbricht sobald der Kontroller noch irgend etwas > anderes macht ausser USB zu verarbeiten. So pauschal kann man das nicht sagen. Wenn der Controller die komplette Rechenleistung für USB verbrät macht man was falsch. Und ganz abgesehen davon muss man ja gar nicht gleichzeitig USB und MP3-Decodierung machen.
Ich nutze eine abgespeckte Version des Atmel Frameworks und der MSD Class. Auf einem AT91SAM7S128 mit microSD Karte. Die Master Clock läuft mit 48MHz und die SPI für die SD Karte mit 24MHz, Zugriff auf die Karte erfolgt über DMA Kontroller. Mit all diesen Daten kann erreiche ich maximal 2.1 Mbit/s beim Lesen, gemessen mit der Software USBinfo. Ich hatte mehr erwartet...
Miu wrote: > Das Display ist absolut kein Problem. > Warum eigentlich FTP und Webserver, abgesehen davon, dass dies durchaus > möglich wäre... Also eine Grafik-Display Ansteuerung inkl. Spectrum Analyser braucht schon etwas Rechenleistung, so etwas würd ich nicht unterschätzen!!!! Wenn du nur ein 2-Zeilen-Display verwenden möchtest und nur Titel anzeigen willst, dann braucht das kaum Ressourcen. Also mir persönlich ist ein Download via FTP um vieles lieber als USB. Das Ethernet kann ich dann auch noch für streaming verwenden und da öffnen sich für mich schon ganz neue Horizonte. Zusätzlich zur SD Karte würd ich außerdem ein IDE Interface vorsehen. Eine Frage bleibt aber offen. Warum MP3 in den ARM packen? Wegen den Kosten für den VS10xx?
Ich wollte eigentlich damit nicht sagen, dass ich grundsätzlich gegen einen externen Decoder bin. Den Gedanke an Software-MP3 fand ich interessant... Ich glaube das es auf einen Hardware Decoder hinauslaufen wird, der mir auch zusätzliche Arbeit für die Analyse abnimmt. Außerdem entfällt die Digital-Analog-Wandlung... Von der Hardware her wäre es ja im Endeffekt völlig offen ob ich ein FTP aufsetze oder nicht... Das sieht man dann... IDE Interface sieht es schon anders aus, weil da muss ich meine Hardware auf jeden Fall anpassen. Hat einer von euch schon mal was mit SATA gemacht? Bisher wollte ich eigentlich nur ein einfaches Zeilendisplay verwenden... Ein grafisches Display auszuprobieren hatte ich bisher noch keine Gelegenheit, kann deshalb auch nicht beurteilen, wieviel Ressourcen (RAM, Code, Rechenzeit) das benötigt.
Ich verwende bei meinem MP3 Player ein Grafikdisplay mit 240x128 Pixel. Hab ein Plugin geschrieben, so dass ich das Display bei Bedarf (per Tastendruck) splitten kann und in einer Hälfte einen "Explorer" zum Navigieren auf der HDD und auf der anderen Hälfte Titelinformationen (MP3 Tags) und den Spectrum Analyzer anzeigen lassen kann. So etwas braucht natürlich recht viel Rechenleistung. Je nachdem wie oft der Spectrum Analyzer aktualisiert werden soll desto mehr Rechenleistung wird benötigt. Mit dem PIC18F8722 bin ich aber da schon ziemlich an der Grenze. Würde ich ein neues Design machen, würde ich auf jeden Fall einen ARM7 oder ARM9 verwenden. Rechenleistung zuviel zu haben ist nie schlecht. Stell dir vor du möchtest eine HDD anschließen und volles FAT32 unterstützen (also auch ADPCM aufzeichnen und Datein auf HDD schreiben bzw. schreiben via FTP). Mein MP3 Player hat 1MB SRAM (Programm und Datenspeicher) und 512kB Flash (Programmspeicher). Mein Flaschenhals ist also eher die Rechenleistung vom PIC. Es gibt jedoch auch Prozessoren von ATMEL mit ARM7 und externem Speicherinterface. Da kannst auch SDRAM oder SRAM dranhängen. Sollte also dein Speicherproblem lösen. Für Ethernet könntest auch eine integrierte Lösung von Lantronix verwenden, jedoch willst du FTP Unterstützung müsstest es auch wieder im ARM implementieren, weil so Module sind nur für Ethernet-To-Serial Anwendungen brauchbar. Vielleicht gibt es jedoch Programmbeispiele eines Webservers / FTP Servers für den ARM7.
Noch was... Seh einfach die zwei Leitungen die du zusätzlich für ein Grafikdisplay (monochrom) benötigst vor, dann kannst du später immer noch entscheiden ob du ein Zeilendisplay oder ein Grafikdisplay verwenden möchtest.
Vielen Dank für den Hinweis. Wird auf der To-Do-Liste vermerkt...
Ich würde auch eher einen Hardware-Decoder wie den VS1033 empfehlen, da spart man sich einiges an Aufwand und kann auch MP2, WMA und AAC abspielen.
Andreas Schwarz wrote: > Ich würde auch eher einen Hardware-Decoder wie den VS1033 empfehlen, da > spart man sich einiges an Aufwand und kann auch MP2, WMA und AAC > abspielen. Ja, und mal ehrlich: Ob man jetzt einen D/A Chip dranhängt und das dekodieren in Software macht, oder direkt einen VSxyz Chip, ist doch vom Platzverbrauch wumpe. Höchstens der Preis macht da was aus. Wobei hochqualitative D/A Wandler auch nicht billig sind. Dadurch relativiert sich das dann wieder.
Und außerdem gibt es auch noch chips die MP3-encoding beherschen. Und so ein LineIn Eingang wäre ein echter mehr wert. Ich denke wenn sich hier einige auf ein paar gemeinsamme Eckpunkte festlegen, würde daraus bestimmt ein schönes Gemeinschaftsprojekt. Ist halt nur die Frage wass man bracuht und was nicht: - Ethernet - Display - IR-Fernbedienung - LineIn - kleine Verstärkerendstufe Wenn das ganze modular aufgebaut wäre, könnten wahrscheinlich die meisten Wünsche erfüllt werden. Eine Hauptplatine mit Ethernet, µC, mp3decoder darauf ausgelegt das man zum beispiel noch ein Zeilen/Grafik-Display anschließen kann oder eine kleinen Verstärker sowie einen IR-Empfänger. Dann könnte Jeder überlegen was er bestücken will. Über ein Webinterface könnte man sogar bei einem Display losen Projekt alle Einstellungen verwalten.
Meiner Meinung nach muss ich inzwischen haben: - MP3-Decoder - Ethernet - Display (Grafik, Ordnerstruktur usw. für mich inzwischen notwendig) - IR - Fernbedienung - Vorverstärker (will ja das Ding schließlich an meine Stereo-Anlage ranhauen) - SD-Karten-Slot - Festplatte (PATA bzw. SATA) - USB 2.0 Full-Speed Bestimmt habe ich noch was vergessen... Also ich möchte dieses Projekt auf jeden Fall verwirklichen. In welchem Zeitraum kann ich noch nicht sagen... Wer Lust hat sich daran zu beteiligen ist auf jeden Fall herzlich willkommen! Möchte mich auch schon vorab mal bedanken für die vielen Replys, Anregungen und Hilfestellung. THX
Solltest du einen VS10xx verwenden, ratsam natürlich das neueste Modell, dann kannst du dir diesen Vorverstärker sparen. Bei mir funktioniert das tadellos mit meiner HIFI Anlage.
Na, das klingt ja mal nach einem riesen Projekt. An SATA würde ich mich nicht drann trauen. Da braucht man bestimmt einen Controller den es wieder nirgendwo in normalen Stückzahlen gibt :) Aber der rest klingt doch ganz machbar.
Ach ja ... mit Verstärker meinte ich eine Schaltung, so das man auch Boxen direkt anschließen kann.
Was willst du überhaupt machen? Soll das Teil batteriebetrieben sein? Mobil einsetzbar? Als HIFI Ersatz?
Primär hatte ich es für die Stereoanlage vorgesehen. Allerdings könnte ich mir auch einen Einbau in mein Auto vorstellen. Batteriebetrieben hat ich eigentlich net vor, wo doch bei uns hier in Deutschland der Strom aus der Steckdose kommt. Aber im Prinzip spricht ja nichts dagegen das Gerät auch mit einem Akku zu betreiben. Da ich immer noch manchmal versuche den Planeten zu retten, kann man ja auf bestimmte Stromsparfunktionen (Hard- und Software seitig) eingehen. Das kann auch am netzgebundenen Betrieb nicht schaden...
Also ich weiß ja nicht wie wichtig dir der Ethernet Anschluss ist, aber ich denke wenn der Player ein Ethernetkabel braucht macht ein Batteriebetrieb wenig sinn. Über PoE kann man natürlich streiten.
Man muss Ethernet net unbedingt verwenden...
batteriebetrieben wird wahrscheinlich auch nur Sinn machen, wenn die Größe dementsprechend handlich ist.
Da seh ich dann schon das größere Problem =)
Hallo, falls es kein "Miniportale Unit" werden soll würde sich das NGW100 von Atmel anbieten. 1. CPU mit genug Power 2. Linux mit MP3 Softwaredecoder 3. Netzwerk 4. USB 5. SD Card Display und DAC lassen sich problemlos anloeten und AC97 Treiber gibt auch.
Hoi, hab hier mal meinen ersten Entwurf von meinem Player. Wenn jemand Lust hat kann er ja mal drüber schauen und mir Fehler bzw. Verbesserungen aufzeigen... Bin für jegliche Kritik außer "das geht so nicht, weil das so nicht geht" offen :-)
Ist ein ziemliches IC-Grab. Ich würde gleich einen Controller nehmen der Ethernet und USB integriert hat, z.B. den AT91SAM7X256/512. Da brauchst du auch keinen externen RAM und er hat einen DMA-Controller, was die SPI-Übertragung sehr beschleunigt. Als Prototyp-Hardware kannst du die SAM7X- und VS1002-Platinen von Olimex nehmen, dann musst du nicht mal den Lötkolben anwerfen. Sehe ich das richtig dass du die SD-Karte per BitBanging ansteuern willst? Wozu, der Controller hat doch zwei schöne SPI Interfaces?
Ich kann Andreas nur beipflichten... nimm einen AT91SAM7X256, der hätte schon alles "on-board" Wo ist eigentlich der Anschluss für das Display?
der SM340 bzw. SM350 von Silicon Motion Technology Corp. ist eigentlich das richtige für so eine Applikation. Leider wird es im privaten Bereich an der Beschaffbarkeit scheitern. Ist deshalb nur eine Information. http://www.siliconmotion.com.tw/en/en2/products.htm Distri: http://www.hy-line.de/index.php?id=2267#9628
Gibt es eigentlich hier was neues? Hört sich sehr interessant an, vor allem der Anschluss für eine HDD und das Anzeigen der Ordnerstruktur auf dem Display, sowie das "Browsen" durch die Ordner. Das Eval Board AT91SAM7X-EK für den AT91SAM7X256 hat doch sogar ein eingebautes Display auf dem man das realisieren könnte. Gruß, Indy
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.