MP3-Player haben ja auch oft MSD-Unterstützung, d.h. wenn Sie an einen PC angeschlossen werden verhält sich der Player wie ein USB-Stick. Die eigentliche Funktionalität (d.h. die MP3-Wiedergabe) ist nur verfügbar wenn der Player nicht über USB verbunden ist. Gibt es Controller (als zusätzlicher Baustein der mit Mikrocontroller und SD-Karte geschaltet wird) die so etwas implementieren, also die MSD-Unterstützung, FAT32 und das Schreiben auf den Flash-Speicher? Oder wird so etwas immer voll softwareseitig realisiert?
Für USB ist meist sowas wie der Cypress CY7C68300 drin. Oder eben was anderes, je nach Karten/Flash-Art. Den steckst du an Windows an, und hast eine normale Wechselplatte. Da gibts einen steuerpin, den Bus freizuschalten, wenn der MP3 Player drauf zu greifen will. Sowas hab ich auf Arbeit mal gebaut, allerdings eine ernsthafte Anwendung: Aufgelötete Flashkarte aus einem Hyperstone Controller, ein Cypress für USB 2.0 und ein DSP. Geht wunderbar. FAT32 muss der DSP dann halt machen, aber so schwer is das nicht.
Welche Aufgabe übernimnmt der Cypress Chip denn genau in diesem Aufbau? Meldet er sich nur bei Windows als MSD an, und gibt die Daten weiter zum yC? Also muss man das Dateisystem auf dem yC (oder DSP) verarbeiten?
Der Cypress übernimmt den USB <-> CF Adapter, also ein Massendatenspeicher. Der DSP muss trotzdem FAT32 beherrschen.
Hi! Interessant könnte hier auch der neue Vinculum von FTDI sein. Dies ist ein USB-Host Controller der die gesamte USB-Kommunikation auch z.B.: mit USB-Sticks übernimmt. Ein uC kann mit SPI, UART oder parallel angeschlossen werden und über die auf dem Chip integrierte Firmware wird ein einfaches Protokoll zur Datenkommunikation mit dem uC bereitgestellt. Näheres bei FTDI. ciao Fasti
Klingt interessant, aber ich suche eher nach einem Client-Controller als einem Host-Controller. @Christian R. Danke für Deine Erklärung, dieser Chip ist glaub ich genau das was ich brauche. Nur nochmal zum Verständnis. Wenn das Gerät an den PC angeschlossen ist übernimmt der Cypress-Chip die gesamte Kommunikation und das Schreiben und lesen vom Flash (im FAT32). Wenn abgeschaltet oder vom yC angefordert hat der yC die Kontrolle über den Flash und kann die Dateien einlesen und verarbeiten. Stimmt das so in etwa?
Wenn du einen MP3-Player an einem Mikrocontroller betreiben willst, suchst du nach einem HOST-Controller. Sowas gibt es auch als Huckepack-Platine (hier im Forum mal nach USB-HOST suchen). Da ist dann ein ARM drauf, der so tut als wäre er ein HID, MSD oder sonst was. Der Firmenname ist mir leider entfallen (ich dachte es wäre "Wiznet", ist es aber nicht). Übrigens wird der USB-Stack in meist Software realisiert.
Ersetze "Flash" mit IDE/ATAPI-Gerät und das wiederum durch eine CF-Karte im TrueIDE-Modus, und Du hast recht. Für das Dateisystem interessiert sich die USB-IDE-Bridge übrigens nicht, das wird vom Host (also vom PC) verwaltet. Unterhalb 2 GByte Kartenkapazität kann es also auch FAT16 sein.
Genau so ist es. die Cypress Dinger sind preiswert und leicht erhältlich, CF-Karten werden auch immer größer und billiger. Musst halt auf deinem µC dann FAT implementieren und sicherstellen, dass nur ein Controller auf das ATA Gerät zugreift. Ist aber in einer Appnote von Cypress gut beschrieben.
:) Das hört sich prima an, genau sowas hab ich gesucht Könnt ihr mir einen Händler empfehlen, wo man diese Chips billig bekommt, oder sind die überall gleich teuer?
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.