Presence Technology GmbH+Co.KG

pt-100 Makroprogrammierung Version x.52

\BookName

pt-100 Makroprogrammierung Version x.52

Makroprogrammierung


Inhalt

8  Makroprogrammierung
    8.1  Einführung
    8.2  Anweisungen
        8.2.1  Zahlen und Bit-Operationen
        8.2.2  Textbehandlung
        8.2.3  Timer- und Timeoutbehandlung
        8.2.4  Dialog-Anweisungen
        8.2.5  Test- und Vergleichs-Befehle
        8.2.6  Sonstige Befehle
        8.2.7  Liste aller Anweisungen
    8.3  Funktionen und Ereignisse
        8.3.1  Allgemeine Funktionen und Ereignisse
            Allgemeine Funktionen
            Allgemeine Ereignisse
            Allgemeine Systemvariablen
        8.3.2  Video-Unterstützung
            Video-Funktionen
            Video-Ereignisse
            Systemvariablen
        8.3.3  Audio/Telefonie Unterstützung
            Audio Funktionen
            Audio Ereignisse
            Systemvariablen
        8.3.4  Voice/DTMF Unterstützung
            Voice/DTMF-Funktionen
            DTMF-Ereignisse
            Systemvariablen
        8.3.5  Schnittstellen-Unterstützung
            Schnittstellen-Funktionen
            Schnittstellen-Ereignisse
            Systemvariablen
        8.3.6  Auf- und Abbau von Verbindungen
            Verbindingsorientierte Funktionen
            Verbindungsorientierte Ereignisse
            Systemvariablen
        8.3.7  Schaltausgänge und Schalteingänge
            Systemvariable
        8.3.8  Alarme
            Alarmierungs-Funktionen
            Alarmierungs-Ereignisse
            Systemvariablen
        8.3.9  Netzwerk-Unterstützung
            Netzwerk-Funktionen
            Netzwerk Ereignisse
        8.3.10  Unterstützung von Benutzer-Interaktion
            Ereignisse zur Benutzer-Interaktion
        8.3.11  Zeitabhängige Steuerung
            Zeitabhängige Ereignisse
            Systemvariablen
    8.4  GUI-Dialoge
        8.4.1  Farbwerte
        8.4.2  Anordnung der Dialoge
        8.4.3  Pushbutton Dialog
            Parameter der MD-Anweisung
            Wirkung der WD-Anweisung
            Dialogereignis-Parameter
            Wirkung der QD-Anweisung
        8.4.4  Radiobutton Dialog
            Parameter der MD-Anweisung
            Wirkung der WD-Anweisung
            Dialogereignis-Parameter und QD-Anweisung
        8.4.5  Checkbox Dialog
            Parameter der MD-Anweisung
            Wirkung der WD-Anweisung
            Dialogereignis-Parameter und QD-Anweisung
        8.4.6  Entry Text, Texteingabefeld
            Parameter der MD-Anweisung
            Wirkung der WD-Anweisung
            Dialogereignis-Parameter und QD-Anweisung
        8.4.7  Entry Number, Numerisches Eingabefeld
            Parameter der MD-Anweisung
            Wirkung der WD-Anweisung
            Dialogereignis-Parameter und QD-Anweisung
        8.4.8  Slider, Schieberegler Dialog
            Parameter der MD-Anweisung
            Wirkung der WD-Anweisung
            Dialogereignis-Parameter und QD-Anweisung
        8.4.9  LED, Optische Anzeige
            Parameter der MD-Anweisung
            Wirkung der WD-Anweisung
            QD-Anweisung
        8.4.10  Numerical Display, Numerische Anzeige
            Parameter der MD-Anweisung
            Wirkung der WD-Anweisung
            QD-Anweisung
        8.4.11  Text Display, Alphanumerische Anzeige
            Parameter der MD-Anweisung
            Wirkung der WD-Anweisung
            QD-Anweisung
        8.4.12  Static Text, Beschriftungstext
            Parameter der MD-Anweisung
            Wirkung der WD-Anweisung
            QD-Anweisung
        8.4.13  Message Text, Mitteilungstext
            Parameter der MD-Anweisung
            Wirkung der WD-Anweisung
            QD-Anweisung
        8.4.14  LogFile, Virtueller Dateidialog
            Parameter der MD-Anweisung
            WD-Anweisung
            QD-Anweisung
            KD-Anweisung

Kapitel 8
Makroprogrammierung

8.1  Einfhrung

Um die Flexibilit„t beim Einsatz der pt-100 in verschiedenen Anwendungsf„llen zu erh”hen und die Komplexit„t der ber Menues konfigurierbaren Systemeinstellungen nicht zu gross werden zu lassen, wurde die pt-100  Makroprogrammierbar gemacht.

Die Makroprogrammierung erlaubt dem Programmierer den Zugriff auf viele interne Funktionen des Ger„tes. Die pt-100 ist damit auf verschiedene Anforderungen anpassbar. Die Makros werden als Textzeilen in die pt-100 geladen und vom Ger„t interpretiert. Die Anweisungen sind sehr kompakt, da Speicherplatz und Interpretationsgeschwindigkeit wichtig sind.

Sprachelemente sind Anweisungen, (Benutzer-)variablen, Systemvariablen, Systemkonstante, Literale (Numerische- und Textkonstanten), Portadressen.

8.2  Anweisungen

Im folgenden wird fr die Parametertypen der Anweisungen folgende Konvention verwendet:

Typ Beschreibung
WORD Dezimal-Zahl, Hexadezimalzahl oder Zahl Variable
TEXT Text-Literal oder Text-Variable
NUM Dezimal-Zahl, Hexadezimalzahl, Zahl-Variable oder Port
NVAR ZahlVariable, undefinierte Variable oder beschreibbarer I/O-Port
TVAR TextVariable oder undefinierte Variable
WVAR WordVariable oder undefinierte Variable

Viele Anweisungen liefern in einen numerischen Rckgabewert in der Systemvariablen RES bzw. einen alphanumerischen Rckgabewert in der Systemvariablen NAME zurck. Ein numerischer Rckgabewert kann in der bedingten Verzweigung verwendet werden. Falls der Rckgabewert weiterverarbeitet werden soll, muá er mit im n„chsten Befehl z.B. mit SEvar,RES gespeichert oder ausgewertet werden, da folgende Anweisungen die Systemvariable ver„ndern. Ein Makro kann den Systemvariablen RES und NAME selbst einen Rckgabewert zuordnen, indem es z.B. mit SERES,1234 oder SENAME,'info' eine Wertzuweisung vornimmt.

8.2.1  Zahlen und Bit-Operationen

Anweisung Param 1 Param 2 Funktion

SE

NVAR NUM Set.
Wertzuweisung von NUM an I/O-Port oder Variable
AN NVAR NUM AND.
Bitweise Und-Verknpfung NVAR := NVAR AND NUM
OR NVAR NUM OR.
Bitweise Oder-Verknpfung NVAR := NVAR OR NUM
NA NVAR NUM NAND.
Bitweise NAND-Verknpfung NVAR := NVAR AND NOT NUM
XO NVAR NUM XOR.
Bitweise Exklusiv-Oder Verknpfung NVAR := NVAR XOR NUM
SL NVAR NUM Shift Left.
Linksschieben um NUM Bits: SHL (NVAR, NUM)
SR NVAR NUM Shift Right.
Rechtsschieben um NUM Bits: SHR (NVAR, NUM)
MU NVAR NUM Multiplikation.
NVAR := NVAR*NUM
DI NVAR NUM Division.
NVAR := NVAR DIV NUM
MO NVAR NUM Modulo.
Restberechnung NVAR := NVAR MOD NUM
IN NVAR NUM Inkrementierung (Addition).
NVAR := NVAR+NUM
DE NVAR NUM Dekrementierung (Subktraktion).
NVAR := NVAR-NUM
SI Signed Prefix. Wirkt nur auf die n„chste Anweisung.
Der n„chste Vergleichs-, Konvertierungs- oder Arithmetikoperation wird vorzeichenbehaftet ausgefhrt. Ein WORD-Parameter wird als vorzeichenbehafteter INTEGER Wert interpretiert.

8.2.2  Textbehandlung

Bei Verwendung von Textvariablen ist zu beachten, daá deren L„nge bei Textoperationen nicht ber 140 Zeichen erreicht.

Anweisung Param 1 Param 2 Funktion

SE

