使用SCL获取多个模块的温度数据并存储至目标数据库块中。
发布时间
阅读量:
阅读量
FUNCTION_BLOCK FB111
// Block Parameters
VARIABLE_INPUT
// 输入参数
起始通道地址:整数;
通道数量:整数;
比例系数:实数;
目标地址:任意类型;
ptr AT 目标地址 : ARRAY[0..4] OF WORD;// 解析任意数据类型
END_VAR
VAR_IN_OUT
// I/O Parameters
i:INT;
InteAddr:WORD;
END_VAR
VAR
offset1:INT;
offset2:INT;
offset:INT;
END_VAR
VAR_TEMP
// Temporary Variables
CtlDB:WORD;
CtrBit:WORD;
j:INT;
END_VAR
InteAddr:=ptr[2]; //获取目标地址对应的DB块编号
j:=0;
//计算目标地址的数据总量
offset1:=WORD_TO_INT(ptr[3]) * 8192; //通过将ptr[3]转换为整数后乘以8192得到高位偏移
offset2:=WORD_TO_INT(ptr[4]) / 8; //通过将ptr[4]转换为整数后除以8获得低位偏移
offset:=WORD_TO_INT(INT_TO_WORD(offs
全部评论 (0)
还没有任何评论哟~
