中断子程序问题

已锁定

柯原

  • 帖子

    49
  • 精华

    0
  • 被关注

    2

论坛等级:游民

注册时间:2009-03-08

普通 普通 如何晋级?

中断子程序问题

609

4

2009-04-06 14:49:59

昨天看到LaoHuai前辈给问自由口通讯朋友的例子如下:

1 用串口软件控制Q0.0--Q0.7的输出
主程序:
LD SM0.1
MOVB 9, SMB30
ATCH INT_0, 8
ENI
中断0程序:
LD SM0.0
MOVB SMB2, QB0
将串口软件设置为波特率9600,无校验,数据位8,停止位1,并设置正确的COM口。
用PPI电缆将PLC和电脑连接好。
比如向PLC发1时,Q0.0亮,发2,那么Q0.1亮,发255,那么从Q0.0到Q0.7都亮,发送0,则都不亮。
程序我试过,非常好,也非常直观,但我疑惑的是在西门子手册里面不是提到中断程序如下描述:
(了解S7-200如何处理中断例行程序
作为对关联的内部或外部事件的应答,执行中断例行程序。一旦中断例行程序的最后一条指令被执行,控制被返回至主程序。您可以用执行"从中断指令有条件返回"指令(CRETI)的方法退出例行程序)
我不明白的是在上面例子程序里,LD SM0.1,也就是说中断子程序不只调用一次吗,那为什么中断程序上电后是一直运行的了,我根据[一旦中断例行程序的最后一条指令被执行,控制被返回至主程序],那主程序也不会再调用中断程序啊,怎么中断程序一直执行呢?请前辈指教,我理解错在哪里?谢谢!
中断子程序问题 已锁定
编辑推荐: 关闭

请填写推广理由:

本版热门话题

SIMATIC S7-200

共有33264条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

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

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

  • 分享

  • 只看
    楼主

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