Forum: Mikrocontroller und Digitale Elektronik USB Client, standard Massenspeicher Treiber?


von Tobias R. (wildcard)


Lesenswert?

Hi,
ich bin soweit, daß ich mit meinem AVR (Mega128) auf eine SD bzw. MMC
Karte schreiben kann, sogar mit FAT16. Die Karten sind wunderbar lesbar
unter Windows mit einem Kartenleser.
Jetzt schwebt mir vor, das ganze auch via USB zu realisieren, so daß in
Windows der Standard USB Massenspeicher treiber geladen wird. Also im
Prinzip einen "USB Stick" nachbauen, der seine Daten auf einer MMC
Karte speichert.
Für die MMC Karte hab ich mich entschieden, da das abspeichern von
Daten da relativ einfach funktioniert, leider kann ich sie nicht
jedesmal aus dem Speicherslot ziehen, wenn ich an die Daten möchte, und
nicht jeder User hat einen Kartenleser bzw. den neusten Aldi PC :)

Technisch gesehen brauche ich nun einen USB Client chip, right?
Hab mir hier:
http://www.beyondlogic.org/usb/usbhard.htm
mal ein paar Chips angeschaut, und bin kurz davor mal mit einem von
Phillips (PDIUSBD11) zu experimentieren.

Hat jemand Erfahrung mit diesem Vorhaben? Wie aufwendig ist es, daß
mein Device mit diesem standard Treiber für Massenspreicher
zusammenarbeitet?
Ist vieleicht ein anderer Chip als der PDIUSBD11 oder 12
empfelenswerter?

Vielen Dank schonmal!

von nemcron (Gast)


Lesenswert?

Der PDIUSBD11 ist abgekündigt, evtl. also nicht unbedingt günstig den zu
verwenden. Von Maxim gibts allerdings Alternativ-Typen.
Der USBN9604 von national wird glaube ich auch recht häufig verwendet.

http://www.mikrocontroller.net/articles/USB

von Tobias R. (wildcard)


Lesenswert?

Okey, am wichtigsten ist mir dass ich auf Treiber Seite keine große
Arbeit habe und der Chip im Prinzip "von allein" als Massstorage
Device erkannt wird.
Kann mir wer da einen Chip empfehlen? Bin trotzdem grad dabei die
Seiten abzuklappern...

von nemcron (Gast)


Lesenswert?

...sofern deine USB-Hardware die "Mass Storage Class" implementiert
brauchst du dich um Treiber wohl nicht zu kümmern:
http://www.usb.org/developers/devclass_docs#approved (siehe "Mass
Storage")

Das zu implementieren dürfte bei den genannten Chips ähnlich schwierig
sein.

von Jörn G. aus H. (Gast)


Lesenswert?

Es gibt inzwischen (von Sandisk) diese Flashkarten mit eingebautem
USB-Reader.
Man klappt einfach die halbe Flashkarte ab und steckt den winzigen
hervorstehenden Rest in eine USB-Buchse und die Karte wird als
Masstorage USB2.0-Festplatte sofort erkannt und funktioniert wunderbar
schnell. Wenn du das selber baust, dann wirst du sicher allerhöchstens
(mit großem Aufwand wegen Massstorage-Implementierung) ein paar
langsame KB/sec hinbekommen.

Siehe hier:
http://www.4data.de.vu/sandisk.html

jörn

von Tobias R. (wildcard)


Lesenswert?

Danke! Werde da ich ja wirklich nix anderes als Mass-Storage vorhabe,
mich nicht mit der eigenen Firmware/Treiber beschäftigen, da auch keine
special Funktionen notwendig sind.
Werde mir einen der sehr preiswerten USB MultiCard Reader besorgen,
aufschrauben und den interssanten Teil schlicht benutzen bzw. so
modifizieren dass er  sobald ein USB Kabel verbunden ist den AVR zum
schweigen bringt und ansonsten von eben diesem mit Daten gefüttert
wird.

Da ich in FAT16 die Karten vom AVR beschreiben lasse, sehe ich da keine
Probleme und die Preise dieser Reader sind wirklich unschlagbar...

Deine Karte ist natürlich sehr interessant, aber ich habe den Platz :)

von Jörn G. aus H. (Gast)


Lesenswert?

Schlimmer, als den AVR ruhig zu stellen dürfte es sein, den
USB-Controller ruhig zu bekommen, wenn USB ab ist und er damit also
keinen Saft mehr hat.
Evtl. Saft über deine Spannungsversorgung sicherstellen, anstatt über
USB und den Enable-Pin des Controllers suchen. Meistens haben die so
einen, damit du dessen Ausgänge hochohmig schalten kannst und dann mit
dem AVR auf die Karte zugreifen kannst.

jörn

von Jens D. (jens) Benutzerseite


Lesenswert?

mit einem 4053 kannst du die leitunngen trennen
musst dir dann nur aussuchen, welche seite (USB / AVR) die kontrolle
haben soll.

evtl solltest du dann auch die versorgungsspannung etwas entkoppeln (DC
/ DC Wandler)

aber was anderes stellst du deine MMC LIB hier vor? ich haette
interesse an dem schreiben von FAT16

Gruss Jens

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.