Herunterladen Diese Seite drucken

Codebeispiele; Hilfsfunktionen; 2-Byte Wert Swappen - B&R PC 300 Implementierungsanleitung

Vorschau ausblenden Andere Handbücher für PC 300:

Werbung

Panel PC 300
Implementierungsanleitung

7 Codebeispiele

In den folgenden Kapiteln sind die Codebeispiele für die gerätespezifischen Funktionen beschrieben,
z.B.: Lesen von Temperaturen und Geräteinformationen.
Hinweis:
Obwohl auf PPC300 nur ein Panel unterstützt wird, ist in allen panelspezifischen Codebeispielen der
„Panelnummer" Parameter vorhanden. Dadurch können die Codebeispiele auch für PP300/400, APC620
und PPC700 verwendet werden.

7.1 Hilfsfunktionen

Die folgenden Codebeispiele zeigen Hilfsfunktionen, die in den Codebeispielen verwendet werden.

7.1.1 2-Byte Wert swappen

Das folgende C Codebeispiel zeigt, wie die Bytereihenfolge eines 2-Byte Werts geändert werden kann.
Diese Funktion wird z.B. beim Lesen der Geräteinformationen eines Automation Panels benötigt, da eini-
ge Daten im Big Endian Format abgelegt sind.
// Swap 2 byte value.
unsigned short swapw(unsigned short w)
{
return (w >> 8) + (w << 8);
}
Listing 3: swapw – 2-Byte Wert swappen
7.1.2 4-Byte Wert swappen
Das folgende C Codebeispiel zeigt, wie die Bytereihenfolge eines 4-Byte Werts geändert werden kann.
Diese Funktion wird z.B. beim Lesen der Geräteinformationen eines Automation Panels benötigt, da eini-
ge Daten im Big Endian Format abgelegt sind.
// Swap 4 byte value.
unsigned long swapl(unsigned long dw)
{
return swapw((unsigned short)(dw >> 16)) + ((unsigned long)swapw((unsigned short)dw) << 16);
}
Listing 4: swapl – 4-Byte Wert swappen
Copyright © B&R - Änderungen vorbehalten
PPC300_Implementierungsanleitung_V1_02.doc
Codebeispiele
02.11.09
40/132

Werbung

loading