多个子程序调用编程序例子(如何调试带有多个子程序的程序)

本文目录
如何调试带有多个子程序的程序
将程序编译、连接,用Debug加载、跟踪。
在启动应用程序进行调试时,Eclipse 会自动切换到Debug透视图。最常见的调试步骤是设置断在点,这样可以检查条件语句或循环内的变量和值。要在Java透视图的视图中设置断点,双击选择的源代码文件,在一个器中打开它。遍历代码,将鼠标放在可疑代码一行的标记栏(在器区域的左侧)上,双击即可设置断点。
子程序概念
能被其他程序调用,在实现某种功能后能自动返回到调用程序去的程序。其最后一条指令一定是返回指令,故能保证重新返回到调用它的程序中去。也可调用其他子程序,甚至可自身调用在一个加工程序中,如果其中有些加工内容完全相同或相似,为了简化程序,可以把这些重复的程序段单独列出,并按一定的格式编写成子程序。主程序在执行过程中如果需要某一子程序,通过调用指令来调用该子程序,子程序执行完后又返回到主程序,继续执行后面的程序段。
在VB中调用子程序的实例
假设你的子程序是:
function
mysub(a,b,c)
....
end
function
调用时可以这样:
call
mysub(m,n,p)
也可以这样:
mysub
m,n,p
注意上面两种调用方法的区别:一个要括号,一个不能加括号。
数控铣主程序能不能调用两个不同子程序编程
主、子程序的调用关系见图4-7。子程序中还可以再调用其他子程序,即可多重嵌套调用。M99的功能就是结束子程序的运行并使数控系统返回到主程序,重新按主程序的指令运行。每个子程序的最后一条指令必须是M99。主子程序调用编程:在图4-8中,轮廓的精加工用子程序编写,在主程序中,按轮廓的形状多次调用子程序,其参考程序如下:
4.2.5 子程序调用指令M98、M99
数控车床程序的编写也可采用主、子程序的形式。数控系统按主程序的指令运行,但在主程序中遇见调用子程序的指令时,将开始按子程序的指令运行;在子程序中遇见调用结束指令时,自动返回到主程序,并重新按主程序的指令运行。
对程序中有一些顺序固定或反复出现的加工图形,可将其写成子程序,然后由主程序来调用,这样可以大大简化整个程序的编写。
1.子程序调用指令M98
指令格式:M98 P L
M98指令中的P后面跟的是被调用的子程序的程序号,而L后面跟的是调用该子程序的次数(默认值为1)。主、子程序的调用关系见图4-7。
在编写程序时,主、子程序必须写在同一个文件中,都是以字母“O”开头,以“O****”单独作为一程序行书写。子程序中还可以再调用其他子程序,即可多重嵌套调用。

图4-7 主、子程序调用关系
同一个子程序可被主程序多次调用。同一个主程序可以调用多个不同的子程序。
2.子程序结束指令M99
M99的功能就是结束子程序的运行并使数控系统返回到主程序,重新按主程序的指令运行。每个子程序的最后一条指令必须是M99。
【例4-6】主子程序调用编程:在图4-8中,轮廓的精加工用子程序编写,在主程序中,按轮廓的形状多次调用子程序,其参考程序如下:

图4-8 主、子程序编程
O1000
N001 G92 X150.0 Z100.0;
N002 M03 S800 M08;
N003 G00 X35.0 Z0;
N004 G01 X0 F0.3;
N005 G00 X30.0 Z2.0;
N006 G01 Z-55.0 F0.3;
N007 G00 X150.0 Z100.0;
N008 X32.0Z0T0303;
N009 M98 P1500 L2;
N010 G00 W-12.0;
N011 G01 X0 F0.12;
N012 G04 X2.0;
N013 G00 X150.0 Z100.0 M09;
N014 M30;
O1500
N101 G00 W-12.0;
N102 G01 U-12.0 F0.15;
N103 G04 X1.0;
N104G00U12;
N105 W-8;
N106 G01 U-12 F0.15;
N107 G04 X1.0;
N108 G00U12;
N109 M99;
取工件左端面中心点为编程坐标原点,对刀点位置在编程坐标系中X150 Z100位置。
需要注意的是:在MDI方式下,使用子程序调用指令是无效的。
fanuc系统怎么用子程序,程序实例
G0G90G80G16G95G69;
M6 T1;
M1;
G43G54G16X-57Y-30Z10H310;
S800M13;
M98P60002;(你要调用几次就在P后面写多少 接着写子程序的代号)
G69;
G0G90Z10M9;
G49G59X0Y0ZM5;
M30; ;
;
;
;
;
;
0002;
G0G90G16X-57Y-30;
Z-5;
G1X-40.25Y-30F0.07;
G0Z10;
G91G68X0Y0R60;
M99;
VB多子程序调用
试试下面的代码,
Private Function test(ByVal x As Integer, Optional y As Integer = 2) As Long
test = x + y
End Function
Private Sub Command1_Click()
MsgBox (test(1))
MsgBox (test(1, 5))
End Sub
其乐无穷啊^^
数控车床调用子程序举例说明
法兰克的格式 M98
P、M98自程序调用P后最多限8位数,前4位为调用次数,后4位为子程序号P后小于4位表示调用一次子程序M99子程序结束例子主程序O0001
(主程序内容·)M98 PO0002子程序号(调用O0002号)子程序
(子程序内容)N30程序结束O0002
(子程序内容)M99子程序结束PS:
子程序是分开编在主程序后面的有程序号调用的时候调子程序号就可以了

更多文章:
display flex 自动换行(overflow-y:hidden;overflow-x:auto;无效解决方法)
2026年9月7日 11:00
timestamp without time zone(Postgresql中to_date()函数使用问题)
2026年9月7日 09:40
下载mysql的步骤(win10安装mysql的步骤和方法)
2026年9月7日 04:10
checked in(check in和check out的区别)
2026年9月7日 01:20
java经典上机编程题(java上机题 请问这道题应该怎么写)
2026年9月7日 01:10
影视剧中有哪些剧情颠覆了你的三观?金庸的武侠小说《白马啸西风》为什么没有被拍成电影或者电视剧
2026年9月7日 00:30




