Your Browser is not longer supported

Please use Google Chrome, Mozilla Firefox or Microsoft Edge to view the page correctly
Loading...

{{viewport.spaceProperty.prod}}

Programmierung der KDCS-Fehlerbehandlung

An der KDCS-Schnittstelle in C/C++ wird der Returncode kcrccc im Rückgabebereich des Kommunikationsbereichs als Character-Feld der Länge drei geliefert. Ohne die C/C++-Makros muss der Wert mittels der strncmp-Funktion überprüft werden.

Bei Verwendung der Makroschnittstelle ist die Abfrage einfacher:
Die Include-Datei kcmac.h definiert in der static-Variablen long KCRCC einen Returncode, der nach jedem Makroaufruf den integer-Wert des kcrccc-Felds enthält. Eine Fehlerabfrage beschränkt sich somit auf die Überprüfung von KCRCC.

Zum Vergleich eine Fehlerabfrage nach einem KDCS-Aufruf:

  • Bei unmittelbarem Aufruf:

    if(strncmp(kb->rti.kcrccc,"000",3) != 0) ...

  • Bei Verwendung eines Makros:

    if (KCRCC != 0) ...

Um eine bessere Diagnose zu gewährleisten, werden bei Verwendung der Makros alle nicht benutzten Parameter vor einem KDCS-Aufruf automatisch auf binär null gesetzt. Somit enthält der gesamte Parameterbereich einen genau definierten Inhalt. Bei einem Fehler kann der Parameterbereich gezielt überprüft werden, jede Abweichung vom vorgesehenen Inhalt wird entdeckt.