1.循环中断
循环中断组织块用于按一定时间间隔循环执行中断程序,例如周期性地定时执行某一段程序,间隔时间从STOP切换到RUN模式时开始计算。
循环中断组织块OB30~OB38默认的时间间隔和中断优先级如表所示。CPU318只能使用OB32和OB35,其余的S7-300CPU只能使用OB35。S7-400CPU可以使用的循环中断OB的个数与CPU型号有关。
循环中断组织块的时间间隔、优先级、OB号表如下:
示例:在I0.0的上升沿时启动OB35对应的循环中断,在I0.1的上升沿禁止OB35对应的循环中断,在OB35中使用MW2加1。
程序如下图:
1)启用、禁用OB35中断
2)OB35完成自加业务
2.硬件中断组织块
硬件中断组织块(OB40~OB47)用于快速响应信号模块(SM,即输入/输出模块)、通信处理器(CP)和功能模块(FM)的信号变化。具有中断能力的信号模块将中断信号送到CPU时,或者当功能模块产生一个中断信号时,将触发硬件中断。
CPU318只能使用OB40和OB41,其余的S7-300CPU只能使用OB40,S7-400CPU可以使用的硬件中断OB的个数与CPU型号有关。
例:CPU313C-2DP集成的16点数字量输入I124.0~I125.7可以逐点设置中断特性,通过OB40对应的硬件中断,在I124.0的上升沿将CPU集成的数字量输出Q124.0置位,在I124.1的下降沿江Q124.0复位。此外要求在I0.2的上升沿时激活OB40对应的硬件中断,在I0.3的下降沿禁止OB40对应的硬件中断。
程序如下:
1)设置硬件
2)启用、禁用OB40
3)OB40获取中断地址,进行业务操作
程序中的OB40_MDL_ADDR代表硬件中断的字节地址,OB40_POINT_ADDR代表硬件中断的位地址
注:仿真程序模拟硬件中断,如下图所示
点击Apply即可完成地址是124.0的硬件中断。
问:在目前该程序中,仿真软件模拟的硬件中断的字节地址一直是07fff,但是模拟的位地址正确,想问一下本程序中是否有哪块儿编写的不正确,请纠正。
程序代码可以在此下载。