SCL编程

已锁定

20180412

  • 帖子

    2
  • 精华

    0
  • 被关注

    0

论坛等级:新手

注册时间:2016-07-19

普通 普通 如何晋级?

SCL编程

1521

7

2018-04-12 16:24:55

8个不带自锁按钮,点亮8个指示灯,采用SCL语言写了个循环程序,但是测试时无法实现目的:按钮的功能是按一次点亮一盏灯,再按一次灯熄灭。修改了半天发现没有找出问题出在哪里,还请群友们帮忙看看,欢迎指正,不胜感激!


FOR #k := 0 TO 7 BY 1 DO

    

    #a := PEEK_BOOL(area := 16#83, dbNumber := 0, byteOffset := ((#k+1080) / 8), bitOffset := ((#k+1080) MOD 8));//模拟按钮操作

    

    #b := PEEK_BOOL(area := 16#83, dbNumber := 0, byteOffset := ((#k+1088) / 8), bitOffset := ((#k+1088) MOD 8));//读取中间状态

    

    "R_TRIG_DB"(CLK := #a, Q => #m);//判断上升沿

    

    #b:= (#b XOR #m);//进行逻辑运算

    

    POKE_BOOL(area := 16#83,

             dbNumber := 0,

             byteOffset := ((#k+1088) / 8),

             bitOffset := ((#k+1088) MOD 8),

             value :=  #b);//中间状态保存

   

    IF  #b THEN

        POKE_BOOL(area := 16#82,dbNumber := 0,byteOffset := (#k / 8),bitOffset := (#k MOD 8),value := 1); //点亮指示灯

    END_IF;

END_FOR;


SCL编程 已锁定
编辑推荐: 关闭

请填写推广理由:

本版热门话题

SIMATIC S7-1500系列

共有11077条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

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

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

  • 分享

  • 只看
    楼主

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