SCL FOR循环

已锁定

xiaode

  • 帖子

    1377
  • 精华

    2
  • 被关注

    49

论坛等级:奇侠

注册时间:2008-07-18

钻石 钻石 如何晋级?

SCL FOR循环

927

2

2010-07-09 09:23:01

我变了一个功能块,就是就行比较,但是比较结果发现,有的比较了,有的没有比较,不知道是怎么回事,大家看一下!
FUNCTION FC104: void

VAR_TEMP
// Temporary Variables
i:INT;
j:INT;
END_VAR
//LABEL

//LAB1;

//END_LABEL
FOR i:=0 TO 11 BY 1 DO
// Statement Section
IF DWORD_TO_REAL(DB8.DD[ i*4 ])>=DWORD_TO_REAL(DB6.DD[ 4*i+4 ]) AND DWORD_TO_REAL(DB8.DD[ i*4 ])<=DWORD_TO_REAL(DB6.DD[ i*8 ]) THEN
// IF TEST.DD[ i*4 ]>SET_PAGE.DD[ 4*i+4 ] AND TEST.DD[ i*4 ] TEST.result[i]:=true;
ELSE
TEST.result[i]:=false;
END_IF;
END_FOR;
FOR i:=0 TO 11 BY 1 DO
IF TEST.result[i] THEN
TEST.result[12]:=TRUE ; //OK
// GOTO LAB1 ;
ELSE
TEST.result[12]:=FALSE ; // NG
TEST.result[13]:=TRUE ;
EXIT; // EXIT FOR LOOP
END_IF;
END_FOR;
//LAB1: i := 1 ;
IF TEST.result[12] THEN
message.STEP:=message.STEP+1; // IF TEST IS OK THEN STEP+1
END_IF;
IF TEST.result[13] THEN // IF TEST IS NG THEN STEP+?????????? how to do it ? ask su or wu or tian
message.STEP:=message.STEP+45;
END_IF;

// Instruction Section

END_FUNCTION
因为我的比较条件是放开的按照道理应该是TEST.result[0]到TEST.result[11]的值应该为true,但是TEST.result[i],i为偶数是值为true,就是TEST.result[0]=true TEST.result[2]=true TEST.result[4]=true TEST.result[6]=true TEST.result[8]=true TEST.result[10]=true 是怎么回事?我的FOR 语句 用错了吗?
SCL FOR循环 已锁定
编辑推荐: 关闭

请填写推广理由:

本版热门话题

SIMATIC S7-300/400

共有54703条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

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

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

  • 分享

  • 只看
    楼主

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