Kaffeesüchtig
Level-1
- Beiträge
- 17
- Reaktionspunkte
- 1
-> Hier kostenlos registrieren
Hallo zusammen,
ich bin momenten dabei in einem Schmierprojekt Kommunikation über TCP/IP mit TRCV zu testen.
Ausgangslage:
TCON und TRCV.

TCON ist passiv ausgeführt. Ich baue eine Verbindung über Hercules auf.
Der Datenbaustein DATA_CON.receive ist dabei mittels Array of char aufgebaut.

Folgendes Phänomen:
Wenn ich nur die beiden Calls habe und drei verschiedene Telegrammlängen (8, 17, 22) schicke, dann setzt TSEND direkt nach Erhalt des Telegrammes (kürzer als die 40 chars) das NDR Flag und schiebt die Längen (8,17,22) auch raus.

OK, dachte ich mir, dann setzen wir ein Netzwerk darunter und schieben die Daten mit NDR in ein gleiches Feld in einen anderen DB, um diese dort zu zerlegen und weiterzubearbeiten.

Sobald ich dieses Netzwerk aber einpflege, ändert sich der Ablauf. NDR wird nur noch gesetzt, wenn der Buffer mit 40 Stellen aufläuft.
Verwendet wird TIA17 mit 1214er Steuerung.

Hat das verhalten schon mal jemand beobachtet?
Prinzipiell waren das Versuche, mit unterschiedlicher Telegrammlänge zu arbeiten. Somit müsste ich vermutlich Byteweise empfangen. Wie löse ich das aber, wenn ich kein definiertes Endezeichen habe?
Gruß
Michael
ich bin momenten dabei in einem Schmierprojekt Kommunikation über TCP/IP mit TRCV zu testen.
Ausgangslage:
TCON und TRCV.

TCON ist passiv ausgeführt. Ich baue eine Verbindung über Hercules auf.
Der Datenbaustein DATA_CON.receive ist dabei mittels Array of char aufgebaut.

Folgendes Phänomen:
Wenn ich nur die beiden Calls habe und drei verschiedene Telegrammlängen (8, 17, 22) schicke, dann setzt TSEND direkt nach Erhalt des Telegrammes (kürzer als die 40 chars) das NDR Flag und schiebt die Längen (8,17,22) auch raus.

OK, dachte ich mir, dann setzen wir ein Netzwerk darunter und schieben die Daten mit NDR in ein gleiches Feld in einen anderen DB, um diese dort zu zerlegen und weiterzubearbeiten.

Sobald ich dieses Netzwerk aber einpflege, ändert sich der Ablauf. NDR wird nur noch gesetzt, wenn der Buffer mit 40 Stellen aufläuft.
Verwendet wird TIA17 mit 1214er Steuerung.

Hat das verhalten schon mal jemand beobachtet?
Prinzipiell waren das Versuche, mit unterschiedlicher Telegrammlänge zu arbeiten. Somit müsste ich vermutlich Byteweise empfangen. Wie löse ich das aber, wenn ich kein definiertes Endezeichen habe?
Gruß
Michael