回复:UC指令调用FB

students

  • 帖子

    349
  • 精华

    0
  • 被关注

    8

论坛等级:侠士

注册时间:2011-12-09

普通 普通 如何晋级?

发布于 2013-08-15 13:11:29

8楼

quote:以下是引用youhm在2013-08-14 21:01:44的发言:
我做这个实验为了深入了解FB的调用机制,不过关于数据块寄存器内部运作还不是很清楚,我想应该这样的
对于FB块,DI寄存器非常重要,而被调用的FB块也要使用DI寄存器,所以调用FB块,系统要保存调用前的DINO,应该保存在块堆栈里,那为什么DBNO又会发生改变呢,我猜测压栈出栈必须经过DB寄存器,即块调用时DINO先保存到DB寄存器(或者就是交换DBNO和DINO),然后用DI寄存器打开当前FB的背景数据块,FB调用结束,之前保存的DINO出栈到DB寄存器,然后交换DBNO和DINO,还原调用前的DINO。
以上个人看法不一定正确,仅供参考。

thank you!
everything must depend on oneself!!!
评论
编辑推荐: 关闭

请填写推广理由:

本版热门话题

SIMATIC S7-300/400

共有54715条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

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

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

  • 分享

  • 只看
    楼主

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