子程序一般用来存储需要多次使用的程序块。这个程序块可以在你的程序的多个地方使用。使用子程序可以节省内存。
对RSLOGIX500编程软件,子程序功能由JSR(跳转到子程序)、SBR(子程序定义)、RET(从子程序返回)三条指令来完成。
Rslogix500支持子程序的嵌套。
当JSR被执行的时候,控制器跳到JSR指令指定的的子程序文件中开始处的SBR指令并往下执行。用户必须为每个子程序建立各自的程序文件并指定一个唯一的文件号(3到255)。JSR指令中设置的文件号码指明了需要调用的目标子程序。
SBR和RET两个指令用来定义子程序块。SBR必须是子程序中的首行首条指令。RET指令指示子程序的结束,它指示控制器接着执行JSR指令后面的执行。子程序中可以使用“有条件的RET指令”来提前返回调用程序。
参数的调用可用中间变量地址来实现。 如B文件中的位变量、N文件中的字变量等。