TVAR TEXT Set.
Wertzuweisung von TEXT an Text-Variable
IN TVAR TEXT Insert.
Fgt den Text TEXT am Anfang von TVAR ein
IN TVAR NUM Insert.
Fgt das Zeichen NUM am Anfang von TVAR ein
DE TVAR WORD Delete. WORD ist in HIGH und LOW Teil aufgeteilt (jeweils ein Byte):
HIGH Operation
0 Entfernt in TVAR das Zeichen an Position LOW
255 Entfernt in TVAR das letzte Zeichen
sonst Entfernt an Position HIGH LOW Zeichen.
WT WORD WORD Write Text.
Gibt das Zeichen des zweiten Parameters an der COM-Schnittstelle deren Nummer im ersten Parameter steht aus. Zeichencodes 0..255 sind erlaubt.
WT WORD TEXT Write Text.
Gibt den Text auf der COM-Schnittstelle, deren Nummer im ersten Parameter steht, aus.
COM-Schnittstellen:
0 LPT (Printer)
1 V.24/RS232C (Modem/Remote-I/O)
3 LCD
5 ISDN
6 TV/Monitor
8..15 Parallelport PD0..PD7 Serielle TX-Emulation
RT WORD WVAR Read Text.
Liest ein Zeichen von COM-Schnittstelle (Parameter 1) in die Variable WVAR ein. Falls kein Zeichen verfgbar ist, wird 0 geliefert. Es wird nicht gewartet.
RT WORD TVAR Read Text.
H„ngt solange Zeichen von der COM-Schnittstelle (Parameter 1) an die Varibale TVAR an, bis 10ms lang kein Zeichen verfgbar ist, oder TVAR die maximale L„nge von 140 Zeichen berschreitet.
CH NVAR TEXT Convert Hexadecimal.
Wandelt die als Text bergebene Hexadezimal-Repr„sentation um und weist sie an NVAR zu.
CH TVAR WORD Convert Hexadecimal.
Wandelt die Zahl WORD in eine Hexadezimalzahl-Repr„sentation (ohne fhrendes Dollar-Zeichen) um und weist sie an die Text-Variable zu.
CD NVAR TEXT Convert Decimal.
Wandelt die als Text bergebene Dezimalzahl-Repr„sentation um und weist sie an NVAR zu.
CD TVAR WORD Convert Decimal.
Wandelt die Zahl WORD in eine Dezimal-Repr„sentation um und weisst sie an die Text-Variable zu.
CB NVAR TEXT Convert Binary.
Wandelt die als Text bergebene Bin„rzahl-Repr„sentation um und weist sie an NVAR zu.
CB TVAR WORD Convert Binary.
Wandelt die Zahl WORD in eine Bin„rzahl-Repr„sentation um und weisst sie an die Text-Variable zu.
LE WVAR TEXT Length.
Liefert in WVAR die L„nge (=Anzahl Zeichen) des Textes TEXT.
AP TVAR TEXT Append.
H„ngt den TEXT an das Ende der Text-Variablen an.
AP TVAR WORD Append.
H„ngt das Zeichen aus WORD an das Ende der Text-Variablen an.
ST TEXT WORD Subtext Extract.
Liefert den Subtext aus TEXT von Position LOBYTE(WORD) mit der L„nge HIBYTE(WORD). Falls HIBYTE(WORD)=0 ist wird ein L„nge=1 angenommen und genau ein Zeichen geliefert. Das Ergebnis wird in der Systemvariablen NAME zurckgeliefert. In der Systemvariablen RES wird der Zeichencode des Ergebnisstrings zurckgeliefert. Falls die L„nge des Resultatstrings gr”áer 1 ist, werden die ersten beiden Zeichen des Strings als WORD interpretiert zurckgeliefert.
ST TEXT TEXT Subtext Position.
Liefert die Position (1... n), an der der 2.Text im ersten Text enthalten ist. Ist der 2.Textparameter kein Bestandteil des ersten Parameters, dann wird in der Systemvariable RES $FFFF (FALSE) zurckgeliefert.

8.2.3  Timer- und Timeoutbehandlung

Bei Ablauf eines Timers wird das entsprechende Makro gleichen Namens aufgerufen. Der Timer wird nicht automatisch neu gesetzt. Um einen periodischen Timer zu erhalten, muá der Timer in diesem Makro neu gesetzt werden.

Die Timer werden w„hrend einer Bildverbindung h”chstens alle 500ms berprft. Im Standby ca. alle 10ms. Die Genauigkeit h„ngt stark von der aktuellen Systembelastung ab, da ein Aufruf des Timeout-Ereignis-Namens z.B. nicht w„hrend einer W„hlaktion, einer Bildbertragung oder Ausfhrung eines Makros geschieht.

Die Timer k”nnen durch die TT-Anweisung getestet werden, so daá es auch m”glich ist, Timeouts durch Polling und nicht nur Ereignisgesteuert abzufragen.

Anweisung Param 1 Param 2 Funktion

TO

TEXT WORD Timeout Milliseconds.
Setzt den Timeout fr den Timer (Name in Parameter 1) auf die im 2.Parameter bergebenen Millisekunden. Falls Parameter 2=0 ist, wird der Timer abgeschaltet und liefert keinen Timeout mehr.
TS TEXT WORD Timout Seconds.
Setzt den Timeout fr den Timer (Name in Parameter 1) auf die im 2.Parameter bergebenen Sekunden.
TM TEXT WORD Timeout Minutes.
Setzt den Timeout fr den Timer (Name in Parameter 1) auf die im 2.Parameter bergebenen Minuten.
TH TEXT WORD Timout Hours.
Setzt den Timeout fr den Timer (Name in Parameter 1) auf die im 2.Parameter bergebenen Stunden.

8.2.4  Dialog-Anweisungen

Dialog-Anweisungen dienen w„hrend einer Online-Verbindung (z.B. via Netz, Modem, ISDN) zur Kommunikation mit dem Benutzer. Die Darstellung der Dialogelemente ist abh„ngig von der Benutzeroberfl„che der Gegenseite. šberlicherweise wird im #ONL Ereignismakro ein Dialog-Initialisierungsmakro aufgerufen, daá alle MD-Anweisungen aufruft, um die Dialoge auf der Benutzeroberfl„che darzustellen.

Bei Verwendung der ptWin-Bediensoftware Software lassen sich die Dialogelemente von Seite 8.4 verwenden.

Anweisung Param 1 Param 2 Funktion

MD

TEXT TEXT Make Dialog.
Erzeugt ein Dialogelement auf dem Bildschirm des Hosts, falls eine Verbindung besteht. Im 1.Parameter wird der Name fr den Dialog bergeben (max.11 Zeichen), im zweiten Parameter die Beschreibung des Dialogelementes (Syntax s.u.).
WD TEXT TEXT Write Dialog.
Gibt den Text des zweiten Parameters im Dialog mit dem Namen des ersten Parameters aus.
WD TEXT NUM Write Dialog.
Gibt den Zahlwert des zweiten Parameters im Dialog mit dem Namen des ersten Parameters aus.
QD TEXT Query Dialog.
Fordert den Dialog-Status an. Wird dann ber ein Event mit dem Namen des ersten Parameters mitgeteilt.
KD TEXT Kill Dialog.
Entfernt den Dialog, der im Parameter TEXT angegeben ist vom Bildschirm des Hosts, falls eine Online-Verbindung besteht.
RE TEXT TEXT Remote Event.
WORD Erzeugt ein Ereignis mit Namen, der als 1.Parameter bergeben wird. Dies fhrt w„hrend der Verbindung auf der Remote-Seite zum Aufruf eines Makros gleichen Namens. Hierdurch lassen sich bei Box-zu-Box Verbindungen Dialogmakro-Eingaben simulieren. Optional kann ein TEXT- oder WORD-Parameter bergeben werden, der als Parameter RES/NAME auf der Remote-Seite abfragbar ist.

8.2.5  Test- und Vergleichs-Befehle

Diese Anweisungen liefern ein bool'sches Resultat (0000=TRUE, FFFF=FALSE). Das Resultat ist direkt nach Aufruf der Anweisung in der Systemvariablen RES verfgbar. Das Resultat kann z.B. mit der bedingten Anweisung : abgefragt werden.

Anweisung Param 1 Param 2 Funktion

TT

TEXT Timer-Test.
Prft ob Timer noch l„uft. Ein Rckgabewert FALSE wird geliefert, wenn der Timer abgelaufen ist.
TB NUM WORD Test Bit.
Prft ob das Bit (Nummer als 2.Parameter WORD) in Port, Wert oder Variable des ersten Parameters (NUM) gesetzt ist.
MS NUM NUM Mask Set.
Fhrt eine bitweise UND-Verknpfung der beiden Parameter durch (ohne das Ergebnis zu speichern) und liefert TRUE, wenn das Ergebnis gleich dem zweiten Parameter ist. Dadurch l„sst sich prfen, ob in einem I/O Port oder einer Variablen alle gewnschten Bits gesetzt sind.
MC NUM NUM Mask Cleared.
Fhrt eine bitweise UND-Verknpfung der beiden Parameter durch (ohne das Ergebnis zu speichern) und liefert TRUE, wenn das Ergebnis 0 ist. Dadurch l„sst sich prfen, ob in einem I/O Port oder einer Variablen alle gewnschten Bits gel”scht sind.
EQ NUM NUM Equal.
Prft beide Werte auf Gleichheit.
EQ TEXT TEXT Equal.
Prft beide Texte auf Gleichheit.
NE NUM NUM Not Equal.
Prft beide Werte auf Ungleichheit.
NE TEXT TEXT Not Equal.
Prft beide Texte auf Ungleichheit.
GE NUM NUM Greater or Equal.
Liefert TRUE, wenn NUM1 > = NUM2 ist.
GE TEXT TEXT Greater or Equal.
Liefert TRUE, wenn TEXT1 > = TEXT2 ist.
LE NUM NUM Less or Equal.
Liefert TRUE, wenn NUM1 < = NUM2 ist.
LE TEXT TEXT Less or Equal.
Liefert TRUE, wenn TEXT1 < = TEXT2 ist.
LT NUM NUM Less Than.
Liefert TRUE, wenn NUM1 < NUM2 ist.
LT TEXT TEXT Less Than.
Liefert TRUE, wenn TEXT1 < TEXT2 ist.
GT NUM NUM Greater Than.
Liefert TRUE, wenn NUM1 > NUM2 ist.
GT TEXT TEXT Greater Than.
Liefert TRUE, wenn TEXT1 > TEXT2 ist.
CT TEXT TEXT Contains.
Liefert TRUE, wenn TEXT2 in TEXT1 enthalten ist.

8.2.6  Sonstige Befehle

Anweisung Param 1 Param 2 Funktion

FN

WORD ... Function call.
Ruft Systemfunktion (siehe unten) auf.
JP TEXT Jump to Makro.
Springt in das Makro dessen Name als Paramter bergeben wird. Hinweis: Der Makroname muss in ' Zeichen stehen. Hinweis: Alle Zeichen nach dem Sprungbefehl im aktuellen Makro werden ignoriert.
CA TEXT Call Makro.
Ruft das Makro TEXT als Unterprogramm auf. Max. 12 Unterprogramme, Funktionsaufrufe und Makros lassen sich ineinander verschachteln.
KI VAR Kill.
Entfernt die Text- oder Zahl-Variable bzw. das Makro. Sie/Es ist anschliessend undefiniert.

