USB-Stick-Interface STI 100 Teil 1/2

0,00
Aus ELVjournal 05/2007     0 Kommentare
 USB-Stick-Interface STI 100 Teil 1/2
Bausatzinformationen
ungefähr Bauzeit(Std.)Verwendung von SMD-Bauteilen.
10,25OK6/07

Inhalt des Fachbeitrags

PDF- / Onlineversion herunterladen

Technische Daten

5 VDC, stabilisiert
Stand-by: 20 mA, Normalbetrieb: 150 mA
TTL (3,3 V)
USB-Buchse, Typ A, Stiftleiste
64 x 15 x 35 mm

So günstig und mit reichlich Speicherkapazität sie erhältlich sind, im Gegensatz zu anderen Speichermedien ist die Integration von USB-Sticks in eigene Schaltungsapplikationen ein kaum zu überwindendes Hindernis. Das Interface STI 100 bietet die Möglichkeit, einen USB-Stick einfach per UART- oder SPI-Schnittstelle anzusprechen. Der zugehörige Befehlssatz unterstützt vielfältige Dateioperationen, so dass die Verarbeitung von gesammelten Messwerten genauso möglich ist wie die Nutzung von auf einem PC erzeugten Daten (z. B. Konfigurationen) in der eigenen Schaltung.

USB-Stick für Eigenes nutzen

Speicherkarten für Digitalkameras, MP3-Player oder USBSticks für den PC sind mittlerweile Massenartikel und dementsprechend sehr günstig erhältlich. Auch nimmt die Speicherkapazität immer weiter zu, so dass riesige Datenmengen einfach und handlich transportiert werden können. Dem begeisterten Schaltungsentwickler bleiben diese Speichertechnologien jedoch meist verwehrt, da der Aufwand der Integration immens ist. Findet man für SD- oder MMC-Karten noch zahlreiche Hilfen im Internet, wird es bei der Verwendung von USB-Sticks schon schwierig. Denn hier muss nicht nur das Dateisystem (FAT, FAT32) verwaltet, sondern auch noch ein USB-Host samt „Mass Storage Device Class“ zur Verfügung gestellt werden. Eine reine Software-Implementierung mit Hilfe von Standard-Mikrocontrollern ist daher fast unmöglich und für den normalen Anwender nicht realisierbar.
Mit dem USB-Stick-Interface STI 100 jedoch wird die Nutzung eines USB-Sticks für den Schaltungsentwickler zum Kinderspiel. Zur Einbindung in eigene Hardwareprojekte muss nur eine serielle Schnittstelle wie UART (bevorzugt) oder SPI vorhanden sein und eine 5-V-Versorgungsspannung zur Verfügung gestellt werden. Der Anschluss erfolgt über eine simp le 6-polige Stiftleiste und ist damit schnell und einfach zu realisieren. Es sind keine Kenntnisse über USB-Spezifikationen und Protokolle oder über die Dateisysteme FAT, FAT32 notwendig. Dies wird vollständig von der intelligenten Hardware auf dem STI 100 übernommen. Ein umfangreicher, aber einfach beherrschbarer Befehlssatz genügt, um mit dem USBStick zu kommunizieren und Dateioperationen auszuführen. Damit steht dem ambitionierten Elektroniker ein universell einsetzbares Interface für eigene Applikationen wie etwa Datenlogger, Sound-Recorder und ähnliche Anwendungen zur Verfügung. Betrachten wir kurz die Grundlagen des USB sowie des FATDateisystems, bevor wir zur Beschreibung des Kernstücks der Schaltung, des USB-Controllers, kommen.

Universal Serial Bus

Der USB ist ein serielles Bussystem, dass allerdings physikalisch nur Punkt-zu-Punkt-Verbindungen realisiert. Startpunkt dieser Verbindungen ist der zentrale Host-Controller, an den bis zu 127 USB-Geräte angeschlossen werden können. Stellt der Host nicht genügend Anschlüsse zur Verfügung, können Hubs zwischengeschaltet werden, um weitere Geräte anzuschließen. Nur der Host-Controller kann Daten eines Gerätes lesen oder Daten schreiben, des Weiteren darf ein Gerät nur auf Anfrage des Hosts Daten senden. Die maximale Datenübertragungs rate beträgt 12 MBit/s (USB 1.1) bzw. 480 MBit/s (USB 2.0). Es sind verschiedene Geräteklassen spezifiziert, die es dem Host ermöglichen, Geräte ohne gerätespezifischen Treiber anzusprechen wie z. B. Tastatur, Maus, Kartenleser, USB-Stick.

