-> Hier kostenlos registrieren
Hallo,
bei meinem Ziel zur Laufzeit eine Datenbausteinnummer zu übertragen, nutze ich gerade im Versuch die Funktion "POKE_BLK". Das funktioniert auch alles ganz toll. Allerdings nur in eine Richtung. Egal welche Source oder Destination ich angeben, transferiert wird immer vom Destination DB in den Source DB. Ich benötige dies allerdings genau anders herum, also immer von einem festen DB in einem DB, welcher erst zur Laufzeit bekannt ist
Was läuft denn da bei mir nicht richtig?
P.S. Da ich als Quelle und Ziel immer ein DB angegeben habe (16#84) scheint die Länge in Byte (Count) wohl egal zu sein. Denn egal was ich dort auch eingebe, es wird immer der ganze DB übertragen. Das wird in der Hilfe so nicht erklärt.
Hier mal der SCL-Code:
bei meinem Ziel zur Laufzeit eine Datenbausteinnummer zu übertragen, nutze ich gerade im Versuch die Funktion "POKE_BLK". Das funktioniert auch alles ganz toll. Allerdings nur in eine Richtung. Egal welche Source oder Destination ich angeben, transferiert wird immer vom Destination DB in den Source DB. Ich benötige dies allerdings genau anders herum, also immer von einem festen DB in einem DB, welcher erst zur Laufzeit bekannt ist
Was läuft denn da bei mir nicht richtig?
P.S. Da ich als Quelle und Ziel immer ein DB angegeben habe (16#84) scheint die Länge in Byte (Count) wohl egal zu sein. Denn egal was ich dort auch eingebe, es wird immer der ganze DB übertragen. Das wird in der Hilfe so nicht erklärt.
Hier mal der SCL-Code:
Code:
Temp
Ziel_DB DInt
Quell_DB DInt
#Quell_DB := 1;
#Ziel_DB:=BYTE_TO_DINT("TAG_ID");
POKE_BLK(area_src:=16#84,
dbNumber_src:=#Quell_DB,
byteOffset_src:=0,
area_dest:=16#84,
dbNumber_dest:=#Ziel_DB,
byteOffset_dest:=0,
count:=1);
Zuletzt bearbeitet: