Forum: Mikrocontroller und Digitale Elektronik µC mit USB OTG oder USB-Host oder IC+µC verwenden?


von Alexander I. (daedalus)


Lesenswert?

Hallo,

es muß implementiert werden eine Hardwareplattform, die Daten von einem 
handelsüblichen USB-Stick lesen/schreiben kann. Die Daten werden dann im 
PC weiterverarbeitet, ein Dateisystem könnte ich notfalls selbst 
implementieren. An diesen Anforderungen lässt sich auch nichts drehen, 
obwohl ich selbst auch z.B. SD-Karten bevorzuge... Dazu jetzt ein paar 
Fragen:

1. Wenn ein µC einen USB OTG-Port hat, kann ich dann einen 
handelsüblichen USB-Stick (Device) da anschließen, oder muß der Stick 
dann auch USB OTG sein, damit der µC die Host-Funktion übernehmen kann?

2. Einige ARM's von NXP oder Atmel haben einen 12 MBit-tauglichen 
integrierten USB-Host. Was müßte ich da alles selbst entwickeln um ans 
Ziel zu kommen? (z.B. um Daten seriell auf den Stick zu schreiben/lesen 
ähnlich wie es der SPI-Modus bei SD-Karten erlaubt).

3. Muß ich grundsätzlich das USB-Molloch neu erfinden, wenn ich so einen 
USB-µC nutzen will und z.B. die "Mass-Storage-Device"-Klasse benötige, 
oder gibt's z.B. von NXP einen Ready-To-Use USB-Stack? (Auf deren 
bescheidener Webseite finde ich mich einfach nicht zurecht).

4. Welche Lösungsweg ist zu bevorzugen?
a) Dicker µC mit integriertem USB-Host (z.B. dicker ARM)
b) Mittlerer µC mit USB-OTG
c) Mittlerer/Schwacher µC mit separatem USB-Host-Controller, z.B. 
ISP1160 von Philips.

Vielen Dank.

von Sebastian (Gast)


Lesenswert?

Vielleicht FTDI Vinculum-Chip? USB-Host mit "Eigenintelligenz", leider 
nicht frei programmierbar, kann aber Filesystem-Handling

von Andreas W. (Gast)


Lesenswert?

1.
Der Stick muss auch USB-OTG unterstützen.

2. & 3.
Atmel hat glaube ich zur Zeit nur ARM9 mit USB-Host.
Alternativ gibt es noch die
 * ARM Cortex-M3 von Luminary Micro mit USB-OTG oder USB-Host
   (DriverLib mit USB-Stack verfügbar)
 * AVR AT90USB* von Atmel mit USB-OTG
 * AVR32 UC3 von Atmel mit USB-OTG
 * PIC32 von Microchip mit USB-OTG

4. Kommt darauf an, was der Controller noch alles machen soll.

von Alexander I. (daedalus)


Lesenswert?

@Sebastian:
Der Tip mit dem Vinculum gefällt mir gut. Das Datenblatt sieht 
vielversprechend aus. Danke das hilft mir wirklich weiter.

@Andreas:
zu 1: Gut, dann ist die OTG-Variante schonmal aus dem Rennen, da es mit 
jedem gewöhnlichen Aldi-USB-Stick funktionieren soll.

zu 2+3: Mit Atmel hast du recht. Von NXP gibts noch ARM's (LPC24xx) die 
einen USB-Host haben.

zu 4: Der Controller soll nur ein "Datenschaufler" sein, der Daten von 
verschiedenen Schnittstellen aufbereitet und sie auf dem USB-Stick 
abspeichern oder lesen soll. Also einen typische DMA-Anwendung. Die 
angeschlossenen Schnittstellen haben höchstens 200-300 kbps.

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.