You are on page 1of 6

Bibliotheksbeschreibung:

CoDeSys V 3.x
SysComAsync.library

libdoc_d.dot / V1.0

Dokument Version 1.0

3S - Smart Software Solutions GmbH


SysComAsync_V3x_D.doc

Seite 1 von 6

SysComAsync.library

INHALT
1

BERBLICK

BIBLIOTHEKSBAUSTEINE

4
6

libdoc_d.dot / V1.0

NDERUNGSHISTORIE

3S - Smart Software Solutions GmbH


SysComAsync_V3x_D.doc

Seite 2 von 6

SysComAsync.library

berblick
Hinweis: Es hngt vom verwendeten Zielsystem ab, welche Systembibliotheken im Steuerungsprogramm verwendet
werden knnen.

Diese Bibliothek untersttzt die asynchrone, serielle Kommunikation mit einem Zielrechner.
Sie enthlt automatisch die Bibliothek SysCom.library fr synchrone Kommunikation, deren
Bausteine sie als Basis fr die entsprechende asynchrone Funktionalitt verwendet. Dazu
stellen die Bausteine der SysCom.library ihre Parameter in entsprechenden Strukturen der
SysComAsync.library zur Verfgung und knnen von deren Methoden und WrapperMethoden verwendet werden.

libdoc_d.dot / V1.0

Hinweis: Die Bibliothek verwendet fr die asynchrone Abwicklung der Aufgaben die Basis-Bibliothek
CmpAsyncMgr.library. Daher muss im Laufzeitsystem die Komponente CmpAsyncMgr verfgbar sein!

3S - Smart Software Solutions GmbH


SysComAsync_V3x_D.doc

Seite 3 von 6

SysComAsync.library

Bibliotheksbausteine
Da die Async-Funktionalitt fr die Dateizugriffe auf Basis der SysCom.library-Bausteine ber
Wrapper-Methoden und gemeinsam verwendete Strukturen (DUTs) erreicht wird, erwarten
alle Async-Methoden immer folgende Eingabeparameter:
Input-Variable

Datentyp

Beschreibung

pParam

POINTER TO
t<Funktion der
SysCom.library>

Zeiger auf die Struktur, die die Parameter der


entsprechenden SysCom.library-Funktion enthlt.

POINTER TO
UDINT

Zeiger auf den aktuellen Status:

pudState

z.B. Struktur tSysComOpen

ASYNCSTATE_INVALID
: UDINT := 16#FFFFFFFF;
ASYNCSTATE_PENDING
: UDINT := 0;
ASYNCSTATE_ACTIVE
: UDINT := 1;
ASYNCSTATE_READY
: UDINT := 2;
ASYNCSTATE_ERROR
: UDINT := 3;
ASYNCSTATE_TIMEOUT
: UDINT := 4;

pResult

POINTER TO
UDINT

Zeiger auf Fehler-Code, siehe Dokument Runtime


Error Codes.

Die Funktionen:
SysComOpen
SysComOpen2
SysComPurge
SysComRead
SysComSetSettings
SysComSetTimeout
SysComGetSettings
SysComClose
SysComWrite
Die Funktionen verwenden folgende Strukturen und Enumerationen:
ComSettings
ComSettingsEx
libdoc_d.dot / V1.0

COM_Baudrate
COM_Parity
COM_Ports
COM_StopBits
COM_Timeout
3S - Smart Software Solutions GmbH
SysComAsync_V3x_D.doc

Seite 4 von 6

SysComAsync.library

Fr jede der Methoden


<Methodenname>Wrapper

wird

eine

entsprechende

Wrapper-Methode

aufgerufen:

Die Strukturen (DUTs, Data Unit Types) sind nach folgender Syntax benannt:
t<Funktion der SysCom.library>. Beispiel: tSysComOpen.
Der Rckgabewert jeder Funktion wird in dem Struktur-Element pulOut bzw. pOut oder
pszOut zurckgegeben.
Der Status beim Starten des asynchronen Auftrages ist immer ASYNCSTATE_INVALID.
Beispiel:
DECLARATION:
udStateOpen: UDINT := ASYNCSTATE_INVALID;
ParamOpen : tSysComOpen;
TestFB : SysComAsyncFB;
Result: UDINT;
IMPLEMENTATION:
ParamOpen.pResult := adr(Result);
ParamOpen.pulOut := adr(hCom);
ParamOpen.wPort := 1;
hJob := TestFB.SysComOpenAsync(adr(ParamOpen), adr(udStateOpen),
adr(Result));

Bei Aufruf der SysComOpenAsync-Methode wird der asynchrone Auftrag gestartet. Der
Auftrag ist beendet, wenn der Status einer der 3 Werte annimmt:
ASYNCSTATE_READY: Auftrag erfolgreich abgeschlossen
ASYNCSTATE_ERROR: Auftrag mit Fehler abgeschlossen
ASYNCSTATE_TIMEOUT: Timeout fr den Auftrag abgelaufen, bevor Auftrag
abgeschlossen werden konnte.

libdoc_d.dot / V1.0

Die Beschreibung der Parameter knnen Sie der Dokumentation zur SysCom.library in den
Kapiteln zu den entsprechenden Funktionen entnehmen.

3S - Smart Software Solutions GmbH


SysComAsync_V3x_D.doc

Seite 5 von 6

SysComAsync.library

nderungshistorie
Beschreibung

Datum

0.1

Erstellung

15.07.2007

0.2

Stati und Ablaufbeschreibung erstellt

03.08.2007

1.0

Formaler Review, Freigabe

09.08.2007

libdoc_d.dot / V1.0

Version

3S - Smart Software Solutions GmbH


SysComAsync_V3x_D.doc

Seite 6 von 6

You might also like