您现在的位置是:首页 > PLC技术 > PLC技术

S7-300/400用户程序的块堆栈(B堆栈)

来源:艾特贸易2017-06-05

简介如果一个块的处理因为调用另外一个块,或者被更高优先级的 OB 块中止, CPU 将在块堆栈中存储以下信息: 1) 被中断的块的类型 ( OB 、 FB 、 FC 、 SFB 、 SFC) 、编号和返回地址。 2) 从

    如果一个块的处理因为调用另外一个块,或者被更高优先级的OB块中止,CPU将在块堆栈中存储以下信息:

   1)被中断的块的类型( OBFBFCSFBSFC)、编号和返回地址。

   2)DBDI寄存器中获得的块被中断时打开的共享数据块和背景数据块的编号。

   3)局部数据堆栈的指针。

    利用这些数据,可以在中断它的任务处理完后恢复被中断的块的处理。在多重调用时,堆栈可以保存参与嵌套调用的几个块的信息。

   CPU处于STOP模式时,可以用STEP 7查看块堆栈中保存的进入STOP模式时没有处理完的块,在块堆栈中,块按照它们被处理的顺序排列(见图6-2)。

    每个中断优先级对应的块堆栈可以储存的数据的字节数与CPU的型号有关。

块堆栈与局部数据堆栈

图6-2 块堆栈与局部数据堆栈