关于fb块与背景数据块更新的疑点,请各位帮忙确认一下
14.155.223.232
发布于2012-11-28 21:02
1
0
标签:
假设一个先前编好并运行的fb块,并有背景数据块。现在我要在fb块中的声明变量区in或out或inout中再添加一个或两个变量,保存后,然后更新,背景数据块也跟着更新了,这个地方有个问题:因为我别的块(假设fc10)使用了背景数据块的地址,如果我更新了背景数据块,那么fc10中的背景数据块地址岂不是就与更新后的背景数据块地址不一致了?有没有一种方法或则可以避免出现这样的情况?或则也可以把fc10中使用的背景数据块地址一起更新?
另外如果我在fb中的temp加变量或则在静态变量区的后一行往下加变量,然后更新背景数据块,是不是不会出现上述情况?
问题补充:
就是这个问题避免不了了吗?各位能不能给一个准确的答复。必须要在更新完背景数据块后,将其他块调用的背景数据块的地址再重新按照改完后地址再写一遍。这样对吗?
佳答案
是的,避免不了!
但是,实际编程的人员,在编程序时候,往往会预留一定的地址空间备用。譬如说,在stat区里,多建立一些stat1sata2等,输入接口里,多建立几个。引用时候,不用的可以空着。当需要添加的时候,就把相应的预留的地址,更改为你需要的控制信号,这样就不需要重新更改调用背景数据块的地址,一一更改了。