外部块和本地数据外部块可以使用全局变量%P,不支持本地变量%L,但可以从调用块中继承本地变量%L。外部块还从调用他的块中继承系统变量FST_EXE和用于更新定时器函数块的”时间标签”。如果参数化程序块中使用了%L变量,并且这个块被MAIN块调用,%L变量值将从%P变量继承(例如%L0005=%P0005)。
C变量初始化外部块存储到CPU之后,他的全局变量和静态变量的副本存储起来。然而,如果外部块声明静态变量时没有赋初值,则初始值必须在C程序中给定。(参考PAC系统的C语言编程工具包用户手册GFK-2259内的“全局变量初始化”和“静态变量”)在从停止状态转换到运行状态时,会用保存起来的初始值重新初始化块内的全局变量和靜态变量。
块结构的每一-个程序块或者函数块有-个相关的本地数据块。_MAIN数据块存储器使用%P变量,所有其它数据块存储器使用%L变量。数据块的大小依赖于块内%L变量的最大范围以及所有块的%P变量的范围。程序中所有块可以使用和_MAIN块相关的%P变量。程序块和函数块可以使用自己的%L数据和所有块都可以使用的%P数据。_ MAIN块不可以使用%L变量。
GIDDINGS & LEWIS 502-03676-20 USPP 5020367620
Giddings and Lewis 502-02823-00 Memory Interface No. 2
GIDDINGS & LEWIS 502-03640-02R1 USPP 5020364002R1