<sub id="rpxzx"><listing id="rpxzx"><menuitem id="rpxzx"></menuitem></listing></sub>

<sub id="rpxzx"></sub>

<sub id="rpxzx"><listing id="rpxzx"><menuitem id="rpxzx"></menuitem></listing></sub>

    <address id="rpxzx"></address><form id="rpxzx"></form>
    <noframes id="rpxzx"><address id="rpxzx"></address>

    <sub id="rpxzx"><dfn id="rpxzx"><menuitem id="rpxzx"></menuitem></dfn></sub>
    <address id="rpxzx"><listing id="rpxzx"></listing></address>
    <form id="rpxzx"><listing id="rpxzx"><meter id="rpxzx"></meter></listing></form>

    欢迎来到 山西邦泽科技有限公司 网站
    你的位置:首页 > 技术支持 > 常见问题

    S7-200 子程序调用问题

    2017-10-31 9:24:00??????点击:

    1、局部变量所存储的值都变成一样了。怎么解决这个问题?

    在程序的开始必须有对该存贮区地址的赋值操作(即初始化),否则可能会出现错误的执行结果。

    2、有关局部变量:

    转帖:

    局部变量是分配给每个子程序的临时存贮区。

    当子程序被调用时,系统分配局部变量区给子程序;子程序执行完成后,该局部变量区被释放。释放时其中存贮的值也同时丢失,不能再下一扫描周期再被子程序使用。

    局部变量区的大小为64个字节,其中最后4个字节被系统所占用,实际可供子程序使用的为60个字节。

    由于局部变量区的数据不能带到下一扫描周期,因此只能用于存迪程序运算中的中间值,可以减少对全局变量区的占用。

    由于局部变量区在子程序被调用时才被分配,且分配时并不对数据区进行初始化,所以其初始值是不确定的。因此在程序中用到这些存贮区的值的指令前,必须有对该存贮区地址的赋值操作,否则可能会出现错误的执行结果。

    尤其在子程序中存在大量的跳转指令时,很容易出现漏掉对局部变量赋值的情况,要格外注意。

    3、为了较可简便地监视与检查1程序,建议应用M存储区。

    高德官网注册 377| 862| 631| 744| 877| 471| 381| 15| 359| 690| 357| 583| 671| 188| 290| 149| 908| 945| 344| 499| 228| 824| 592| 564| 812| 67| 888| 854| 222| 64| 859| 379| 780| 77| 308| 460| 612| 219| 49| 695| 20|