回复:应用探讨——S7-300/400中的“硬件中断”

Automann

  • 帖子

    6168
  • 精华

    138
  • 被关注

    308

论坛等级:至圣

注册时间:2004-12-23

普通 普通 如何晋级?

发布于 2011-04-26 22:19:05

3楼

硬件中断组织块(OB40~OB47)用于快速响应输入模块、点对点通信处理器(CP)和功能模块(FM)的信号变化。具有硬件中断功能的上述模块将中断信号传送到CPU时,将触发硬件中断。绝大多数S7-300 CPU只能使用OB40,S7-400 CPU可以使用的硬件中断OB的个数与CPU的型号有关。为了产生硬件中断,在组态有硬件中断功能的模块时,应启用硬件中断。
在数字量输入模块的“输入”选项卡,用复选框启用硬件中断,然后分组或逐点设置上升沿产生中断、下降沿产生中断,或上升沿、下降沿均产生中断。
在模拟量输入模块的“输入”选项卡,用复选框启用输入值超出限制产生硬件中断,然后设置输入值的上限值和下限值。
在功能模块的属性对话框的“基本参数”选项卡,可选择是否根据模块的技术功能对某些事件触发硬件中断。
在点对点通信处理器的属性对话框的“基本参数”选项卡,可选择是否产生中断。

硬件中断被模块触发后,操作系统将用OB40的局部变量OB40_MDL_ADDR(字)向用户提供模块的起始地址,OB40_POINT_ADDR(双字)是数字量输入模块产生硬件中断的点的编号、或模拟模块超出了限制的通道号。
硬件中断组织块OB40的首要任务是通过OB40_MDL_ADDR和OB40_POINT_ADDR提供的地址信息,用比较指令判断是哪个模块、模块中的哪一点产生的中断。然后对中断事件作出相应的处理。
在编写梯形图比较程序时有个小问题需要注意,OB40_MDL_ADDR和OB40_POINT_ADDR的数字类型分别是字和双字,不能直接用于整数比较指令和双整数比较指令。需要将它们保存到其他地址,然后参与比较。
追求完美
评论
编辑推荐: 关闭

请填写推广理由:

本版热门话题

SIMATIC S7-300/400

共有54617条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

快扫描右侧二维码晒一晒吧!

再发帖或跟帖交流2条,就能晋升VIP啦!开启更多专属权限!

  • 分享

  • 只看
    楼主

top
您收到0封站内信:
×
×
信息提示
很抱歉!您所访问的页面不存在,或网址发生了变化,请稍后再试。