8.2.7  Liste aller Anweisungen

Anweisung Param 1 Param 2 Funktion

AN

NVAR NUM Bitwise AND.
AP TVAR TEXT Append text.
AP TVAR WORD Append character.
CA TEXT Call Makro.
CB NVAR TEXT Convert binary string to numerical value.
CB TVAR WORD Convert numerical value to binary string.
CD NVAR TEXT Convert cecimal string to numerical value.
CD TVAR WORD Convert numerical value to decimal string.
CH NVAR TEXT Convert hexadecimal string to numerical value.
CH TVAR WORD Convert numerical value to hexadecimal string.
CR 0 CAN Test Message available.
CR WVAR Read CAN Message. Only Header.
CR WVAR TVAR Read CAN Message. Long Value.
CR WVAR WVAR Read CAN Message. Short Value.
CS WORD Send CAN Message. No Value.
CS WORD TEXT Send CAN Message. Long Value.
CS WORD WORD Send CAN Message. Short Value.
CT TEXT TEXT Test if text contains other text.
DE NVAR NUM Decrement Variable.
DE TVAR WORD Delete Text.
DI NVAR NUM Division.
EQ NUM NUM Test numerical equal.
EQ TEXT TEXT Test text equal.
FN WORD ... Function call.
GE NUM NUM Test numerical Greater or Equal.
GE TEXT TEXT Test text Greater or Equal.
GT NUM NUM Test numerical Greater Than.
GT TEXT TEXT Test text Greater Than.
IN NVAR NUM Increment Variable.
IN TVAR NUM Insert Character.
IN TVAR TEXT Insert Text.
JP TEXT Jump to Makro.
KD TEXT Kill GUI Dialog.
KI VAR Kill Makro or Variable.
LE NUM NUM Test numerical Less or Equal.
LE TEXT TEXT Test text Less or Equal.
LE WVAR TEXT Length of text.
LT NUM NUM Test numerical Less Than.
LT TEXT TEXT Test text Less Than.
MC NUM NUM Clear Masked Bits.
MD TEXT TEXT Make GUI Dialog.
MO NVAR NUM Modulo (Remainder of Division).
MS NUM NUM Set Masked Bits.
MU NVAR NUM Multiplication.
NA NVAR NUM Bitwise NAND.
NE NUM NUM Test numerical Not Equal.
NE TEXT TEXT Test text not Equal.
OC WORD CAN Open Clear Output.
OG TEXT TVAR CAN Open Read Object long value.
OG WORD WVAR CAN Open Read Object short Value.
OI WORD CAN Open Read Input.
OO WORD CAN Open Read Output.
OS WORD CAN Open Set Output.
OW TEXT TEXT CAN Open Write Object long Value.
OW TEXT TEXT CAN Open Write Object long value.
OW WORD WORD CAN Open Write Object short Value.
OW WORD WORD CAN Open Write Object short Value.
OR NVAR NUM Bitwise OR.
QD TEXT Query GUI Dialog.
RE TEXT TEXT Remote Event. Call Remote Macro with text parameter.
RE TEXT WORD Remote Event. Call Remote Macro with numerical parameter.
RT WORD TVAR Read Text from COM-Port.
RT WORD WVAR Read Character from COM-Port.
SE NVAR NUM Variable Assignment.
SE TVAR TEXT Set Text. Variable-Assignment.
SI Signed Prefix.
SL NVAR NUM Shift Left.
SR NVAR NUM Shift Right.
ST TEXT WORD Subtext string to NAME/RES.
ST TEXT TEXT Subtext Position to RES.
TB NUM WORD Test Bit.
TH TEXT WORD Set Timout in hours.
TM TEXT WORD Set Timeout in minutes.
TO TEXT WORD Set Timeout in milliseconds.
TS TEXT WORD Set Timout in seconds.
TT TEXT Timer-Test.
WD TEXT NUM Write number to GUI Dialog.
WD TEXT TEXT Write text to GUI Dialog.
WT WORD TEXT Write Text to COM-Port.
WT WORD WORD Write Character to COM-Port.
XO NVAR NUM Bitweise XOR, Exclusive Or.

8.3  Funktionen und Ereignisse

Funktionen werden mit der Anweisung FN aufgerufen. Beispielsweise wird die Delay-Funktion, die 1000 Millisekunden verz”gern soll, durch FN1,1000 aufgerufen. Im folgenden werden die Funktionsnummern als Hexdezimalzahlen angegeben, um die Systematik hervorzuheben. Es ist natrlich m”glich die Funktionsnummer als Dezimalzahl zu schreiben z.B. statt FN$1C,cam auch FN28,cam.

Systemerzeugte Ereignisse werden nach vordefinierten Bedingungen aufgerufen und durch ein # Zeichen eingeleitet. Der Name besteht nur aus Groábuchstaben und wird nicht l„nger als 11 Zeichen inclusive eines bergebenen hexadezimalen Parameters. Der hexadezimale Parameter wird vor dem Anh„ngen an den Namen soweit gekrzt, so daá er ohne fhrende Nullen darstellbar ist und mindestens ein Zeichen lang ist.

Ein Makro gleichen Namens wird aufgerufen, sobald ein Ereignis eintritt. Anstelle des vollst„ndigen Ereignisnamens kann der Makroname am Ende ein * enthalten, was bedeutet, das alle Ereignisse, unabh„ngig vom Parameter dieses Makro aufrufen. Beispielsweise wird bei drcken der DTMF-Taste 5 das Ereignis #DTMF5 aufgerufen. Ein Makro #DTMF* wrde auf alle Tasten #DTMF0 bis #DTMF9 reagieren.

8.3.1  Allgemeine Funktionen und Ereignisse

Allgemeine Funktionen

Funktion Parameter Beschreibung
$01 WORD Delay ms.
ms Beispiel: FN1,1000: Warte 1 Sekunde. Die Programmausfhrung sollte nicht l„nger als einige Sekunden angehalten werden. Besser ist es l„nge Verz”gerungen mittels Timer/Timeout Konstruktion durchzufhren.
$02 WORD Clear Com Buffer.
com L”scht den Eingabepuffer der Schnittstelle z.B. com=1: Serielle Schnisttelle.
$03 System Reset.
$04 Get Current Label.
Liefert (durch Systemvariable NAME abfragbar) den Namen des aktuellen Makros (=Events).
$05 Write EEPROM Config.
Aktuelle Einstellungen ins EEPROM Sichern. Nur m”glich, falls Offline oder Online mit Config-Permission.

Allgemeine Ereignisse

Ereignis Parameter Beschreibung
#RESET 0 Aufruf bei Reset des Ger„tes vor der Initialisierung von Harddisk, Kameras, Modem, ISDN etc.
1 Aufruf bei Reset des Ger„tes nach obiger Initialisierung.
#ERROR code Wird aufgerufen, wenn eine St”rung im Ger„t auftritt. Der code ist der hexadezimale Errorcode.

Allgemeine Systemvariablen

Variable R/W Typ Beschreibung
RES R/W WORD Resultat des letzten Vergleichs.
Da die Systemvariable beschreibbar ist, kann ihr Wert auch durch SERES,xxx ver„ndert werden.
NAME R/W TEXT Resultat einer Textoperation (siehe FN...)
Bzw. Eingangs Parameter eines Makroaufrufs.
PAR R WORD Parameter des letzten Event/Makro Aufrufs, der bei CALL oder vom Host bergeben wurde. Z.B. der Wert 0000 oder FFFF, der den aktuellen Button Status wiederspiegelt.
BNAME R TEXT ''Boxname'' (Name des Ger„tes, max. 20 Zeichen)
BNR R TEXT Boxrufnummer (kann L„ndervorwahl enthalten) dieses Ger„tes.

8.3.2  Video-Untersttzung

Video-Funktionen

