老大很悲伤
冰冻三尺非一日之寒
级别: 家园常客
精华主题: 0
发帖数量: 286 个
工控威望: 524 点
下载积分: 4021 分
在线时间: 173(小时)
注册时间: 2011-11-02
最后登录: 2024-10-31
查看老大很悲伤的 主题 / 回贴
楼主  发表于: 2015-05-14 22:14
程序的意思是叫M1 M2 M3 M4,按顺序ON.然后按M4,M3,M2,M1.顺序OFF.请问程序对不对?实际运行时出了点小问题,谁能看出来哪出问题了吗?先运行一遍正常。运行完后Z0变成了-1.再次重新运行时,不能运行。把DECP K1M1Z0与DECP Z0.上下行互换后就好了,这是为什么?
[ 此帖被老大很悲伤在2015-05-14 22:26重新编辑 ]
chenhuan77
初来乍到 ^_^
级别: 探索解密
精华主题: 0
发帖数量: 24 个
工控威望: 155 点
下载积分: 1297 分
在线时间: 44(小时)
注册时间: 2013-06-24
最后登录: 2024-01-18
查看chenhuan77的 主题 / 回贴
1楼  发表于: 2015-05-15 11:21
DECP K1M1Z0 写在上面时,当M0 OFF,此时Z0=4,K1M1Z0=5,也就是从M5到M1置OFF,这样,DECP K1M1Z0这个语句就运行了5次,所以,Z0 会变成-1。
当Z0=-1时,K1M1Z0=M0,此时使M0 ON,然后incp K1M1Z0也就是incp M0 动作使M0 OFF,所以程序在这里出问题了。
本帖最近评分记录:
  • 下载积分:+3(老大很悲伤) 感谢
    老大很悲伤
    冰冻三尺非一日之寒
    级别: 家园常客
    精华主题: 0
    发帖数量: 286 个
    工控威望: 524 点
    下载积分: 4021 分
    在线时间: 173(小时)
    注册时间: 2011-11-02
    最后登录: 2024-10-31
    查看老大很悲伤的 主题 / 回贴
    2楼  发表于: 2015-05-15 20:49
    引用
    引用第1楼chenhuan77于2015-05-15 11:21发表的  :
    DECP K1M1Z0 写在上面时,当M0 OFF,此时Z0=4,K1M1Z0=5,也就是从M5到M1置OFF,这样,DECP K1M1Z0这个语句就运行了5次,所以,Z0 会变成-1。
    当Z0=-1时,K1M1Z0=M0,此时使M0 ON,然后incp K1M1Z0也就是incp M0 动作使M0 OFF,所以程序在这里出问题了。

    为什么Z0=4时,K1M1Z0=5
    gmxzll520
    草操
    级别: 探索解密
    精华主题: 0
    发帖数量: 9 个
    工控威望: 137 点
    下载积分: 580 分
    在线时间: 4(小时)
    注册时间: 2013-04-23
    最后登录: 2023-12-01
    查看gmxzll520的 主题 / 回贴
    3楼  发表于: 2015-05-15 21:55
    看下梯形图看图
    本帖最近评分记录:
  • 下载积分:+3(老大很悲伤) 感谢
    老大很悲伤
    冰冻三尺非一日之寒
    级别: 家园常客
    精华主题: 0
    发帖数量: 286 个
    工控威望: 524 点
    下载积分: 4021 分
    在线时间: 173(小时)
    注册时间: 2011-11-02
    最后登录: 2024-10-31
    查看老大很悲伤的 主题 / 回贴
    4楼  发表于: 2015-05-15 23:32
    引用
    引用第3楼gmxzll520于2015-05-15 21:55发表的  :
    看下梯形图看图

    这样写也可以,跟你的意思基本一致,不用比较Z0,K4.K0,对吗?
    wengine
    级别: 家园常客
    精华主题: 0
    发帖数量: 60 个
    工控威望: 633 点
    下载积分: 955 分
    在线时间: 84(小时)
    注册时间: 2015-03-02
    最后登录: 2024-10-15
    查看wengine的 主题 / 回贴
    5楼  发表于: 2015-05-16 10:46
    引用
    引用第2楼老大很悲伤于2015-05-15 20:49发表的  :

    为什么Z0=4时,K1M1Z0=5

    Z是变址寄存器,Z0=4时,K1M1Z0=M1+4=M5