Function DE Version 4.00

@SetNTComPortHandshake

NTComPort

Syntax

@SetNTComPortHandshake(OSCOMHANDLE1;RTS2;CTS3;DTR4;DSR5;XONXOFF6);

Beschreibung

Nur für Engine unter Windows!

Aktuelle Handshake-Einstellung für COM-Port mit OSCOMHANDLE OSCOMHANDLE1 ändern. Einzelne Werte können durch Übergabe von -1 vor dem Verändern bewahrt werden.

FN RTS2: (Ready-to-send)
Wert   C-Symbol         Bedeutung
0      RTS_CONTROL_DISABLE   Disable RTS-line and leave it LOW
1      RTS_CONTROL_ENABLE   Enable RTS-line and leave it HIGH
2      RTS_CONTROL_HANDSHAKE   Enable normal RTS handshaking
3      RTS_CONTROL_TOGGLE   RTS HIGH if any data to transmit, else LOW

FN CTS3: (Clear-to-send)
Bit   HEX   Bedeutung
1      0001   Use CTS for output flow control (suspend if not HIGH)

FN DTR4: (Data-terminal-ready)
Wert   C-Symbol         Bedeutung
0      DTR_CONTROL_DISABLE   Disable DTS-line and leave it LOW
1      DTR_CONTROL_ENABLE   Enable DTS-line and leave it HIGH
2      DTR_CONTROL_HANDSHAKE   Enable normal DTR handshaking

FN DSR5: (Data-set-ready)
Bit   HEX   Bedeutung
1      0001   Use DSR for output flow control (suspend if not HIGH)
2      0002   Use DSR for input control (ignore Bytes if not HIGH)

FN XONXOFF: (XON/XOFF)
Bit   HEX   Bedeutung
1      0001   Use XON/XOFF for output flow control
2      0002   Use XON/XOFF for input flow control

Gebräuchliche Enstellungen:

RTS/CTS:      @SetNTComPortHandshake(HANDLE;2;1;0;0;0);
RTS/CTS/DTR/DSR:   @SetNTComPortHandshake(HANDLE;2;1;2;1;0);
XON/XOFF:      @SetNTComPortHandshake(HANDLE;0;0;0;0;3);

Beispiel: @SetNTComPortHandshake(OSCOMHANDLE1;RTS2;CTS3;DTR4;DSR5;XONXOFF6);

OSCOMHANDLE1:=@OpenNTComPort("COM1");
@SetNTComPortHandshake(OSCOMHANDLE1;2;1;1;0;0);OSCOMHANDLE1:=@CloseNTComPort(OSCOMHANDLE1);

Öffnet einen COM-Port, setzt seine Handshake-Einstellungen auf ausschließliche Benutzung von RTS/CTS als normale Handshake-Leitungen, setzt DTS auf HIGH und schließt ihn anschließend wieder.

Beispiel: @SetNTComPortHandshake(OSCOMHANDLE1;RTS2;CTS3;DTR4;DSR5;XONXOFF6);

OSCOMHANDLE1:=@OpenNTComPort("COM1");
@SetNTComPortHandshake(OSCOMHANDLE1;-1;-1;0;-1;-1);OSCOMHANDLE1:=@CloseNTComPort(OSCOMHANDLE1);

Öffnet einen COM-Port, setzt DTR auf LOW und schließt ihn anschließend wieder. Auf diese Art könnte ein normal konfiguriertes Modem zum Auflegen bewegt werden.