宏按钮功能
概述
宏按钮允许您将开关闭合与宏相关联。基本宏可以是简单的命令或运行 SD 卡或 ESP32 闪存文件系统中的文件。高级宏被写入固件,可以进行复杂的计算和条件分支。
电气
按钮连接到 GPIO。它们可以常开或常闭。它们是控制按钮组的一部分,可以#define INVERT_CONTROL_PIN_MASK Bnnnnnnnn
在 config.h 文件中反转。您可以在对 ? 当它们处于活动状态时发出命令。
机器定义
宏按钮类似于控制开关(重置、保持等)。您最多可以定义 (4) 个。您将它们添加到您的机器定义文件中,例如…
#define MACRO_BUTTON_0_PIN GPIO_NUM_13
设置
基本宏是使用设置实现的。$User/Macro0=为按钮 0 分配一个宏。
- 单个命令:这可以是任何命令或 gcode。示例:$User/Macro0=$H
- 多个命令:在命令之间放置和符号“&”(限制 250 个字符)。示例:$User/Macro0=G90&G53G0Z-1&G0X0Y0
- 来自 SD 卡的文件:示例:使用 $SD/Run 命令和文件名示例:$User/Macro0=$SD/Run=foo.nc
- 来自 ESP32 闪存文件系统的文件:使用 $LocalFS/Run 命令和文件名。示例:$User/Macro0=$LocalFS/Run=bar.nc
文件可以是 gcode、大多数 Grbl_ESP32 命令和设置或两者的混合。
您必须处于空闲状态才能执行按钮宏。
高级宏
当按下宏按钮时,Grbl_ESP32 会调用 user_defined_macro(uint8_t index)函数,并将按钮编号 (0-3) 作为参数。这是一个弱定义的函数。这意味着,如果您提供自己的版本,编译器将使用它。将其放入 Custom 文件夹中的文件中。在您的机器定义文件中提供对它的引用……
#define CUSTOM_CODE_FILENAME "Custom/my_file.cpp"
重要的提示
此功能由输入引脚上的中断启动。当前的实现不是很健壮。请务必进行大量测试以确保您的设置稳定。我们希望尽快实施更强大的版本。