评论
现在是午夜过后,我发布了消息并关闭了一切并离开了商店。当我准备晚上睡觉时,我想“我想知道我是不是不小心挡住了灯”。所以我在 rgb_set_state(RGB_WHITE) 调用之后延迟了 (2000),果然灯亮了。 我会在早上改进我的状态处理,所以你可以无视我的请求。 不过,在我忘记之前,我确实必须更改您的代码中的某些内容才能使其编译。我将您的 mcode 示例中的第 86 行更改为:
到
这是我的猜测,请告知这是否是有效的更改。 谢谢。 |
如果您希望您的插件是通用的(所有具有足够 ioport 的驱动程序都可以使用),请
它是有效的,我会修复模板。 |
是的,我希望所有司机都能使用它。 我只是暂时将延迟作为调试方法投入使用,因为我知道它会阻塞,但是 hal 调用是一种非阻塞方式来产生延迟吗?那将非常有帮助。 |
另外,我注意到模板存储库自述文件摘要最后一句话中的“插件”链接是一个断开的链接。 “HAL 支持广泛的扩展可能性,这不会触及核心 grbl 代码库。可以在插件文件夹中找到一些示例。” |
我只是在浏览 Marlin 的代码,这个代码引起了我的注意(有趣的是,我选择的代码只有 1 个)。在适用的情况下,您是否更愿意采用 Marlin 已经使用的代码?这是我添加的检查灯功能的合理近似值:https ://marlinfw.org/docs/gcode/M355.html |
确定新 M 代码的第一站是 LinuxCNC,然后是 Marlin。如果找不到合适的匹配项,我会尽量避免使用可能与 grblHAL 相关的 Marlin 代码。 |
是的,如果您提供回调函数。请注意,目前任何时候只能激活一个回调 – 我打算更改此设置。 |
您最近添加的模板很棒,但我无法让用户 mcode 示例 1 正常工作。我想知道你是否可以看一下,看看是否有明显的错误。我复制并编辑了你的代码。它在我的树中编译得很好。
我在 IOSender 中从 MDI 调用 mcode:
M356 Q1
我收到ok
但没有任何可见的事情发生。这是正确的调用方式吗?我是用户 mcode 的新手。
我在 gcode.h 中临时添加了一个条目,如下所示:
RGB_Inspection_Light = 356, //!< 356 - M356 // ** Collides with Plasma ** On = 1, Off = 2, RGB white LED inspection light in RGB plugin
我目前不包括 plasma 模块,我没有看到此文件中定义的 plasma 代码,但我确实注意到 github 摘要页面上提到了 356 美元。这可能是问题所在吗?
这是代码部分: