CNC宏程序编写时运用比较多的就是IF[ ]GOTO和WHILE[ ]DO……END循环表达式,上一篇简单举例了IF[]GOTO的理解和使用方法,这次写下WHILE[ ]DO……END循环
首先理解一下WHILE[]的意思,WHILE就是“当”的意思,DO就是“执行”,END就是“结束”,即当“[ ]”条件成立时,执行DO和END之间的语句,当“[ ]”条件不成立时,执行END之后的语句,举个例子说明一下:
#1=10;(#1赋值10)
#2=1;(#2赋值1)
#3=1;(#3赋值1)
WHILE[#3LE#1]DO1;(当#3变量里的值小于等于#1变量里的值,则执行DO1和END1之间的语句,否则直接执行END1后面的指令)
G01G91X-#2F500;
G02 I#3;
#3=#3+#2;(#3变量每运算一次就增加1)
END1;
M30;
有时候编的复杂一点的需要嵌套循环,WHILE[]DO…END可以嵌套3层WHILE循环,即DO最大后面是DO3…END3,超过3个就会报警PS0126,嵌套方式:
WHILE[…]DO1
程序省略
WHILE[…]DO2
程序省略
WHILE[…]DO3
程序省略
END1
程序省略
END2
程序省略
END3
WHILE[]DO循环简单介绍到这,后续慢慢深入举例讲解,一般循环要先想好算法,才能实现你要表达的结果,可以关注私信,互相交流!