Funktion Parameter Beschreibung
$10 WORD Select Video Input.
cam Setze Videoeingang auf cam (1..3)
Die Systemvariable RES enth„lt TRUE, wenn ein Videosignal an diesem Eingang erkannt wurde, anderenfalls FALSE.
$11 WORD Set Video State.
0 Switch Video off.
1 Switch Video on.
$12 WORD Store Image.
5 Speichert Vollbild von aktueller Kamera auf Harddisk.
4 Speichert Differenzbild von aktueller Kamera auf Harddisk.
9 Speichert Vollbild von aktueller Kamera ins RAM.
8 Speichert Differenzbild von aktueller Kamera ins RAM..
$13 WORD Set screen size.
size Setzt Spalten und Zeilen des Text-Schirms der Monitor-Ausgabe (COM 6).
LOBYTE(size)=Spalten
HIBYTE(size)=Zeilen
$14 WORD Get Camera Name.
cam Speichert den Namen der Kamera cam (1..3) in der System-Variablen NAME.
$pp15 WORD Video/Audio Remote Control.
val Falls diese Box als Bildempf„nger arbeitet lassen sich damit die
Kamera- und Audioparameter der Remote-Box einstellen:
$0015 cam Video Input.
Kameraumschaltung cam=1..3
$0115 mode Videomodus.
0 HDelta64
1 DCT (Verlustbehaftet)
$0215 size Set Image Size.
0 176x144
1-9 Teilbildauschnitt wie auf der Zehnertastatur
14 96x72
15 352x288
$0315 luma Bildhelligkeit.
luma=0(dunkel)..9(hell)
$0415 val Kontrast.
val=0(gering)..9(hoch)
$0515 qual Qualit„t/Kompressionsst„rke.
qual=0(beste Qualit„t)..9(niedrigste Qualit„t)
$0615 sat Farbs„ttigung.
sat=0..9
$0915 ctrl Control.
$1C WORD Store Image to RAM.
cam Speichert Bild von Kamera cam ins RAM.
$1D WORD Store Image to Harddisk.
cam Speichert Bild von Kamera cam auf Harddisk.
$1E WORD Bild„nderungsdetektor fr aktuellen Videoeingang aufrufen.
param Beim Ersten Aufruf nach einer Kameraumschaltung oder aktivem Video-Framefrabber (z.B. w„hrend einer Onlineverbindung oder Harddiskspeicherung) werden die bergebenen Parameter (s.u.) neu gesetzt und ein Referenzbild angefordert. Durch Aufruf von FN$10,cam (Anfordern eines Vollbildes) kann das Initialisieren der durch FN$1E bergebenen Parameter erzwungen werden.
Bit Wertebereich Bedeutung
0..3 16,1..15 Anzahl ge„nderter Pixel bevor ein Block als ge„ndert gilt.
4..7 16,1..15 Min. Grauwert„nderung damit Pixel als ge„ndert gilt.
8..9 4,1..3 H”he des Sensitiven Fensters.
10..11 4,1..3 Breite des Sensitiven Fensters.
12..13 0..3 Linke obere Ecke Y des Sensitiven Fensters.
14..15 0..3 Linke obere Ecke X des Sensitiven Fensters.
Die Funktion liefert in der Systemvariablen RES die Zahl der ge„nderten Bl”cke des Bildes zurck. Ein volles Bild hat 48x36 Bl”cke.
$60 WORD Kamera-Control fr aktuelle Kamera „ndern.
ctrl LOBYTE: BitNr
HIBYTE: Neuer Wert (1=Bit setzen, 0=Bit rcksetzen)
Bit Bedeutung
0 Kontrastanpassung (nur pt-100 alter FG)
1 Schnell abtasten
2 Gl„tten
Z.B.:
108h: DCT-Basierte Kompression einschalten
008h: DCT-Basierte Kompression ausschalten
$61 WORD Bildgr”áe/Ausschnitt der aktuellen Kamera „ndern.
size
LOBYTE(size) Bildabmessungen
0 192x144 (oder 176x144)
1..9 160x128 Ausschnitt aus 384x288 mit Position:
1 2 3
4 5 6
7 8 9
14 96x72 (oder 88x72)
15 384x288 (oder 352x288)
HIBYTE(size) Pixel„nderung pro 8x8 Pixel Block
0 Default setzen ( < 120 Zeilen: 1, < 240Zeilen:2 sonst 3)
1..5 Neuen Wert setzen
$62 WORD Graustufen/Farbe fr aktuelle Kamera „ndern:
grey
LOBYTE(grey) Graustufen/Farbe
16,32,64 Graustufen
32+128 Farbe mit fnf Helligkeitsstufen
64+128 Farbe mit sechs Helligkeitsstufen
HIBYTE(grey) Schwellwert Helligkeits„nderung
0 Default ( < 64 Graustufen: 2 Grauwerte sonst 3)
1..8 Neuer Schwellwert
$63 WORD Kontrast/Helligkeit auf neuen Wert (1... 255) setzen:
ctrbri LOBYTE: Kontrast (0 = Nicht „ndern)
HIBYTE: Helligkeit (0 = Nicht „ndern)

Video-Ereignisse

Ereignis Parameter Beschreibung
#CAM 1..3 Kamera 1..3 wird ausgew„hlt.
Dieses Ereignis wird vor der Umschaltung und šberprfung der Videoquelle ausgefhrt, damit evtl. ein vorgeschalteter Video-Multiplexer auf einen bestimmten Eingang umgeschaltet werden kann.
#NCAM 1..3 Kamera 1..3 wurde ausgew„hlt.
Dieses Ereignis wird nach der Umschaltung und šberprfung der Videoquelle aufgerufen. Die Systemvariable CAM enth„lt den gleichen Wert wie der bergebene Parameter.
#VIDEO 0 Videoteil abgeschaltet.
1 Videoteil ohne TV/Monitor eingeschaltet (nur Kameras)
2 Videoteil mit TV/Monitor aktiv

Systemvariablen

Variable R/W Typ Beschreibung
CAM R WORD Ausgew„hlte Kamera (1..3). 0=Videoeing„nge inaktiv.
TVO R WORD TV-Output Status: 0=Inaktiv, 1=Aktiv.

8.3.3  Voice/DTMF Untersttzung

Die DTMF-Funktionen sind w„hrend einer bestehenden Voice-Verbindung verfgbar und haben sonst keine Funktion.

Voice/DTMF-Funktionen

Funktion Parameter Beschreibung
$30 TEXT Send DTMF Tone
dtmf DTMF-Zeichenfolge als Ton erzeugen. Erlaubte Zeichen im Text dtmf sind 0..9, *, #, A..F, e, b und das Leerzeichen fr Pause. Die T”ne haben eine L„nge von 80ms und werden ohne Pausen nacheinander erzeugt.
$31 0 Play Beep ''Recognized'' *
$31 1 Play Beep ''ok''
$31 2 Play Beep/Announcement ''Error''
$31 3 Play Beep/Announcement ''On''
$31 4 Play Beep/Announcement ''Off''
$31 5 Play Beep/Announcement ''Alarm''
$32 WORD Play announcement.
slot Ansage-Slot abspielen.
$33 WORD Record announcement.
slot Ansage in Slot 'slot' (0..59) Aufzeichnen mit guter Qualit„t.
$33 WORD Record announcement (low quality).
slot+256 Wie vor, aber mit reduzierter Qualit„t und halber Datenmenge

DTMF-Ereignisse

Ereignis Parameter Beschreibung
#DTMF 0..999 Die DTMF Funktion wurde per 24..24999 Eingabe ber Telefon (Voice/DTMF-Anruf) aufgerufen und der DTMF-Rufannahmemodus. A2 ist eingestellt.
#DTMF 0..9 Die DTMF-Taste 0..9 wurde ber Telefon (Voice/DTMF-Anruf) aufgerufen und der DTMF-Rufannahmemodus A3 ist eingestellt.
#DTMF#Die DTMF-Taste # wurde ber Telefon (Voice/DTMF-Anruf) aufgerufen und der DTMF-Rufannahmemodus A3 ist eingestellt.
#DTMFS Die DTMF-Taste * wurde im DTMF-Rufannahmemodus A3 bet„tigt.

Systemvariablen

Variable R/W Typ Beschreibung
DTMF R WORD Falls der DTMF-Rufannahmemodus A2 eingestellt war: Letzte mit DTMF 24xxx ausgew„hlte Funktion per DTMF. Es wird nur der Wert xxx (ohne 24 geliefert).

8.3.4  Schnittstellen-Untersttzung

Schnittstellen-Funktionen

Funktion Parameter Beschreibung

$41

WORD Setze Baudrate und Datenbits fr com=1 (V.24):
cfg
cfg Bit Beschreibung
0..7 Baudrate DIV 1200
8 1: Parity Odd, 0: Parity Even
9 1: Parity, 0: No Parity
10..11 Datenbits (00=5, 01=6, 10=7, 11=8)
12 1: 2 Stopbits, 0: 1 Stopbit
13 1: RTS/CTS Flusskontrolle
14 1: XON/XOFF Flusskontrolle
$48 WORD Set Baudrate for serial TX Port.
... cfg Setze Baudrate und Datenbits fr COM=8..COM=15 (Seriell TX via TTL-Port DB25)
$4F
Bit Wert Bedeutung
3 0 V.24 direkt angeschlossen.
1 šber invertierenden Pegelwandler angeschlossen.
7..40000 9600, 8N1
0001 1200, 8N1
0010 2400, 8N1
0011 4800, 8N1
0100 19200, 8N1
0101 38400, 8N1
1000 9600, 7E1
1001 1200, 7O1
1010 2400, 7E1
1011 4800, 8E1
1100 1200, 7E1

Schnittstellen-Ereignisse

Ereignise Parameter Beschreibung.
#COM 1 Zeichen von der seriellen Schnittstelle (mit RT1,x lesen) empfangen. Wird nur aufgerufen, wenn V.24 fr Remote-I/O freigegeben ist.
#KEY 31..39 Taste 1..9 wurde auf der Konsole (z.B. Tastatur) eingegeben.
D Taste Enter gedrckt.
8 Taste Backspace/Cursor Left gedrckt.
C Taste Cursor Right gedrckt.
18 Taste C (Clear) gedrckt.
7F Taste Delete/Dekrement gedrckt.
9 Taste Insert/Inkrement gedrckt.
1B Taste Esc gedrckt.
A Taste Cursor Down gedrckt.
B Taste Cursor Up gedrckt.
1E Taste Select gedrckt.
E,F,10 Taste F1-F3 gedrckt

Systemvariablen

Variable R/W Typ Beschreibung
CON R WORD Console-Port
0 Keine Konsole ausgew„hlt
1 Serielle Schnittstelle (Modem)
3 LCD/KBD (Default)
5 ISDN-Online Verbindung
6 IR/Videomonitor
KEY R WORD Tastencode der letzten gedrckte Taste auf der aktuellen Console.
PD R/W WORD Parallel Data. Liefert die Portadresse der TTL-Datenausg„nge.
Bit Name Pin
0 PD0 2
1 PD1 3
2 PD2 4
3 PD3 5
4 PD4 6
5 PD5 7
6 PD6 8
7 PD7 9
PS R WORD Parallel Status. Liefert die Portadresse des TTL-Statusregisters/Eing„nge.
Bit Name Pin
0 Undefiniert -
1 Undefiniert -
2 Undefiniert -
3 ERROR 15
4 SLCT 13
5 Paper End 12
6 -Acknowlege 10
7 NOT Busy NOT 11
PC R/W WORD Parallel Control. Liefert die Portadresse des TTL-Controlports.
Bit Name Pin
0 NOT Strobe NOT 1
1 NOT -AFEED NOT 14
2 -Init 16
3 NOT -SlctIn NOT 17
4 MASK -
5 PD OUT=1,IN=0-
6 1 -
7 1 -

