# WagoLibEthernet_01.lib



## sadik (17 Februar 2016)

Hallo

Ich benutze den WagoLibEthernet_01.lib (TCP_CLIENT Baustein) und lese die Daten in den aReceiveBuffer Buffer Array ein.
Wenn die Daten vom Server ankommen ändert sich ein bestimmter Speicherbereich im Array, dieser Bereich im Array variiert natürlich je nach Payload Größe die ich über TCP erhalte.
Ich brauche jetzt eine Methode in Codesys ST um Änderungen in dem Array zu überwachen und wenn neuer Payload vorliegt entsprechend darauf reagieren, also praktisch Callback-Methode wie in höheren Programmiersprachen aufrufen.


----------



## .:WAGO::015844:. (17 Februar 2016)

Hallo sadik,

der Baustein TCP_Client hat einen IN_OUT 'diReceiveCount', welcher die empfangenen Zeichen mitzählt und deren Stelle im Empfangspuffer (Array) angibt.
Sinn macht es, den ReceiveCounter auf <>0 zu überwachen, bei >0 die Anzahl der entsprechenden Zeichen auf dem Empfangspuffer zu holen und danach wieder auf 0 zu setzen.


----------



## Oliver Wetzel (6 Juni 2016)

Hallo,

ich hätte da eine Frage zu dem Empfangspuffer. Bei jeder Verbindung wird dieser immer weiter gefüllt. Wie kann man den Empfangspuffer löschen?


----------



## KLM (6 Juni 2016)

FOR iIdx:=0 TO MAX_RECEIVE_TCP_CLIENT DO
    aReceiveBuffer[iIdx]:=0;
END_IF


----------



## KLM (6 Juni 2016)

Wobei es sicherlich eleganter ist, wenn das NULL setzen gleich beim Auslesen bzw. der Interpretaion erfolgt. Das aber lässt sich ohne konkrete Applikation nicht weiter spezifizieren.


----------

