开源改变世界

M30/M2 #105

推推 grbl 3年前 (2023-01-21) 107次浏览

关闭
langwadt 打开了这个问题 2012 年 7 月 4 日 · 2 条评论
关闭

M30/M2#105

langwadt 打开了这个问题 2012 年 7 月 4 日 · 2 条评论

注释

M30/M2 #105

M30/M2 应该如何工作?

查看“master”中的 gcode.c gc.program_flow 设置为 PROGRAM_FLOW_COMPLETED 但它没有在任何地方使用

“edge”gc.program_flow 中的 gcode.c 被设置为 PROGRAM_FLOW_COMPLETED,但就在它被使用之前它被设置为 PROGRAM_FLOW_RUNNING 所以它永远不会做任何事情

我可以在历史记录中看到,在 1 月 28 日,更改了一些定义并添加了代码以在 PROGRAM_FLOW_COMPLETED 中执行系统中断,但该代码在 2 月 11 日再次被删除

M30/M2 #105
成员

从 0.7 master 到 0.8 edge 发生了很多变化。我相信 Simen 已经为 M2/M30 写了一个占位符,但没有在 0.7 中实现任何东西。从那时起,我就在 0.8 edge 中完成了这个功能(大部分)。

因此,M0/M1 应该完成直到 M0/1 调用的所有 g 代码并暂停程序,直到发出“循环启动”命令。(M1 是一个待办事项,具有可选的停止功能。它现在与 M0 的功能相同。)M2/M30 将完成调用前的所有 g 代码,但随后将 Grbl 重置为其启动默认值。(两者都做同样的事情,但 M30 用词不当,因为托盘穿梭不是 Grbl 功能,应该在将来删除。)这些遵循 NIST 协议。我相信我已经将链接放入边缘 gcode.c 以供参考。

M30/M2 #105
成员

刚刚又看了一遍。你是对的。这看起来像是一个小错误。我会在有空的时候修好它。操作顺序有点偏离。

喜欢 (0)