Forum: Mikrocontroller und Digitale Elektronik FT245 als Massenspeicher?


von Hannes Hering (Gast)


Lesenswert?

Hallo,

ich hab jetzt alle Möglichkeiten eine USB-Verbindung zum PC aufzubauen
durchgespielt und letztendlich eingesehen, das der FT245 für meinen
Fall am einfachsten zu Handhaben ist. Mich würd jetzt nur noch
interessieren, ob man dem PC mit dem FT245 ein Massenspeichergerät
"vorspielen" kann. Falls es nicht geht werd ich wohl oder übel ein
Prog selber schreiben müssen, das die Files auf das Board überträgt ...
mpf

MFG

Hannes

von Rufus T. Firefly (Gast)


Lesenswert?

Nein, das vom FT245 implementierte USB-Protokoll kann nicht geändert
werden, so daß damit kein "Mass Storage Device" implementiert werden
kann.

Wenn es bei Deinem Gerät eine Festplatte/CF-Karte vorhanden ist und es
nur um die Übertragung von Dateien geht, dann lohnt es sich, einen
Cypress-Chip näher anzusehen (siehe Thread "USB-Massenspeicher").
Dieser ist eine USB2-IDE-Bridge und übernimmt ohne weitere
Programmierung das gesamte USB-Festplattenhandling.
"Deine" Aufgabe ist's dann nur noch, herauszufinden, ob gerade eine
Verbindung zum USB-Host besteht (und dann die Füße stillzuhalten) und
im anderen Falle mit von Dir selbst zu schreibenden Dateisystemtreibern
auf die IDE-Platte/CF-Karte zuzugreifen.

von Hannes Hering (Gast)


Lesenswert?

Un wo bekomm ich nen Cypress Chip? Hab noch keinen Händler gefunden ...
nen Chip gäbs ja schon ...

von jens uwe (Gast)


Lesenswert?

Was ist den die genaue beziechnung des Cypress Chips?

von Rufus T. Firefly (Gast)


Lesenswert?

http://www.cypress.com/products/datasheet.cfm?partnum=CY7C68300

Den kann man bei Segor kaufen.

Näheres im Thread "USB Speicher realisierbar" (so heißt der).

von Selecta (Gast)


Lesenswert?

Und wie siehts mit einem FT232BM aus? Kann man damit einen
Massenspeicher realisieren?

von Matthias (Gast)


Lesenswert?

Hi

nein. Ist der gleiche Treiber.

Matthias

von Rufus T. Firefly (Gast)


Lesenswert?

Daß man mit USB-Interface-Chips wie dem FT245/232 kein USB Mass Storage
Device implementieren kann, liegt nicht am Treiber (auf der PC-Seite),
denn den würde man bei einem MSD ja gar nicht benutzen.

Vielmehr liegt das daran, daß diese Chips "abgeschlossene"
USB-Devices sind, bei denen man als Anwender die eingebaute
USB-Firmware überhaupt nicht beeinflussen kann.

Um selbst irgendwelche USB-Funktionalitäten zu implementieren, muss man
ein USB-Interface-IC verwenden, bei dem man den USB Device Stack selbst
in der Hand hat - wo dieser also auf einem selbstprogrammierten
Microcontroller läuft.
Die FTxxx-ICs sind gewissermaßen "black boxes", in denen ein nicht
umprogrammierbarer Microcontroller vor sich hin werkelt.

Realistische Chancen hat man entweder mit Microcontrollern mit
eingebautem USB-Interface (Cypress EzUSB) oder aber mit externen
USB-Interfaces wie dem Philips PDIUSBD11/12.

Darauf aufbauend ein Mass Storage Device aufzubauen, ist allerdings
eine heftige Aufgabe - wie in einem anderen ausführlichem Thread
bereits ausführlich diskutiert, implementiert ein MSD nur einen
einfachen Blockzugriff auf ein (großes) Speichermedium. Die Verwaltung
des Dateisystems darauf wird vom angeschlossenen PC übernommen.
Daher darf dieses nur dann mit Inhalten gefüllt werden, wenn es nicht
mit einem PC verbunden ist oder aber nur vom PC über USB.
Ein einfacher dauerhafter Dateizugriff der Art "Microcontroller
schreibt Datei in Speicher, PC kann diese über USB sehen" ist mit
einem MSD nicht realisierbar.
Das entspräche dem gleichzeitigen Anschluss einer Festplatte an zwei
PCs - hier bekommt der eine PC auch nicht mit, daß ihm hinterrücks die
Daten geändert werden, wenn der andere PC auf die Platte schreibt.

Solche Lösungen sind nur mit Systemen umsetzbar, bei denen das
Dateisystem vom Microcontroller und eben nicht vom PC gehandhabt wird.
Das ist beispielsweise bei embedded Web-Servern der Fall, diese aber
werden nicht via USB, sondern über Netzwerkinterfaces angeschlossen.

Der von mir früher in diesem Thread erwähnte Cypress-Controller ist nur
dann zu nutzen, wenn das betreffende Gerät nur gelegentlich mit einem PC
verbunden wird - wie es bei festplattenbasierten mp3-Playern ja nun der
Fall ist.
Ein transparenter Dateisystemzugriff ist auch hier aus gerade erwähnten
Gründen nicht möglich.

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.