8.3.5  Auf- und Abbau von Verbindungen

Verbindingsorientierte Funktionen

Funktion Parameter Beschreibung
$50 WORD Hangup.
com Host-Verbindung beenden.
0 Alle Verbindungen beenden.
1 Disconnect Modem.
5 Disconnect ISDN.
$51 TEXT Dial ISDN connection.
nr ISDN Verbindung nach nr w„hlen.
$52 TEXT Dial Modem connection.
nr Modem Verbindung nach nr w„hlen.
$54 TEXT Dial ISDN2 connection.
nr ISDN2 Verbindung nach nr w„hlen.
$56 TEXT Dial Voice/DTMF connection.
nr Voice Verbindung nach nr w„hlen.
$57 TEXT Dial to Fax.
nr Fax Verbindung nach nr w„hlen.
$58 TEXT Dial telephone connection.
nr Telefonie Verbindung nach nr w„hlen.
$151... TEXT Dial to ...
$159 nr Wie $5x, aber in NAME stehen die Verbindungsparameter wie z.B. T4 fr den W„hltimeout.

Verbindungsorientierte Ereignisse

Ereignis Parameter Beschreibung
#CONN 81 Abgehende ISDN Verbindung besteht.
1 Ankommende ISDN Verbindung besteht.
82 Abgehende/Ankommende Modem-Verbindung besteht.
2 Ankommende Modem-Verbindung besteht.
84 Abgehende ISDN2-Verbindung besteht.
4 Ankommende ISDN2-Verbindung besteht.
86 Abgehende DTMF/Voice-Verbindung besteht.
6 Ankommende DTMF/Voice-Verbindung besteht.
87 Abgehende Fax-Verbindung besteht.
7 Ankommende Fax-Verbindung besteht.
#DISC 1 ISDN-Verbindung beendet.
2 Modem-Verbindung beendet.
4 ISDN2-Verbindung besteht.
6 DTMF/Voice-Verbindung beendet.
7 Fax-Verbindung beendet.
#ONL 0 Host-Verbindung beendet (Offline).
In diesem Ereignis-Makro werden alle applikationsspezifischen Makroende-Aufrufe (z.B. durch CA'xx_NAMEe') aufgerufen.
1 Als Sender Online mit Zugriffsberechtigung durch Host.
In diesem Ereignis-Makro werden alle applikationsspezifischen Makroinitialisierungen (z.B. durch CA'xx_NAMEi') aufgerufen.
2 Als Empf„nger Online.
3 Als Sender Online ohne Zugriffsberechtigung.
4 Als Sender Online. Empf„nger kann keine Makros darstellen.

Systemvariablen

Variable R/W Typ Beschreibung

HOST

R WORD PC-Hostport, falls Verbindung besteht:
0 Keine Verbindung.
1 Modem-Verbindung.
5 ISDN-Verbindung.
CSV R WORD Current Service.
Diese Bitmaske gibt an, welche Verbindungen (Dienste) aktuell zwischen Box und Netz bestehen:
Bit Verbindungstyp
1 ISDN
2 Modem
4 ISDN2
6 Voice/DTMF
7 Fax
Falls keine Verbindungen bestehen, ist CSV=0
CID R TEXT CallerID: Nummer des aktuellen Anrufers.
HVER R WORD Host-Version w„hrend einer Online Verbindung:
HIBYTE: Major Version (GUI-Type)
LOBYTE: Minor Version (Interface-Type)
HCAP R WORD Host-Capabilities w„hrend einer Online-Verbindung:
Bit Capability
0 Basic Functionality HDelta und Standard Remote I/O
1 Remote Makros werden untersttzt
2 VM422 basierte DCT-Dekompression wird untersttzt
3 Telefonie Kanal wird untersttzt
ACC R WORD Access Permissions zeigt an, fr welche Zugriffe die Remote-Seite nach ihrer Authorisierung Zugriffserlaubnis besitzt. Die Authorisierung geschieht ber Browser, DTMF-Pin Eingabe, Password-Eingabe bzw. Rufnummern/IP-Adressberprfung.
Bit Zugriffserlaubnis
4 Access Permission
5 Control Permission
6 Config Permission

8.3.6  Schaltausg„nge und Schalteing„nge

Systemvariable

Variable R/W Typ Beschreibung
REL R/W WORD Relais. Liefert die Portadresse der Relais-Ausg„nge.
Beispiele:
Durch OR REL,4 wird der Ausgang 3 eingeschaltet,
durch NA REL,4 ausgeschaltet,
durch MS REL,4 geprft, ob der Ausgang eingeschaltet ist,
durch MC REL,4 geprft, ob der Ausgang ausgeschaltet ist.

8.3.7  Alarme

Alarmierungs-Funktionen

Funktion Parameter Beschreibung

$A0

Gespeicherte Alarme und St”rung l”schen.
$A1 WORD Alle Alarmspeicher von Linien deren zugeordnete Bits in linien gesetzt sind, werden gel”scht.
linien
Bit Linie
0 1
1 2
2 3
3 4
$A2 0 Unscharf Schalten
$A2 1 Scharf Schalten
$A3 WORD Alarmaktion 1..9 ausfhren.
aktion
$A4 WORD Get Alarmline Name.
linie Name der Alarmlinie 'linie' (1..4) in der Systemvariablen NAME ablegen.
$AE [TEXT]Start Makro Event.
Erzeugt ein ''Startevent'' vom Typ ''MAKRO'' fr die Ereignisliste.
Falls der TEXT Parameter nicht bergeben wird, wird der Name des aktiven Makros als Ereignisparameter verwendet, anderenfalls der bergebene Textparameter.
$1AE [TEXT]Stop Makro Event.
Erzeugt ein ''Stopevent'' vom Typ ''MAKRO'' fr die Ereignisliste.
Falls der TEXT Parameter nicht bergeben wird, wird der Name des aktiven Makros als Ereignisparameter verwendet, anderenfalls der bergebene Textparameter.

Alarmierungs-Ereignisse

Ereignis Parameter Beschreibung
#ALARM 1..4 Alarmzustand auf Linie x (x=1..4) eingetreten.
#ALARMO 1..4 Alarmzustand auf Linie x (x=1..3) wurde gel”scht.
#ARMED 0 Unscharf geschaltet.
1 Scharf geschaltet.

Systemvariablen

Variable R/W Typ Beschreibung
AIN R WORD Alarm Inputs. Aktueller Alarmlinien Status.
Bit 0..2 entsprechen den Alarmlinien 1..3.
AL R WORD Alarm Latched. Gespeicherter Alarmstatus.
Bit 0..2 entsprechen den Alarmlinien 1..3.
ASTAT R WORD Alarm Status.
Bit Status
0 1=Scharf, 0=Unscharf
1 1=Alarmrelais an. 0=Alarmrelais aus.
2 1=St”rung

8.3.8  CAN-I/O Untersttzung

Untersttzung des CAN-Protokolls setzt den Anschluá eines CAN-Adapters auf dem Parallelport voraus. Das CAN-Protokoll ist ein Multimaster-Protokoll (ein Busteilnehmer kann jederzeit versuchen eine Nachricht auf dem Bus abzusetzen und muss nicht darauf warten von einem Master abgefragt zu werden). Die Nachrichten bestehen unter anderem aus einer 11 Bit langen Message-ID, die in der CAN Version 1.1 2048 Werte annehmen kann, und aus einem Datenteil von 0-8 Bytes. Die Kommunikation mittels Message-IDs und Datenbytes wird als Schicht 2 (Link-Layer) Kommunikation bezeichnet.

Um Interoperabilit„t zwischen Ger„ten verschiedener Hersteller herzustellen und die Funktionsvielfalt der CAN-Komponenten strukturiert dem Anwender zur Verfgung zu stellen, wurde auf Schicht 7 (Applikations-Layer) ein Objekt-Verzeichnis mit den entsprechenden Zugriffsmethoden definiert. Ein (vor allem in Europa) gebr„uchliches Modell ist CAN-Open. Zur CAN-Open Kommunikation steht ein Satz von Anweisungen zur Verfgung. Schicht 2 und Schicht 7 Kommunikation sollte innerhalb eines CAN-Systems gleichzeitig verwendet werden (obwohl es technisch m”glich w„re).

Eine Beschreibung von CAN (Layer 2) und CAN-Open findet sich auf http://www.can-cia.de.

Kommandos fr Layer 2 Kommunikation

Ein CAN-Message Header wird in den folgenden Anweisungen ber eine 16-Bit WORD-Variable bergeben. Darin sind mehrere Header-Bestandteile codiert:
Bit 0..10 sind die CAN-Message ID, die einen Wertebereich von 0..2047 annehmen kann.
Bit 11 gibt das RTR-Bit (Remote-Request) an.
Bit 12..15 geben die L„nge des Datenteils an (0-8 Bytes).

Anweisung Param 1 Param 2 Funktion

CS

WORD WORD Send CAN Message.
Sendet die Nachricht mit 0-2 Bytes Datenteil.
Parameter 1: Message Header (ID). Sind die Bits 12..15=0, so wird eine L„nge von 2 Bytes angenommen.
Parameter 2: Databytes to send.
CS WORD TEXT Send CAN Message.
Sendet die Nachricht mit 0-8 Bytes Datenteil.
Parameter 1: Message Header (ID). Sind die Bits 12..15=0, so wird die L„nge aus LENGTH(TEXT) berechnet.
Parameter 2: Datenbytes, die gesendet werden sollen.
CS WORD Send CAN Message.
Sendet die Nachricht ohne Datenteil.
WORD: Message Header (ID).
Ist Bit 11 (RTR) = 0, so sollten auch Bits 12..15 sollen=0 sein.
Ist Bit 11=1, dann wird ein Remote Request fr n Bytes Daten angefordert, wobei n in den Bits 12... 15 codiert ist.
CR WVAR Read CAN Message.
Liest die n„chste CAN-Nachricht aus der Empfangswarteschlange.
Parameter 1: Message Header der empfangenen Nachricht.
CR WVAR WVAR Read CAN Message.
Liest die n„chste CAN-Nachricht mit Daten (0-2 Bytes).
Parameter 1: Message Header der empfangenene Nachricht.
Parameter 2: 1-2 Bytes CAN Message Identifier.
CR WVAR TVAR Read CAN Message.
Liest die n„chste CAN-Nachricht mit Daten (0-8 Bytes).
Parameter 1: Message Header der empfangenene Nachricht.
Parameter 2: 0-8 Bytes Daten der Nachricht.
CR 0 CAN Test Message.
Liefert TRUE, wenn Nachricht (Layer 2 oder Layer 7) verfgbar.

