tomi_wunder
Level-1
- Beiträge
- 35
- Reaktionspunkte
- 0
-> Hier kostenlos registrieren
Hi!
ich hab mal wieder so'ne ganz dolle Frage:
Mit dem ag_recv will ich die empfangenen Daten aus meinem Ethernet CP343-1 abholen. Das mach' ich ungefähr so:
data_in_buffer ist ein 256-Elementiges Byte-Array im DB net_buffer.
Wenn ich das Ganze jetzt laufen lass, dann krieg ich folgendes (wahnsinnig aufbauendes) Resultat:
Laut Handbuch heißt das soviel wie:
* Unzulässiger Datentyp für den Parameter RECV angegeben
* Systemfehler
Noch anzumerken sei, daß ich auch schon (für den RECV-Param) versucht hab, einen kompletten DB oder ein char-Array anzugeben, was allerdings alles mit dem selben Fehler endet!
Ich hab grad die Vermutung, - bitte wiedersprecht mir, sollte ich falsch liegen - daß ersteres von beidem zutrifft, weil man in AWL den ag_recv ja so aufruft:
Kann man das in SCL auch irgenwie, oder lieg ich mit meiner Vermutung komplett daneben, oder...?
Hat jemand mal einen kurzen Code-Auszug, oder sieht direkt meinen Fehler?
Würd mir sehr weiterhelfen!
MfG
tomi
ich hab mal wieder so'ne ganz dolle Frage:
Mit dem ag_recv will ich die empfangenen Daten aus meinem Ethernet CP343-1 abholen. Das mach' ich ungefähr so:
Code:
ag_recv( ID := 1,
LADDR := w#16#100,
RECV := net_buffer.data_in_buffer,
NDR := res_ndr,
ERROR := res_error,
STATUS := res_status,
LEN := net_buffer.data_in_len );
Wenn ich das Ganze jetzt laufen lass, dann krieg ich folgendes (wahnsinnig aufbauendes) Resultat:
Code:
res_ndr = 0
res_error = 1
res_status = 8184(hex)
* Unzulässiger Datentyp für den Parameter RECV angegeben
* Systemfehler
Noch anzumerken sei, daß ich auch schon (für den RECV-Param) versucht hab, einen kompletten DB oder ein char-Array anzugeben, was allerdings alles mit dem selben Fehler endet!
Ich hab grad die Vermutung, - bitte wiedersprecht mir, sollte ich falsch liegen - daß ersteres von beidem zutrifft, weil man in AWL den ag_recv ja so aufruft:
Code:
CALL AG_RECV
ID := MW 40
LADDR := W#16#0100
RECV := P#M 0.0 BYTE 100, //hier gibt man ja die länge das datenbereichs mit an!!!
NDR := DB 110.DBX 0.6
ERROR := DB 110.DBX 0.7
STATUS := DB 110.DBW 2
LEN := DB 110.DBW 4
Hat jemand mal einen kurzen Code-Auszug, oder sieht direkt meinen Fehler?
Würd mir sehr weiterhelfen!
MfG
tomi