zxymnp
级别: 略有小成
精华主题: 0
发帖数量: 130 个
工控威望: 268 点
下载积分: 958 分
在线时间: 52(小时)
注册时间: 2007-03-12
最后登录: 2024-09-19
查看zxymnp的 主题 / 回贴
楼主  发表于: 2009-04-02 09:03
       我实验程序调用指令时编了下面程序段仿真,但在程序文件间调用带参数的子程序时,刚进入仿真执行中,main程序中X2还未为ON时MAIN1中的P3子程序就开始执行[了。这是为什么呢?
下面是用Q02H编的实验指令。由2个程序块组成:main 和main1.
[ 此帖被zxymnp在2009-04-02 13:09重新编辑 ]
附件: 带参数的程序调用.rar (11 K) 下载次数:10
网站提示: 请不要用迅雷下载附件,容易出错
zxymnp
级别: 略有小成
精华主题: 0
发帖数量: 130 个
工控威望: 268 点
下载积分: 958 分
在线时间: 52(小时)
注册时间: 2007-03-12
最后登录: 2024-09-19
查看zxymnp的 主题 / 回贴
1楼  发表于: 2009-04-02 11:15
谢谢哦!你说的是把m0放在MAIN1里或直接放在P3 里吧,如果对于扫描主程序中只有一次调用可以,如果多次调用而且传递的不仅仅是m0,那怎么办啊?
可能出现了一次         [  ECALL  "MAN1"     p3     M0]
              后面又出现了    [ECALL   "MAIN"       p3     M10]
zxymnp
级别: 略有小成
精华主题: 0
发帖数量: 130 个
工控威望: 268 点
下载积分: 958 分
在线时间: 52(小时)
注册时间: 2007-03-12
最后登录: 2024-09-19
查看zxymnp的 主题 / 回贴
2楼  发表于: 2009-04-02 13:06
谢谢兄弟帮把程序发出来。寻求更多的解答哦
zxymnp
级别: 略有小成
精华主题: 0
发帖数量: 130 个
工控威望: 268 点
下载积分: 958 分
在线时间: 52(小时)
注册时间: 2007-03-12
最后登录: 2024-09-19
查看zxymnp的 主题 / 回贴
3楼  发表于: 2009-04-02 16:16
小弟还有点疑问:我的 MAIN和MAIN1都设置成扫描程序,在仿真时MAIN中X0未置ON时,(应该未调用P30吧????)
而把MAIN1中的子程序P0中X3强制为ON怎么Y4就会有输出呢?或直接在P0中设置个秒脉冲输出,就直接能输出。可根本没调用MAIN1中的子程序啊!

    求教!!!!!!
zxymnp
级别: 略有小成
精华主题: 0
发帖数量: 130 个
工控威望: 268 点
下载积分: 958 分
在线时间: 52(小时)
注册时间: 2007-03-12
最后登录: 2024-09-19
查看zxymnp的 主题 / 回贴
4楼  发表于: 2009-04-02 16:55
引用
引用第6楼thatmouse于2009-04-02 16:44发表的  :
你在设置参数里的引导文件设置里把main和main1都插入他们就在同一个扫描周期了,这样你说的问题应该就可以解决了。。。

我按兄弟的办法设置了,在MAIN中的X0没为ON时MAIN1中X3强制为ON时还有输出!我哪里设的还不对吗?????