Kommandos fr CAN-Open Kommunikation

Anweisung Param 1 Param 2 Funktion

OS

WORD CAN Open Set Output.
OC WORD CAN Open Clear Output.
OI WORD CAN Open Read Input.
Liefert TRUE (in RES), falls Output ''1'' ist.
OO WORD CAN Open Read Output.
Liefert TRUE (in RES), falls Input ''1''
WORD-Bit:
8..15 ¹ 0 Node Id
8..15 = 0 Use Default Node ID (Systemvariable NODE)
0..7 Bitnummer 0..255
Liefert $C0xx in RES falls ein CAN Error auftrat.
OW WORD WORD CAN Open Write Object.
TEXT TEXT Schreibt die Object Daten aus TEXT2/WORD2
Als NodeId wird die Systemvariable NODE verwendet.
WORD1: Object Index. Subindex = 0
oder
TEXT1: 2 Bytes Object Index + 1 Byte Subindex.
WORD2: Schreibt zwei Bytes Daten, falls WORD2 ³ 100h ist, sonst 1 Byte Daten. Daten in WORD2.
oder
TEXT2: Schreibt den Text mit seiner L„nge in das gew„hlte Objekt.
OW WORD WORD CAN Open Write Object.
TEXT TEXT Schreibt die Object Daten aus TEXT/WORD2
Als NodeId wird die Systemvariable NODE verwendet.
WORD1: Object Index. Subindex = 0
oder
TEXT1: 2 Bytes Object Index + 1 Byte Subindex
WORD2: Schreibt zwei Bytes Daten, falls WORD2 ³ 100h ist, sonst 1 Byte Daten. Daten in WORD2.
oder
TEXT2: Schreibt den Text mit seiner L„nge in das gew„hlte Objekt.
OG WORD WVAR CAN Open Read Object.
TEXT TEXT Liefert in TEXT/WORD2 die Object Daten.
Als NodeId wird die Systemvariable NODE verwendet.
WORD1: Object Index. Subindex = 0
oder
TEXT1: 2 Bytes Object Index + 1 Byte Subindex
WVAR: Liest ein oder zwei Bytes Daten
oder
TVAR: Liest die Daten in die Variable ein (momentan max. 2 Bytes).

Ist RES nach Ausfhrung einer OW oder OG Anweisung ¹ 0, dann ist ein CAN-Fehler aufgetreten.

LOBYTE(RES) Bedeutung
$00 ok
$C0... $EF CANST Error (Bitmaske siehe dort)
$F0 No Response from Node
$F1 Unknown Response from Node
$F2 Segmented Message received and not implemented
$F3 CAN Error

CAN-I/O Funktionen

Funktion Parameter Beschreibung
$C0 WORD Set CAN/CANOpen Baudrate.
baud Initialisiere CAN/CANOpen fr Baudrate-Teiler baud.
baud Datenrate
$0 500kBit (Default)
$14 1MBit
$1C 500kBit
$11C 250kBit
$31C 125kBit
$532F 20kBit
Diese Initialisierung muá vor dem ersten Sende/Empfangs-Befehl bzw. nach Power-Up des CAN-Adapters einmal aufgerufen werden (z.B. im #RESET1 Makro).
$1C0 [WORD Reset CAN Node.
node] Ist node=0 oder nicht angegeben, wird auf allen angeschlossenen Knoten ein Reset durchgefhrt. Diese Funktion sollte einmal im #RESET1 Makro aufgerufen werden.
$2C0 [WORD Start Node.
node] Ist node=0 oder nicht angegeben, wird die Systemvariable NODE verwendet.
$C1 WORD Set Message Filter Mask.
mask In maske kann eine Bitmaske fr die akzeptieren CAN-Nachrichten gesetzt werden, damit nicht alle Nachrichten ein Makro-Ereignis ausl”sen.
LOBYTE(mask): Bit 3... 11: Acceptance Code.
HIBYTE(mask): Bit 3... 11: Acceptance Mask.
Voreingestellt ist AcceptanceCode/AcceptanceMask=All.
Fr CAN-Open Kommunikation sollte der Message Filter nicht verwendet werden, sondern nur fr CAN Layer 2 Kommunikation. Die Bitbelegung entspricht dem des CAN-Headers (8.3.8.1)
$1C2 Reset CAN Module.
Der Software CAN-Treiber wird initialisiert.
$C2 Clear CAN Receive Buffer.
Der CAN-Empfangsbuffer wird gel”scht.

CAN-I/O Ereignisse

Ereignis Parameter Beschreibung
#CANIN nodeid CAN Open Input on Node nodeid changed (TX PDO 1/2 received)
#CANERR nodeid CAN Open Error (Emergency) Message from nodeid received.
#CANMSG msgid CAN Layer 2 Message msgid received.

Systemvariablen

Variable R/W Typ Beschreibung
CANID R WORD CAN Message der n„chsten anstehenden Nachricht (Seite 8.3.8.1). Enth„lt den Wert 0FFFh, falls keine Nachricht verfgbar.
CANST R WORD CAN Status
Bit Status
0 Transmitter Full
1 Receiver Empty
2 Receiver Overrun
3 Bus Error
4 Bus Off
5 Register Test Error
NODE R/W WORD CAN Node ID fr CAN Layer 2 Kommunikation.
Voreingestellte NODE-Id ist 1. Durch SENODE,3 kann die Node-ID auf 3 ver„ndert werden. Die Systemvariable NODE wird immer dann verwendet, wenn keine NodeID in den CAN-Open Anweisungen angegeben wurde oder ''0'' ist.

8.3.9  Untersttzung von Benutzer-Interaktion

Ereignisse zur Benutzer-Interaktion

Ereignisse, die von einer Remote-seitigen Bedienoberfl„che (z.B. auf einem PC) an die pt-100 gesendet werden, besitzten per Namenskonvention als erstes Zeichen des Namens ein ~ Symbol. Der Name des Dialog-Ereignisses wird beim Erzeugen des Dialogelementes (Anweisung MD) bergeben. Abh„ngig vom Dialog wird noch ein Parameter zur Charakterisierung des Ereignisses angeh„ngt (siehe Dialogelement auf Seite pageref).

Weiterhin gibt es noch Ereignisse, die bei Videoverbindung durch Mausklicks in das Bildfenster aufgerufen werden:

Ereignis Parameter Beschreibung
#PICM W„hrend der Online-Verbindung am Host in das dargestellte Bild geklickt. In der Systemvariablen PAR wird die Position des Mausklicks bergeben:
LOBYTE=X-Block (0..95)
HIBYTE=Y-Block (0..71)
Der Wert ist unabh„ngig von der Aufl”sung, Vergr”áerung und Teilbild- Darstellung. Bei einer PAL-Aufl”sung von 786x576 Punkten wird durch 8 geteilt, bei 96x72 Pixel Groáen Bilder wird jeder Punkt addressiert.
1 Wie PICM aber ins Bild geklickt und Taste bleibt gedrckt (Move-Funktion).
2 Wie PICM aber als Doppelklick.
3 Wie PICM aber Taste wurde nach Move losgelassen. Die Position, die bergeben wird, ist die Position des ersten Tastendrucks von ''Move''.

8.3.10  Zeitabh„ngige Steuerung

Zeitabh„ngige Ereignisse

Ereignis Parameter Beschreibung
#HOUR 0..23 Stundenwechsel auf die bergebene Stunde.

Systemvariablen

Variable R/W Typ Beschreibung

DOW

R WORD Day of Week (Wochentag).
0 Sonntag
1 Montag
2 Dienstag
3 Mittwoch
4 Donnerstag
5 Freitag
6 Samstag
WDAY R TEXT Weekday, Aktueller Wochentagsname.
So, Mo, Di, Mi, Do, Fr, Sa
SEC R WORD Aktuelle Sekunde (0..59, Nur gerade Sekunden!)
MIN R WORD Aktuelle Minute (0..59)
HOUR R WORD Aktuelle Stunden /0..23)
DAY R WORD Aktueller Tag (1..31)
MON R WORD Aktueller Monat (1..12)
YEAR R WORD Aktuelles Jahr (1980..2050)
TIME R TEXT Aktuelle Zeit im Format 15:30:23
DATE R TEXT Aktuelles Datum im Format 22.07.1997

8.4  GUI-Dialoge

GUI-Dialoge werden durch die MD-Anweisung (Make Dialog) (siehe Seite pageref) w„hrend der Online-Verbindung auf der grafischen Oberfl„che des Bildempf„ngers angezeigt. Die MD-Anweisung erwartet als ersten Parameter den Namen des Dialogelementes, der nicht l„nger als 10 Zeichen sein soll. Dieser Name wird bei Interaktion mit dem entsprechenden Dialogelement als Makro-Ereignis an pt-100 geschickt. Als Namenskonvention wurde vereinbart, den Makro/Dialog/Ereignisnamen mit einer Tilde ~ zu beenden.

Als zweiter Parameter wird der MD-Anweisung der Typ des zu erzeugenden Dialogelementes und optionale Gestaltver„ndernde Parameter bergeben. Die Parameterliste besteht aus Attribut/Wert-Paaren der Form <Attribut>:<Wert>. Die einzelnen Attribut/Wert Paare werden mit Semikolon getrennt.

