回复:SFC20调用如何使用指针地址赋值

askab

  • 帖子

    401
  • 精华

    5
  • 被关注

    34

论坛等级:侠圣

注册时间:2005-07-24

黄金 黄金 如何晋级?

发布于 2015-10-30 13:47:25

4楼

FUNCTION_BLOCK FB5

INPUT

    // Input Parameters

input_data:Array[0..11] OF BYTE; //例如输入为6个字

number:INT;  //组号

END_VAR

VAR_OUTPUT

    // Output Parameters

output_data:Array[0..5] OF BYTE;  //输出为3个字

END_VAR

VAR_TEMP

    i:INT;

    real_var:INT;  //故障反馈值

END_VAR

    FOR I:= 0 TO 5 BY 1 DO  //假设分为2组

  IF number =1 THEN     //传送前3个字 第一组

  real_var:=BLKMOV(SRCBLK := input_data[i]  // IN: ANY

          ,DSTBLK :=output_data[i]  // OUT: ANY

          ); // INT

  END_IF;

  IF number =2 THEN     //传送后3个 第二组

  real_var:=BLKMOV(SRCBLK := input_data[i+6]  // IN: ANY

          ,DSTBLK :=output_data[i]  // OUT: ANY

          ); // INT

  END_IF;      

    END_FOR; 

END_FUNCTION_BLOCK


DATA_BLOCK DB6  FB5  //存储数据组

//

// Block Comment...

//

BEGIN


END_DATA_BLOCK


大家同行,you ok ? me !
评论
编辑推荐: 关闭

请填写推广理由:

本版热门话题

SIMATIC S7-300/400

共有54615条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

快扫描右侧二维码晒一晒吧!

再发帖或跟帖交流2条,就能晋升VIP啦!开启更多专属权限!

  • 分享

  • 只看
    楼主

top
您收到0封站内信:
×
×
信息提示
很抱歉!您所访问的页面不存在,或网址发生了变化,请稍后再试。