呵呵,楼主仔细看看编程手册把,对子程序有详细说明,
没有主程序和子程序这一概念,很可能你是第一个提出这个“概念”的人,子程序是相对主程序的一段程序,必须由主程序去调用,调用形式又分有条件调用,无条件调用两类;当一个子程序中又调用了另一个子程序,即为子程序嵌套调用,好像S7-200最多嵌套
8层深度!子程序返回指令,RET 指令返回到调用处;其实就是在调用子程序之前,先把当前 IP (指令指针寄存器)PUSH 压栈(也叫保存地址,保护现场),待子程序执行完成返回时, POP 出栈(将栈顶,之前保存的地址),恢复现场,即将栈顶值传给IP;这样就可以在子程序返回后,在原调用处继续往下执行;
不论是那一种PLC ,原理都是相通的,不过有的PLC 支持功能块,类似子程序,但那是宏,即在编译的时候就独立为该功能块实例分配内存,和子程序有差别的,这一点注意!
其他的自己看吧!