Beispiel: MD'ptLicht ','PB:Licht;W:3;H:3' ;

8.4.1  Farbwerte

R,RED Rot
G,GRE Grn
B,BLU Blau
Y,YEL Gelb
W,WHI Weiá
B,BLA Schwarz
M,MAG Magenta (Violett)
MED Mittelgrau
LIG Hellgrau
DAR Dunkelgrau
0 Schwarz
1 Blau
2 Grn
3 Cyan(Trkis)
4 Rot
5 Magenta(Violett)
6 Braun
7 Hellgrau
8 Dunkelgrau
9 Mittelgrau
13 Gelb
14 Weiá

8.4.2  Anordnung der Dialoge

Die Dialogelemente werden an ein vorgegebenes Raster ausgerichtet (z.B. 16 Bildschirmpixel pro Rastereinheit (Gridunit)). Ein Dialog-Rasterfeld kann z.B.20 Rastereinheiten breit und 5 Rastereinheiten hoch sein. Fr jedes Dialogelement wird ein freies Dialogfeld gesucht, das den Dialog (dessen Gr”áe durch Breite und H”he bestimmt wird) aufnehmen kann. Falls kein freier Platz mehr gefunden wird, wird das Dialogelement nicht dargestellt. Die Suche nach einem freien Platz wird in der Reihenfolge ''von oben nach unten'' und dann ''von links nach rechts'' durchgefhrt. Durch die X und Y Attribute hat der Benutzer die M”glichkeit, die Position des Dialogelementes auf dem Rasterfeld selbst zu bestimmen.

Die Aussenabmessung (Outline) eines Dialoges wird aus der šberschriftenbreite, seiner Orientierung (Horizontal/Vertikal) und z.B. der Zahl der Checkbuttons, Radiobuttons oder der Displayfeldbreite berechnet, kann aber auch vom Benutzer durch die W und H Attribute vorgegeben werden.

8.4.3  Pushbutton Dialog

Parameter der MD-Anweisung

Attribut Wert Beschreibung
PB Name Der Name ist die Button-Beschriftung
W 1... Breite des Dialogelementes in Grid-Units
H 1... H”he des Dialogelementes in Grid-Units
X 0... X-Position der linken oberen Ecke des Dialogs
Y 0... Y-Position der linken oberen Ecke des Dialogs

Wirkung der WD-Anweisung

WD bergibt ein WORD mit 0000 oder FFFF fr TRUE bzw. FALSE. Der Button wird bei TRUE farblich hervorgehoben.

Dialogereignis-Parameter

Als Ereignis bei Drcken der Taste wird geliefert:

DialogName Falls Taste normal angeclickt
DialogName1 Falls Taste lange gedrckt bleibt
DialogName2 Falls Doppelclick auf Taste
DialogName3 Falls Taste nach langem Drcken losgelassen wird

Wirkung der QD-Anweisung

Durch die QD-Anweisung kann der aktuelle Zustand des Buttons abgefragt werden. Der Wert 0000 oder FFFF wird gelesen.

8.4.4  Radiobutton Dialog

Parameter der MD-Anweisung

Attribut Wert Beschreibung
RB Name Der Name ist die Button-Gruppen-šberschrift. Der Name ist optional.
W 1... Breite des Dialogelementes in Grid-Units
H 1... H”he des Dialogelementes in Grid-Units
X 0... X-Position der linken oberen Ecke des Dialogs
Y 0... Y-Position der linken oberen Ecke des Dialogs
O H/V Orientierung Horizontal/Vertikal.
B0... B15 Name Ein Name zur Beschriftung des Radiobuttons, fr das angegebene Bit

Wirkung der WD-Anweisung

WD bergibt den aktuellen Wert der Buttons als Bitmaske, wobei ein gesetztes Bit anzeigt, daá der Radiobutton markiert ist. Es sollte genau ein Bit gesetzt sein.

Dialogereignis-Parameter und QD-Anweisung

Bei Bet„tigen eines Radio-Buttons dieser Button-Gruppe wird ein Ereignis mit dem Namen des Dialogelementes erzeugt. In PAR oder mit der QD-Anweisung kann das Ereignismakro den Status der Radiobuttons abfragen (es ist das Bit gesetzt, das einem eingeschalteten Radiobutton entspricht).

8.4.5  Checkbox Dialog

Parameter der MD-Anweisung

Attribut Wert Beschreibung
CB Name Der Name ist die Button-Gruppen-šberschrift. Der Name ist optional.
W 1... Breite des Dialogelementes in Grid-Units
H 1... H”he des Dialogelementes in Grid-Units
X 0... X-Position der linken oberen Ecke des Dialogs
Y 0... Y-Position der linken oberen Ecke des Dialogs
O H/V Orientierung Horizontal/Vertikal.
B0... B15 Name Ein Name zur Beschriftung der Checkbox, fr das angegebene Bit

Wirkung der WD-Anweisung

WD bergibt den aktuellen Wert der Buttons als Bitmaske, wobei ein gesetztes Bit anzeigt, daá der Checkbutton markiert ist.

Dialogereignis-Parameter und QD-Anweisung

Bei Bet„tigen eines Check-Buttons dieser Button-Gruppe wird ein Ereignis mit dem Namen des Dialogelementes erzeugt. In PAR oder mit der QD-Anweisung kann das Ereignismakro den Status der Checkbuttons abfragen. Jeder aktivierte Checkbutton entspricht einem gesetzten Bit.

8.4.6  Entry Text, Texteingabefeld

Parameter der MD-Anweisung

Attribut Wert Beschreibung
ET Name Der Name ist die Eingabefeld-šberschrift. Der Name ist optional.
W 1...Breite des Dialogelementes in Grid-Units
H 1...H”he des Dialogelementes in Grid-Units
X 0...X-Position der linken oberen Ecke des Dialogs
Y 0...Y-Position der linken oberen Ecke des Dialogs
LEN 0... 140 Max. Stringl„nge (wird notfalls rechtsbndig mit Leerzeichen aufgefllt). Voreingestellt ist 140 Zeichen.

Wirkung der WD-Anweisung

WD bergibt den aktuellen Wert des Eingabefeldes als Text.

Dialogereignis-Parameter und QD-Anweisung

Nach Ver„ndern des Textfeldes wird das dem Dialogelement entsprechende Ereignismakro aufgerufen. In NAME oder mit der QD-Anweisung kann der Text des Eingabefeldes abgefragt werden.

8.4.7  Entry Number, Numerisches Eingabefeld

Parameter der MD-Anweisung

Attribut Wert Beschreibung
EN Name Der Name ist die Eingabefeld-šberschrift. Der Name ist optional.
W 1...Breite des Dialogelementes in Grid-Units
H 1...H”he des Dialogelementes in Grid-Units
X 0...X-Position der linken oberen Ecke des Dialogs
Y 0...Y-Position der linken oberen Ecke des Dialogs
MIN 0... 65535 Minimal erforderlicher Eingabewert.
LIM 0... 65535 Maximal erlaubter Eingabewert.

Wirkung der WD-Anweisung

WD bergibt den aktuellen Wert des Eingabefeldes als numerischen Wert.

Dialogereignis-Parameter und QD-Anweisung

Nach Ver„ndern des Textfeldes wird das dem Dialogelement entsprechende Ereignismakro aufgerufen. In PAR oder mit der QD-Anweisung kann der Wert des Eingabefeldes abgefragt werden.

8.4.8  Slider, Schieberegler Dialog

Der Schieberegler zeigt mit prozentualer Darstellung (0-100%) einen Wert aus dem Bereich 0..255 an und ver„ndert ihn bei Bet„tigung.

Parameter der MD-Anweisung

Attribut Wert Beschreibung
SL Name Der Name ist die šberschrift des Schiebereglers. Der Name ist optional.
W 1...Breite des Dialogelementes in Grid-Units
H 1...H”he des Dialogelementes in Grid-Units
X 0...X-Position der linken oberen Ecke des Dialogs
Y 0...Y-Position der linken oberen Ecke des Dialogs
O V/H Gibt an, ob ein horizontaler oder vertikaler Regler verwendet wird.

Wirkung der WD-Anweisung

WD bergibt den aktuellen Wert des Schiebereglers als numerischen Wert im Bereich 0... 255. Nur das Lowbyte wird ausgewertet.

Dialogereignis-Parameter und QD-Anweisung

Nach Ver„ndern des Schiebereglers wird das dem Dialogelement entsprechende Ereignismakro aufgerufen. In PAR oder mit der QD-Anweisung kann der Wert des Reglers (0..255) abgefragt werden.

8.4.9  LED, Optische Anzeige

Parameter der MD-Anweisung

Attribut Wert Beschreibung
LD Name Der Name dient zu Beschriftung der LED.
X 0...X-Position der linken oberen Ecke der LED
Y 0...Y-Position der linken oberen Ecke der LED
COL farbe Farbe der LED im aktiven Zustand (Default: Grn)

Wirkung der WD-Anweisung

WD bergibt 0000 (TRUE), falls die LED in der vorgew„hlten Farbe eingeschaltet werden soll, FFFF (FALSE), falls die LED ausgeschaltet werden soll und einen anderen Wert, um die LED in einer ausgew„hlten Farbe einzuschalten.

QD-Anweisung

Da keine Wertever„nderung dieses statischen Dialogelementes stattfinden kann, wird kein Ereignismakro fr die LED aufgerufen. Die QD-Anweisung liefert den Status der LED als numerischen Wert: 0000 fr ''an'' und FFFF fr ''aus''.

8.4.10  Numerical Display, Numerische Anzeige

Parameter der MD-Anweisung