FAT-Dateisystem

Das Dateisystem ist im Betriebssystem integriert, es ordnet die Daten, die auf einem Datenträger gespeichert sind, und ermöglicht den Zugriff auf diese Daten. Unter dem Microsoft- Betriebssystem „Windows” wird das FAT-Dateisystem verwendet. Der gesamte Speicherbereich des Datenträgers wird in eine feste Anzahl von Clustern aufgeteilt. Die Größe der Cluster hängt damit von der Gesamtkapazität ab. Dateien belegen immer mindestens einen Cluster, ist die Datei größer, werden mehrere Cluster verwendet. In einer Tabelle wird festgehalten, welche Cluster von einer Datei belegt werden oder frei sind.

Der USB-Controller des STI 100

Bild 1: Interner Aufbau des USB-Controllers Vinculum VNC1L
Bild 1: Interner Aufbau des USB-Controllers Vinculum VNC1L
Der USB-Controller des Typs Vinculum VNC1L (Abbildung 1) ist eine Ein-Chip-Lösung, die alle oben genannten Anforderungen zur Nutzung eines USB-Sticks erfüllt. Der VNC1L integriert einen USB-Host-Controller sowie einen 8-Bit-Mikrocontroller mit 32-Bit-Coprozessor und 64-kB-Programmspeicher (Flash). Dadurch ist dieser Chip sehr universell und auf unterschiedliche Anforderungen anpassbar.
Bild 2: Schematische Darstellung der VNC1L-Firmware vom USB-Controller
Bild 2: Schematische Darstellung der VNC1L-Firmware vom USB-Controller
Der Hersteller stellt unterschiedliche Firmwareversionen zur Verfügung, die prinzipiell wie in Abbildung 2 dargestellt aufgebaut sind. Die Daten werden vom USB-Port gelesen und über die gewählte Schnittstelle ausgegeben. Das Schreiben von Daten erfolgt entsprechend in umgekehrter Richtung. Die Firmware steuert dabei den Datenverkehr, indem es die Befehle über den Command-Monitor empfängt und die entsprechenden Leseoder Schreibaktionen auslöst.

Der Befehlssatz

Um Zugriff auf Dateien und Ordner des USB-Sticks zu erhalten, ist ein umfangreicher Befehlssatz in den VNC1L integriert. Der Befehlssatz ist in zwei Versionen vorhanden, einmal als erweiterter ASCII-Befehlssatz, der andere ist als 8-Bit-Befehlssatz, zur vereinfachten Nutzung durch Mikrocontroller, ausgeführt. Mit den ASCII-Befehlen ist eine bequeme Nutzung auch per Terminalprogramm möglich. Eine Übersicht der wichtigsten Befehle ist in Tabelle 1 dargestellt, welche die Syntax, Beschreibung und die entsprechenden Rückgaben enthält.

Tabelle 1: Der Befehlssatz für die Kommunikation mit dem USB-Stick und Datei-Operationen
Tabelle 1: Der Befehlssatz für die Kommunikation mit dem USB-Stick und Datei-Operationen

Eine ausführliche Beschreibung der Firmware erfolgt im „Vinculum Firmware User Manual”, das unter www.vinculum.com/documents.html#vfwspecs erhältlich ist. In Tabelle 2 sind mögliche Fehlermeldungen des VNC1L dargestellt.

Tabelle 2: Die Liste der möglichen Fehlermeldungen des STI 100
Tabelle 2: Die Liste der möglichen Fehlermeldungen des STI 100
Im Teil 2 beschäftigen wir uns mit der Schaltungstechnik, dem Nachbau sowie der Inbetriebnahme des STI 100.

Fachbeitrag online und als PDF-Download herunterladen

Inhalt

Sie erhalten den Artikel in 2 Versionen:

online  als Online-Version

pdf  als PDF (5 Seiten)

Sie erhalten folgende Artikel:
  • USB-Stick-Interface STI 100 Teil 1/2
    • 1 x Journalbericht


Hinterlassen Sie einen Kommentar:
  Name
  E-Mail
 
1