回复:不循环移位指令

dongqing

  • 帖子

    61
  • 精华

    0
  • 被关注

    4

论坛等级:游侠

注册时间:2010-04-17

普通 普通 如何晋级?

发布于 2012-04-06 10:35:25

5楼

N大侠您好,看了你跑马灯程序,很受启发。我刚弄了个Q点循环输出的程序,用来测试用的,刚开始我想用地址寄存器寻址做的,但AR1的指针值不能保存,在PLC下一个扫描周期重新置位为0.0了,原来得用M存储器保存下啊。后来我改成用存储器寻址做的,下面是我得程序,请指点下,我现在是学着用语句表的,呵呵
首先将Q0.0置1
md40为当前指针
md60为前一指针
MD50为数据长度,比如监视QB0,长度就为8
MD70为最后一个要显示位指针
必须延迟T2时间断开T1,不能用T1常闭点来断开T1,否则指针始终指向第一位地址
网络一
A M 30.0 //启动Q点循环输出
JCN M1
AN M 30.4
AN T 2
L S5T#10S
SD T 1 //Q输出位点亮时间,为10秒
A T 1
FP M 30.1
S Q [MD 40]
R Q [MD 60]
A T 1
L S5T#2S
SD T 2
网络二
A M 30.0
AN M 30.4
L S5T#1S
SD T 4
A T 4
FP M 30.3
S Q 0.0 //首先点亮Q0.0
A Q [MD 40]
FP M 30.2
JNB m2
L MD 40
L L#1
+D
T MD 40
m2: NOP 0
网络三
L MD 40
L MD 50
>=D
S M 30.4
L MD 40
L L#1
-D
T MD 60
L MD 50
L L#1
-D
T MD 70
网络四
A M 30.4
L S5T#6S
SD T 3
A T 3
R Q [MD 70]
R M 30.4
R M 30.0
A T 3
JCN m3
L L#1
T MD 40
L L#0
T MD 60
m3: NOP 0
M1: NOP 0
评论
编辑推荐: 关闭

请填写推广理由:

本版热门话题

SIMATIC S7-300/400

共有54618条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

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

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

  • 分享

  • 只看
    楼主

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