回复:case函数使用遇到的问题

eagleking68

  • 帖子

    49
  • 精华

    0
  • 被关注

    7

论坛等级:侠客

注册时间:2013-01-19

白金 白金 如何晋级?

发布于 2019-06-26 08:27:51

4楼

问题终于找到了,在于step赋初值的if条件上,if条件应该采用脉冲式不应该使用on式的,会导致一直使step在初始步上,例如这个条件

FOR #i := 1 TO 5 BY 1 DO

    "R_of_trig_enable_1"(CLK := "DB_1".enable_1[#i]);

    IF "R_of_trig_enable_1".Q THEN

        "DB_1".step_2[#i] := 1;

        "DB_1".count_of_R_trig := "DB_1".count_of_R_trig + 1;

        "DB_1".enable_1[#i] := 0;

    END_IF;

如果没有"DB_1".enable_1[#i] := 0;这一句也是白搭,虽然用的是上升沿触发,但是在该程序中会返回动作,加入了该条一切正常了。所以,使用case语句的时候,tag标签是可以多样的也可以使用数组,但是初始步条件必须处理好。

评论
编辑推荐: 关闭

请填写推广理由:

本版热门话题

SIMATIC S7-1500系列

共有10820条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

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

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

  • 分享

  • 只看
    楼主

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