scl 用户定义数据user-defined data types (udt)错误
郑志武
发布于2013-02-28 23:22
153
0
标签:
user-defineddatatypes(udt)在线手册中的例子,为什么有错误?
//udtdefinitionwithasymbolicname
type
measvalues:struct
bipol_1:int:=5;
bipol_2:word:=w#16#ffaa;
bipol_3:byte:=b#16#f1;
bipol_4:word:=w#16#1919;
measure:struct
bipolar_10v:real;
unipolar_4_20ma:real;
end_struct;
end_struct;
end_type
//useoftheudtinanfb
function_blockfb10
var
meas_range:measvalues;
end_var
begin
//...
meas_range.bipol_1:=-4;
meas_range.measure.unipolar_4_20ma:=2.7;
//...
end_function_block
图片说明: 1,错误
佳答案
typemeasvalues不能通过编译,这是因为measvalues是一个符号名,你必须首先在symboltable里面定义measvalues是某个udt,比如udt1000才行
其实在scl中编译fc、fb的时候,如果采用符号名也有同样问题,需要提前定以好才行。