Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Grundsätzlich werden alle netX-basierten Feldbus-Geräte erst mit einer Firmware sowie einer Konfiguration in die Lage versetzt, einen bestimmten Protokoll-Stack auszuführen. Diese müssen über die Host-Schnittstelle (PCI; PCIe; SPI etc.) heruntergeladen werden. So genannte Sogenannte "RAM-based Devices" (CifX-Karten) verfügen über keinen persistenten Speicher für Firmware und Konfiguration und werden daher bei jedem Gerätestart vom Treiber mit beidem versorgt. Sie werden in diesem Fall direkt auf dem RAM des Geräts geladen und unmittelbar ausgeführt. Ein Spannungsabfall hat den Verlust von Firmware und Konfiguration im RAM zur Folge und die Prozedur muss von vorne vorn begonnen werden.

Ob RAM- oder Flash-basierte Devices, in beiden Fällen übernimmt normalerweise der Geräte-Treiber die Aufgabe, die benötigen Dateien herunterzuladen. Zu diesem Zweck verfügt der Treiber über ein definiertes Grund-Verzeichnis, das bei der Installation des Treibers angelegt wird:

...

Der Treiber nimmt die Firmware- (.nxf) sowie Konfigurations- (.nxd) Datei aus diesem Verzeichnis, um sie auf das Gerät zu laden. Bei Flash-basierten Geräten findet ein Download nur statt, wenn eine Differenz zwischen den Software-Ständen festgestellt wird.

...

Befindet sich ein Gerät im Auslieferungszustand, stellt dieses ein vereinfachtes DPM-Interface zur Verfügung (vgl. folgende Abbildung). Die Größe des DPM ist auf 64KByte (16KByte / 8KByte) begrenzt und ermöglicht so keinen Download einer Firmware-Datei. Daher muss das Gerät zunächst mit einem so genannten sogenannten 2nd-Stage-Bootload versorgt werden.

...

Der 2nd-Stage-Bootloader kann in Form einer Datei an das Gerät übertragen werden. Die verschiedenen Dateien, für verschiedene Gerätetypen, befinden sich im oben genannten Grundverzeichnis Grund-Verzeichnis des Treibers. Die 2nd-Stage-Bootloader verbergen sich in den NETX***-BSL.BIN-Dateien. Beispielsweise wird für eine CifX-Karte die NETX100-BSL.BIN-Datei benötigt.

...

Wurde der 2nd-Stage-Bootloader erfolgreich hochgeladen und gestartet, wird der DPM neu organisiert und eine vereinfachte System-Mailbox bereitgestellt, vergleichbar mit der bekannten Channel-Mailbox. Die Mailbox ermöglicht nun das segmentierte Übertragen größerer Dateien wie der Firmware-Datei.

...

Grundsätzlich besteht auch die Möglichkeit, sich dieses Vorgehen im cifX/netX-Toolkit in Form von Quellcode anzusehen. Im Toolkit sind die Methoden der Treiber implementiert. Dies dient dem Kunden dazu eigene Treiber, ggf. für nicht unterstützte Betriebssysteme oder Plattformen, zu implementieren. Konkret ist hier die cifXInit.c interessant. Die Datei beinhaltet die cifXStartBootloader_hboot(…)-Funktion. Sie implementiert das oben geschilderte Vorgehen.

cifX/netX-Tookit: https://kbhilscher.hilscheratlassian.comnet/wiki/pages/viewpage.action?pageId=2280819880904557


File Handling

Innerhalb des Basis-Verzeichnisses (siehe oben) wird für jedes Gerät, das im PC installiert ist, ein Ordner nach folgendem Schema angelegt.

...

Hinweis: Für die normale Feldbus-Kommunikation wird grundsätzlich Channel0 verwendet. Channel1 kann für einen Multi-Channel Multichannel Betrieb oder Spezial-Anwendungen herangezogen werden. Erstere erfordert ein Endgerät mit entsprechender Hardware-Ausstattung.

...