根据硬件,配置一个S7-1214C 项目,版本V4.2作为测试外部输入上升沿中断项目的器件。
2) 创建中断组织块,OB40:
3) 在“设备视图”CPU属性中组态一个I0.0上升沿中断,连接外部输入上升沿中断连接事件OB40:勾选启用上升沿检测,并连接硬件中断事件OB40。
4) 外部输入中断硬件组态完成,连接外部I0.0输入。保存、编译,下载到CPU,验证:
考虑到验证I0.0是输入中断,在OB40组织块编辑一个累加中断次数的简单程序:
通过外部按钮,触发I0.0产生的上升沿中断,能够正常触发OB40的外部上升沿中断,如上图MW100 = 20(次)中保存着外部上升沿触发的中断次数。
5) 利用指令分离中断的方法:
在OB40组织块中添加一个分离条件,M0.0的线圈状态,作为触发中断分离的条件,将此线圈触点,在OB1中调用DETACH指令的触发条件:
6) 当I0.0外部输入触发中断后,MW100 =(MW100 +1 )完成后,触发DETACH分离OB40,当再次触发I0.0时,OB40组织块中的MW100因中断被分离而不再加1计数,完成中断分离。
7) 当需要再次激活OB40的中断,需要调用M0.3 = 1,图示:
当M0.3 = 1后,OB40中断再次触发生效,触发I0.0的输入,MW100 继续计数。