Hardware Reference
In-Depth Information
USB Device Stack genannt, gelegentlich findet sich auch die Bezeichnung Embedded
USB Device Stack, weil dieser Teil der Software in die gesamte Gerätesoftware einge-
bettet werden muss. Damit aber noch nicht genug, muss ja auch ein Informations-
austausch mit der Anwendungsebene der Gerätesoftware stattfinden. Diese Arbeit
wird weitgehend von zwei Programmteilen geleistet, die Bestandteil der Message
Exchange Protocol Funktion (MEP) der Gerätesoftware sind (siehe Abschnitt 10.1).
DerParseruntersuchtüberdenBulk-OUTEndpointankommendeDatendarauf,
ob gültige Fernsteuerbefehle an das Gerät übermittelt wurden. Der Response For-
matter formatiert die Antworten, die das Gerät gegebenenfalls über den Bulk-IN
Endpoint an den Host sendet. Letzte Stufe der Gerätesoftware ist dann die Anwen-
dungsebene (Application Layer), jener Programmteil, der die eigentliche Geräte-
funktion ermöglicht. Hier werden auch Fernsteuerbefehle ausgeführt und Antwor-
ten erzeugt. Alles das wird in den folgenden Abschnitten systematisch behandelt.
5.1 Konfiguration der USB-Schnittstelle
Der erste Schritt auf dem Weg zum Einsatz der USB-Schnittstelle besteht in der
Konfiguration der Hardware des Mikrocontrollers. Die dazu erforderlichen Überle-
gungen haben zunächst weniger mit der USB-Thematik zu tun, sondern werden
von den Eigenarten des gewählten Mikrocontrollers festgelegt. Verwender des
PIC18F4550 müssen sich dabei zunächst um die Konfigurationsregister dieses Deri-
vats kümmern. Die Konfigurationsregister verhalten sich wie FLASH-Speicher und
sind im Adressbereich ab 0x300000 zu finden. Dieser Speicherbereich ist nur über
Tabellen-Schreib- und Lesezugriffe erreichbar [DataSheet: 25.1]. Der Inhalt dieser
Konfigurationsregister wird üblicherweise einmal festgelegt, wenn der FLASH-Spei-
cher des Mikrocontrollers mit der Anwendungssoftware programmiert wird. Die
Festlegung des Inhalts der Konfigurationsregister erfolgt im Quellcode über die
Assemblerdirektive CONFIG [MPASM: 4.12]. Die mit der Direktive verknüpften
Werte (setting=value), sind abhängig vom eingesetzten PIC18-Derivat. Im „PIC18
Configuration Settings Addendum“ werden auf den Seiten 175 bis 179 die für den
PIC18F4550 geltenden Werte aufgelistet [Addendum]. Der Anwender muss
zunächst nur diejenigen Konfigurationsbits beachten, deren Hardwareeinstellungen
seine aktuelle Konfiguration beeinflussen. Für Hardwarefunktionen, die nicht ver-
wendet werden, muss allerdings geprüft werden, ob ihre Konfiguration uner-
wünschte Nebeneffekte haben könnte. Für den Betrieb der USB-Peripherie von
PIC18F4550, wie sie im PICDEM FS USB DEMO-BOARD und im Beispielgerät
eingesetzt wird, muss zunächst die Konfiguration der komplexen Takterzeugung
festgelegt werden. Im folgenden Bild wird das gesamte Oszillatormodul von
PIC18F4550 dargestellt, der wesentliche Signalpfad wurde in dieser Darstellung
Search WWH ::




Custom Search