Forum: Mikrocontroller und Digitale Elektronik Kopieren von USB- Datenträgern


von Hans (Gast)


Lesenswert?

Ich habe für mein Wohnmobil einen Mp3 Player mit 2,5" HD mit ATmega128
und Decoderchip gebaut.
Funktioniert prächtig.
Jetzt suche ich nach einer Möglichkeit, um die Bilder meiner
Digitalkamera (meldet sich unter Windows als USB Datenträger) auf die
HD zu kopieren.
Gibt es dafür fertige Chips?

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

Es gibt fertige und nicht sonderlich teure Geräte, die Daten von einem
"Mass Storage Device" (USB-Massenspeicher) auf ein anderes kopieren
können; Du müsstest also "nur" Deinen mp3-Player zu einem solchen
USB-Massenspeicher machen. Das geht mit einem Chip, einer
USB-to-IDE-Bridge von Cypress*. Die wird parallel zum mp3-Player an die
IDE-Platte angeschlossen, Du musst nur sicherstellen, daß der mp3-Player
bei aktiviertem USB keine Festplattenzugriffe durchführt. Dazu bietet
die USB-zu-IDE-Bridge eine Signalleitung, die Dein mp3-Player
ensprechend auswerten muss.

Wenn Du Dir nicht so einen kleinen USB-zu-USB-Kopierer anschaffen
willst, wird die Angelegenheit deutlich komplexer; Du müsstest einen
USB Host-Controller (oder einen USB OTG-Controller) in Deinen
mp3-Player integrieren und den erforderlichen USB Host Stack nebst
Massenspeicherunterstützung auf Deinem Mega128 zum laufen bekommen,
sowie mittels Dateisystemtreiber lesend auf angeschlossene
USB-Massenspeicher zugreifen und schreibend auf Deine Platte zugreifen
können ...


*) CY68300A, gibt's bei Segor für knapp 14 EUR. Datenblatt und
Technotes gibt's bei Cypress.

von Hans (Gast)


Lesenswert?

Das mit der Bridge klingt gut.
Danke!

von Hans (Gast)


Lesenswert?

Ich hätte noch eine Frage:
Angenommen, ich möchte die Festplatte auch an ein EPIA Board
anschließen, welche Schaltung müsste ich dann zwischen Mp3 Player ,
Festplatte und dem IDE Interface auf dem Board hängen, damit ich
umschalten kann?

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

Du musst über entsprechende Bustreiber das IDE-Interface elektrisch
trennen und sicherstellen, daß ein Umschalten zwischen den
verschiedenen Teilnehmern nicht etwaige auf ihnen laufende
Betriebssysteme oder Firmware durcheinanderbringt. Das ist gerade im
Zusammenhang mit einem PC ziemlich ... tricky. Die Platte darf erst
dann vom PC getrennt werden, wenn der vollständig heruntergefahren
ist.
Desweiteren müssen die Bustreiber auch ausreichend schnell sein, wenn
nicht das IDE-Interface des EPIA-Boards künstlich gedrosselt (sprich:
in den PIO-Modus versetzt) wird. Bereits ein UDMA33-Interface  dürfte
für einfache handgestrickte Logik 'ne Nummer zu schnell sein (Bedenke
die Durchlaufverzögerungen). Auch müsstest Du Dich ausführlich mit den
Signalen der IDE-Schnittstelle im UDMA-Betrieb auseinandersetzen, damit
Du diese korrekt mit Bustreibern in der richtigen Richtung
verschaltest.

Deutlich sinnvoller erscheint mir daher der Anschluss der Platte an
andere Hardware über das dann ja eh vorhandene USB-Interface.
Das ist ausreichend schnell (wenige 2.5"-Festplatten sind überhaupt in
der Lage, eine Datenrate zu liefern, die von einem USB2.0-Interface
begrenzt würde) und dürfte die Menge der auftretenden Probleme deutlich
reduzieren.

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
Noch kein Account? Hier anmelden.