Hallo Zusammen,
ich beschäftige mich gerade mit TIA Portal V13 und möchte eine aus S/ Classic fertiges SCL-File in TIA Portal importieren und generieren. Aber TIA Portal gibt mir hierbei eine Fehlermeldung bei der folgenden Funktion:
Leider sehe ich auf anhieb nicht den Fehler den TIA Portal mir ausgibt:
Generiere Baustein "FC_COPY_DATA_ANY"
Interface: Der Datentyp "AT construct" ist an dieser Stelle nicht erlaubt.
Interface: Der Datentyp "AT construct" ist an dieser Stelle nicht erlaubt.
Ze 000084: Baustein "FC_COPY_DATA_ANY" wird mit dem Attribut "Optimierter Bausteinzugriff" angelegt.
24: Ungültiger Datentyp.
24: Ungültiger Datentyp.
Kann mir jemand hierbei helfen was ich bei der Funktion übersehe?
LG
ich beschäftige mich gerade mit TIA Portal V13 und möchte eine aus S/ Classic fertiges SCL-File in TIA Portal importieren und generieren. Aber TIA Portal gibt mir hierbei eine Fehlermeldung bei der folgenden Funktion:
Code:
FUNCTION FC_COPY_DATA_ANY: VOID
VAR_INPUT
Data_Length : BYTE;
Src_Type : BYTE;
Src_DbNr : BYTE;
Src_Adr : INT;
Dst_Type : BYTE;
Dst_DbNr : BYTE;
Dst_Adr : INT;
END_VAR
VAR_TEMP
src: STRUCT //ANY struct
ANY_id: BYTE;
DataType: BYTE;
Length: WORD;
DB_Nummer: WORD;
MemoryArea: BYTE;
ByteAddressMSB: BYTE;
ByteAddressLSB: WORD;
END_STRUCT;
dst: STRUCT //ANY struct
ANY_id: BYTE;
DataType: BYTE;
Length: WORD;
DB_Nummer: WORD;
MemoryArea: BYTE;
ByteAddressMSB: BYTE;
ByteAddressLSB: WORD;
END_STRUCT;
srcAdr : WORD;
dstAdr : WORD;
p_src AT src :ANY;
p_dst AT dst :ANY;
ret_val_blk :INT;
END_VAR
BEGIN
srcAdr := SHL (IN:=INT_TO_WORD(Src_Adr), N:=3);
dstAdr := SHL (IN:=INT_TO_WORD(Dst_Adr), N:=3);
//Pointer for input data P#I 592.0 BYTE 28
src.ANY_id := B#16#10; //for S7 always 10h
src.DataType:= B#16#02; //Type Byte
src.Length:= Data_Length; //28 Byte
src.DB_Nummer:= Src_DbNr; //no DB than 0
src.MemoryArea:= Src_Type; //81 = Input, 82 = output, 84 = Datablock
src.ByteAddressMSB:= B#16#0;
src.ByteAddressLSB:= srcAdr; //90h = and 3 to right, result 10010000 => 12d Bitadresse = 000
//Pointer for output data P#Q 576.0 BYTE 9
dst.ANY_id := B#16#10; //for S7 always 10h
dst.DataType:= B#16#02; //Type Byte
dst.Length:= Data_Length; //28 Byte
dst.DB_Nummer:= Dst_DbNr; //28 Byte //no DB than 0
dst.MemoryArea:= Dst_Type; //81 = Input, 82 = output, 84 = Datablock
dst.ByteAddressMSB:= B#16#0;
dst.ByteAddressLSB:= dstAdr; //80h = and 3 to right, result 100000 => 10d Bitadresse = 000
ret_val_blk := BLKMOV(srcblk:= p_src, dstblk:= p_dst);
END_FUNCTION
Zitat:
Generiere Baustein "FC_COPY_DATA_ANY"
Interface: Der Datentyp "AT construct" ist an dieser Stelle nicht erlaubt.
Interface: Der Datentyp "AT construct" ist an dieser Stelle nicht erlaubt.
Ze 000084: Baustein "FC_COPY_DATA_ANY" wird mit dem Attribut "Optimierter Bausteinzugriff" angelegt.
24: Ungültiger Datentyp.
24: Ungültiger Datentyp.
LG