声明:在发这个帖子以前,我已经浏览过了这个论坛上以前有关与此的讨论,
但是还是心存疑惑,希望各位大侠帮助。
我在现在做的项目里,用S7-200控制的系统由两个结构一模一样的部分组成,
只是输入输出不一样。于是我想到用子程序来实现是不是比较好,在编写子程序的过程中我全部是用局部变量来编写的,只用输入输出接口来传递参数。
但是,我发现,当一个子程序在主程序中被调用两次时,他们的临时变量的状态
会相互干扰,比如如果在前一个中已经自保的位,当第二次开始运行时,就不能自保了,请问是这样的吗?一个子程序,不管被调用多少次,他们都是使用同样的L区吗?如果真的是这样,那么是不是如果一个子程序要被重复调用的话,子程序里面就不能出现“下降沿”“自保”这样的逻辑?
现在为了避免上面的问题,我就取消了子程序,直接在主程序里写两次,运行结果正确。但是总觉得,如果用子程序实现的话,应该逻辑清晰一点,不知道各位大侠可否告知如何用子程序来实现??谢谢!
另一个问题,我在调试程序的时候,是不是不能监视到子程序的运行状态?
这样的话,要调试子程序不是要把它的代码放在主程序里调试好了再封装到子程序中?错了还要另外再拿出来改,多不方便啊?有没有好的方法呢??