Hardware Reference
In-Depth Information
Sinngemäß bezeichnet man die zugeordnete Pipe als Control Pipe. Dieser End-
punkt hat per Definition die Endpunktadresse null. Darüber hinaus lässt der Stan-
dard 15 weitere Endpunktadressen zu, denen jeweils eine Richtungsinformation
zugeordnet werden kann. Ein Endpunkt, in den Daten vom Host an das Gerät
gesendet werden, ist ein OUT Endpoint. Wenn aus dem Endpunkt Daten an den
Host gesendet werden, handelt es sich um einen IN Endpoint. Diese Richtungsbe-
zeichnung verwirrt Entwickler, die sich zum ersten Mal mit dem USB beschäftigen,
zunächst häufig, weil sie dazu neigen, die Datenflussrichtung aus der Geräteper-
spektive zu sehen, und für sie OUT somit die Richtung aus dem Gerät hinaus ist.
Gesendet werden Daten aber über den IN Endpoint, empfangen über den OUT
Endpoint. Mit 15 Adressen lassen sich also15OUTund15INEndpointsadressie-
ren. Soweit zur Theorie. In der Praxis werden die Möglichkeiten vom verwendeten
Mikrocontroller und dessen Peripheriefunktionen vorgegeben. Bei dem im Bei-
spielgerät eingesetzten Mikrocontroller wird z. B. auch der Control Endpoint aufge-
teilt, und für beide Datenflussrichtungen muss ein eigener Speicherbereich definiert
werden. Somit sind hier insgesamt 32 Endpoints zu verwalten. Wie viele Endpoints
der Anwender aber wirklich braucht, hängt letztlich von der Konfiguration des rea-
lisierten Geräts ab. Die folgende Darstellung zeigt die Konfiguration eines Geräts
der Klasse USBTMC-USB488 [USBTMC: 2].
Neben dem bidirektionalen control Endpoint benötigt das Gerät einen Bulk-OUT,
einen Bulk-IN und einen Interrupt-IN Endpoint, wenn es alle Optionen der
Schnittstelle abdecken soll. Der Geräteentwickler muss diese Endpoints einrichten
und eine Treibersoftware entwickeln, die alle Funktionen der Datenübertragung
für diese Endpoints bereitstellt. Dieser Teil der Gerätesoftware wird allgemein
Search WWH ::




Custom Search