zichen8716
我行,我行,我行行行!!!
级别: 家园常客
精华主题: 0
发帖数量: 266 个
工控威望: 527 点
下载积分: 4363 分
在线时间: 59(小时)
注册时间: 2010-03-25
最后登录: 2022-12-28
查看zichen8716的 主题 / 回贴
楼主  发表于: 2011-04-13 12:51
 程序如下:                

                    M0
            ——|↓|————————[ ZRST M10 M20 ]
                    M0
            ——|     |————————[ CALL P0 ]
            ————————————————————[ FEND ]
P0                M8000     
            ——|       |————————[  SET M11 ]
                   M11     
            ——| ↑  |————————[  SET M12 ]
          
            ————————————————————[ SRET ]
            ————————————————————[ END]


现在的问题是第一次按M0,M11 M12可以同时被置位,第二次按下是只能M11置位,M12时钟为低电平。到底是什么问题

子程序P0,修改为
                     M11     
            ——| ↑  |————————[  SET M12 ]
                 M8000     
            ——|       |————————[  SET M11 ]
M11 M12可以同时被置位,哪位高手给解释一下到底是怎么回事。
失败并不意味你浪费了时间和生命。失败表明你有理由重新开始
小鸡已炖
级别: 探索解密
精华主题: 0
发帖数量: 44 个
工控威望: 163 点
下载积分: 451 分
在线时间: 47(小时)
注册时间: 2011-03-29
最后登录: 2023-09-06
查看小鸡已炖的 主题 / 回贴
1楼  发表于: 2011-04-13 17:31
应该和扫描周期有关系
我是这样理解的
M0第1次通的时候CALL执行了扫描周期P0,所以M11被置位M11上升沿也置位M12
M0断开时M11和M12被复位但CALL P0这个扫描周期还在
就好像下面这个程序:
                    M0
            ——|↑|————————[ CALL P0 ]
            —————————————————[ FEND ]
P0                M8000      
            ——|       |————————[  Y0 ]
          
            ————————————————————[ SRET ]
            ————————————————————[ END]

M0通了Y0会一直接通!
所以你那个程序我觉得你第2次按M0的时候M11会再次置位M11但不会在发脉冲给SET12!
哎反正就是这些问题!我表达能力就这样了不知道你知道我在说什么不?O(∩_∩)O哈哈~
你把后面的子程序调换了就更好理解了!因为扫描时从上扫描下来的!
本帖最近评分记录:
  • 下载积分:+4(zichen8716) 热心助人