Attribut Wert Beschreibung
ND Name Der Name ist die šberschrift des Display. Der Name ist optional.
W 1...Breite des Dialogelementes in Grid-Units
H 1...H”he des Dialogelementes in Grid-Units
X 0...X-Position der linken oberen Ecke des Dialogs
Y 0...Y-Position der linken oberen Ecke des Dialogs
COL farbe Segmentfarbe (Default: Grn)
BG farbe Hintergrundfarbe (Default: Schwarz)
STY 7 Momentan ist nur 7 (7-Segment Display) definiert.
LEN 1...Maximale Zahl von Ziffern fr die Anzeige (Default: 4 fr Hex, 8 fr Bin„r, 5 fr Dezimal)
F S Signed Format. Interpretiert Wert als vorzeichenbehaftete Zahl.
Z Leading Zeroes. Zeigt fhrende Nullen an.
H Hexadezimal. Zeigt Hexadezimalzahlen an.
D Dezimal. Zeigt Dezimalzahlen an.
B Bin„r. Zeigt Bin„rzahlen an.
L Large. Doppelte GrӇe.
0 Decimal point xxxxx. (Default: No decimal point)
1 Decimal point xxxx.y
2 Decimal point xxx.yy
3 Decimal point xx.yyy
4 Decimal point x.yyyy
5 Decimal point .yyyyy
UN chars Unit (Default: None). Einheitenzeichen, die hinter das Anzeigefeld geschrieben werden. Example UN:C

Wirkung der WD-Anweisung

WD bergibt den numerischen Wert, der in das Display geschrieben werden soll.

QD-Anweisung

Da keine Wertever„nderung dieses statischen Dialogelementes stattfinden kann, wird kein Ereignismakro fr das Display aufgerufen. Die QD-Anweisung liefert den numerischen Wert, der im Display steht.

8.4.11  Text Display, Alphanumerische Anzeige

Parameter der MD-Anweisung

Attribut Wert Beschreibung
TD Name Text Display (Name als šberschrift optional)
W 1...Breite des Dialogelementes in Grid-Units
H 1...H”he des Dialogelementes in Grid-Units
X 0...X-Position der linken oberen Ecke des Dialogs
Y 0...Y-Position der linken oberen Ecke des Dialogs
COL farbe Textfarbe (Default: Grn)
BG farbe Hintergrundfarbe (Default: Schwarz)
F Vn/Bn Zeichensatz-Typ: V=Vektor Font, B=Bitmap Font. Optional folgt nach dem Font-Typ folgt die Fontgr”sse als Ziffer zwischen 1 und 9.

Wirkung der WD-Anweisung

WD bergibt den Text, der in das Display geschrieben werden soll.

QD-Anweisung

Da keine Wertever„nderung dieses statischen Dialogelementes stattfinden kann, wird kein Ereignismakro fr das Display aufgerufen. Die QD-Anweisung liefert den Text, der im Display steht.

8.4.12  Static Text, Beschriftungstext

Parameter der MD-Anweisung

Attribut Wert Beschreibung
ST Name Der Name enth„lt den Beschriftungstext
H 1...Textgr”áe und H”he in Grid-Units
X 0...X-Position der linken oberen Ecke des Textes
Y 0...Y-Position der linken oberen Ecke des Textes
COL farbe Textfarbe (Default: Dunkelgrau)

Wirkung der WD-Anweisung

Obwohl dieses Dialogelement einen statischen Text repr„sentiert, der also nicht ver„ndert werden sollte, kann mit der WD-Anweisung eine Ver„nderung des Textes vorgenommen werden. Da sich dadurch aber dessen L„nge „ndert und so evtl. andere Dialogelemente berschrieben werden k”nnen, sollte besser ein Text-Display verwendet werden.

QD-Anweisung

Da keine Wertever„nderung dieses statischen Dialogelementes stattfinden kann, wird kein Ereignismakro aufgerufen. Die QD-Anweisung liefert den statischen Text zurck.

8.4.13  Message Text, Mitteilungstext

Der Message Text ist kein sichtbares Dialogelement, ben”tigt also keinen Platz auf der Dialog-Rasterfl„che. Der bergebene Text wird als Hinweistext auf den Bildschirm des Benutzers geschrieben.

Parameter der MD-Anweisung

Attribut Wert Beschreibung
MT Name Der Name enth„lt einen Prefix fr das Message-Window. Der Name ist optional.

Wirkung der WD-Anweisung

Der Text, der der WD-Anweisung an dieses Dialogelement bergeben wird, wird mit dem Prefix des Dialogelementes dem Benutzer z.B. in Form einer Ausgabe in ein Mitteilungsfenster pr„sentiert.

QD-Anweisung

Die QD-Anweisung liefert ein undefiniertes Ergebnis.

8.4.14  LogFile, Virtueller Dateidialog

Logfile ist ein ''virtueller'' Dialog, der auf Dateien operiert, die auf dem Bildempfangsger„t gespeichert sind. Dieser Dialog ben”tigt keinen Platz auf dem Dialograsterfeld.

Beispiel:

MD '~pt_lf','LF:r1.dat;MO:xxxx;LEN:100' ;

Parameter der MD-Anweisung

Die MD-Anweisung meldet die Datei fr Dateioperationen der pt-100 auf dem Host (z.B. Empf„nger PC mit ptWin-Bediensoftware ) an. Nach dem Mode-Attribut drfen mehrere Modusauswahl Buchstaben gelistet werden (ohne Trennzeichen).

Attribut Wert Beschreibung
LF Name Als Name wird der Dateiname der zu verwendenden Datei auf dem lokalen Dateisystem des Benutzers (Hosts) angegeben. Wird kein Name angegeben, wird der Makroname (ohne Sonderzeichen) als Dateiname verwendet. Falls keine Dateinamenerweiterung (.TXT oder „hnlich) nach LF: angegeben wurde, wird der Dateiname mit .TXT erweitert, falls die Datei als Text-Datei ge”ffnet wird (Default) und mit .DAT erweitert, falls es sich um eine Datendatei handelt.
MO R/W Open File for Read or Write (Default)
D/T Open File for Data (kein CR+LF) or Text (Default, jede Zeile wird mit CR+LF abgeschlossen)
L/F Linemode/Fieldmode:
L Linemode (Default):
Jeder WD-Befehl wird als eigener Datensatz in die Datei geschrieben. Im FixedRecord Mode (LEN ¹ 0) wird mit dem Fllzeichen auf die gewnschte Zeilen/Recordl„nge aufgefllt. Bei Textdateien wird CR+LF automatisch angefgt.
F Fieldmode:
Jeder WD-Befehl schreibt nur die bergebene Nummer/Zeichen in die Datei. Ein Zeilenende/Recordende wird mit WD'...','' (also einem leeren 2.Parameter) geschrieben.
A/C Append/Create File:
A Append (Default). Ein Schreibzugriff fgt an das Dateiende an.
C Create file. Datei wird bei MD neu angelegt (gel”scht).
B Buffered Mode (Datei wird nur beim KD oder beim Verbindungsaufbau geschlossen. Dadurch k”nnen keine fremdem Programme darauf zugreifen. Die Dateioperationen sind schneller).
Default: Unbuffered Mode. Die Datei wird nach jedem Zugriff geschlossen.
0... 3 Directory:
0 Datei wird im Verzeichnis PicturePath/ObjName/Datum/... angelegt (Default). Hier werden auch die Bildsequenzen aufbewahrt.
1 Datei wird im Verzeichnis LogPath/... angelegt. Hier werden die Presence-Log-Dateien angelegt.
2 Datei wird im Verzeichnis PicturePath/ObjName/... angelegt. Dies ist auch die Voreinstellung fr die Remote-Makro Dateien.
3 Datei wird im Verzeichnis PicturePath/... angelegt.
Falls kein Dateiname nach LF: angegeben wurde, wird im Falle Directory=0 die aktuelle Uhrzeit HHMMSStt mit Hundertstel-Sekunden als Dateiname verwendet, ansonsten der Makroname des Dialogelementes fr LF. Zus„tzliche Directoryangaben im Dateinamen nach LF beziehen sich immer auf das mit 0-3 festgelegte Verzeichnis und nicht auf das Hauptverzeichnis des PCs (aus Sicherheitsgrnden).
LEN 0 Variable Length Record/Line Mode (Default).
Record und Zeilenl„ngen sind so kurz wie n”tig.
LEN 1...Fixed Record length Mode.
Jeder Record/Jede Zeile wird auf die hier angegebene L„nge mit Fllzeichen aufgefllt. Bei Text-Dateien ist das Fllzeichen Space, bei Daten-Dateien ist es 00. Falls die aktuelle Recordl„nge bereits vor dem Zeilenende l„nger ist als LEN, wird kein Fllzeichen angefgt.

WD-Anweisung

Im WriteMode werden der zweite Parameter als Zwei-Byte Zahl oder Text in die Datei geschrieben. In LineMode bis eventuell bis zur gewnschten Record/Zeilenl„nge mit Fllzeichen aufgefllt oder im Field-Mode so belassen.

Im ReadMode hat WD eine andere Bedeutung: Der bergebene (WORD)-Parameter positioniert

Da n max. 64k groá werden kann, ist diese Positionierung auf die ersten 64k einer Datei beschr„nkt.

Ein nun folgender QD Befehl liest die Daten ab der vorgew„hlten Position. Nach dem Datei”ffnen (MD-Befehl) steht der Lesezeiger am Dateianfang.

QD-Anweisung

Die QD-Anweisung liest aus einer Datei, sofern sie zum Lesen ge”ffnet wurde (sequentiell vom Anfang an). Im ReadMode wird der BufferedMode und der FieldMode ignoriert. Die Datei bleibt immer ge”ffnet. Es werden immer ganze Records/Zeilen gelesen. Bei Textdateien wird kein CR+LF bertragen.

KD-Anweisung

Diese Anweisung schlieát die Datei, l”scht sie aber nicht.


File translated from TEX by TTH, version 2.60.
On 16 Nov 2000, 08:57.