|
ZTEX EZ-USB FX2 SDKDas SDK ist speziell für die ZTEX Boards entwickelt, funktioniert aber auch mit anderer EZ-USB FX2 basierter Hardware. Das SDK besteht aus einem Firmware-Entwicklungskit mit dazugehörigem API zur Entwicklung der Host-Software. Das Paket ist quelloffen und wird wird unter GPLv3 vertrieben. Ein einzigartiger Makro-Ansatz gibt Entwicklern ein Maximum an Flexibilität beim Konfigurieren der USB-Endpoints nur durch den Aufruf einiger Makros und ohne die Notwendigkeit des Studiums der USB-Spezifikationen. Diese Eigenschaften unterscheiden das ZTEX SDK von Entwicklungen der Konkurrenz. Das Paket läuft unter Linux und Windows (beide 32 und 64 Bit), sollte aber auch auf jeder anderen Plattform laufen, welche libusb und Java unterstützt, siehe auch Portierungsseite auf der Wiki. Die Java-Treiber-API ermöglicht die Entwicklung von plattformübergreifenden Geräte-Treibern. EigenschaftenDie Haupteigenschaften sind:
SDK ÜbersichtDas folgende Diagramm gibt einen Überblick über den Einsatz der verschiedenen Bestandteile des ZTEX EZ-USB FX2 SDK.
Die Firmware des EZ-USB FX2-Gerätes wird mit dem Firmware-Entwicklungskit erstellt. Sie kann entweder mittels eines Hilfsprogramms oder durch die Hostsoftware durch Verwendung der Java API hochgeladen werden. Die Hostsoftware besteht meistens aus einem einzigem jar-Archiv mit folgendem Inhalt:
Unter Linux hat dieses jar-Archiv keine weiteren Abhängigkeiten, da libusb(Java) direkt unter Zuhilfenahme von Kernel-Routinen mit dem EZ-USB FX2-Gerät kommuniziert. Unter Windows ist der libusb-Treiber erforderlich. (Dieser Treiber ist Bestandteil des ZTEX SDK-Paketes). Die libusb(Java)-Bibliothek kommuniziert mit dem EZ-USB FX2-Gerät über diesen Treiber. Andere ProgrammiersprachenDie JAVA-API wird benötigt, um Funktionen wie das Hochladen der Firmware und des Bitstreams in die Host-Software zu integrieren. Wird stattdessen das externe FWLoader-Werkzeug benutzt, kann die Host-Software in jeder anderen Programmiersprache geschrieben werden.Ein C-Beispiel, welches die libusb-Bibliothek für die USB-Kommunikation verwendet, ist im SDK und auf der Beispiele-Seite enthalten. SystemvoraussetzungenDie Systemvoraussetzungen für das Kompilieren der Firmware und der Treiber sind
|