回复:我早晨也想了个程序,请大家指点下;

n次看你的背影

  • 帖子

    2321
  • 精华

    73
  • 被关注

    53

论坛等级:奇侠

注册时间:2008-03-11

普通 普通 如何晋级?

发布于 2012-08-08 17:51:41

16楼

楼主:看了你的代码,感觉你定时器用的不合适,缺少一条返回比较指令,超出地址无法返回就是这个原因。按照你的思路,给你修改了一些代码,应该可以了。你现在应该可以去指挥这千军万马了^_^
修改代码如下:

A M 100.1 //扫描启动、停止标志位(M100.1=1启动,M100.1=0停止)
FP M 100.2 //判断启动信号的上升沿
JCN M001 //如果启动上升沿没有到来,跳转到M001
L P#0.5 //如果启动上升沿到来,将起始地址装载到ACCU1(★定义起始地址)
T MD 200 //将起始地址暂存到MD102
M001: A M 100.3
A M 100.1
= Q [MD 200] //将当前的RLO赋给当前的Q点
A M 100.3
FN M 100.4
JCN M002
L MD 200
L P#0.1
+D
T MD 200
M002: L MD 200
L P#15.0 //P#15.0相当于Q15.0了,并不是15个Q点;P#2.4才相当于Q2.4
>D
JCN M003 //如果当前的地址不大于结束地址,跳转到M003;如果当前的地址大于结束地址
L P#0.5 //装载起始地址到地址寄存器1(地址返回功能)
T MD 200
M003: A M 100.1 //扫描启动、停止标志位(M100.1=1启动,M100.1=0停止)
AN T 1
L S5T#8S
SE T 1
L T 1
L 300
>I
= M 100.3
AN M 100.1 //M100.1=0停止时,复位脉冲源定时器
R T 1
佛对我说:“你的痛苦来自于你的欲望,没有欲望也就没有痛苦!”
评论
编辑推荐: 关闭

请填写推广理由:

本版热门话题

SIMATIC S7-300/400

共有54616条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

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

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

  • 分享

  • 只看
    楼主

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