zxy760803
级别: *
精华主题: * 篇
发帖数量: * 个
工控威望: * 点
下载积分: * 分
在线时间: (小时)
注册时间: *
最后登录: *
查看zxy760803的 主题 / 回贴
楼主  发表于: 2006-10-29 17:09
杨工,一般来说,EI指令应该放在主程序中的什么地方呢?对这一点三菱的编程手册说得很不详细。

如果EI放在主程序的开始(不考虑DI指令),那么,在主程序的执行中,产生的中断都是有效的;

如果放在主程序的中间,在主程序开始一直到EI指令之间产生的中断是无效的。那么现在就有一个问题了,如果恰好在这个期间产生了中断,那么这个中断不就丢失了吗?在高速计数的程序中,这种情况是应该避免的吧?

我的问题是,这个EI到底应该放在程序中的什么地方才是最合理的?感谢
langman
级别: 家园常客
精华主题: 0
发帖数量: 576 个
工控威望: 606 点
下载积分: 1500 分
在线时间: 227(小时)
注册时间: 2008-06-23
最后登录: 2021-04-09
查看langman的 主题 / 回贴
1楼  发表于: 2008-11-12 15:53
见手册155页有这么一句话:
即使在DI-EI指令间(禁止中断区间)发生中断,亦能对其记忆并在EI指令之后执行。禁止区间长的话,接受中断就滞后。
解释:中断发生在禁止区间,仍然能被采纳,但要等到扫描到下次EI才能执行(如果发生在许可区间,当场就能被执行)。

我习惯将中断许可放在主程序开始位置,用特殊继电器(M8050~M8059)来控制中断开关。
本帖最近评分记录:
  • 下载积分:+1(YMMFA) 热心助人!
  • 朗工自动化,承接自动化改造工程:PLC控制系统、伺服系统、气动、步进、节能灯设备、机械手、集成电路测试设备、变频器、人机界面,欢迎洽谈,