开源改变世界!!

如何让宏工作 #286

推推 grbl 2年前 (2023-01-29) 95次浏览
关闭
mac7988 开了这个issue 2019 年 11 月 9 日 · 4条评论
关闭

如何让宏工作#286

mac7988 开了这个issue 2019 年 11 月 9 日 · 4条评论

注释

如何让宏工作 #286
mac7988 评论了 2019 年 11 月 9 日  

这是我到目前为止所做的。

1)我设置了 2 个文件 Simple.H 和 Simple.ccp
a) Simple.h 包含(我认为不需要这个文件。)

       void user_defined_macro(uint8_t index);

b) Simple.ccp 包含

#ifdef` CPU_MAP_TEST1

void user_defined_macro(uint8_t index)
{
switch (index) {
#ifdef MACRO_BUTTON_0_PIN
case CONTROL_PIN_INDEX_MACRO_0:
inputBuffer.push(“$H\r”); // 家庭机器
中断;

}
}
#endif

2)在我的 CPU MAP 中添加

#include “Simple.h”

#define MACRO_BUTTON_0_PIN GPIO_NUM_22

我无法编译它。我肯定做错了什么。

如何让宏工作 #286 mac7988 添加了 把招工广告 需要额外注意标签 2019 年 11 月 9 日
如何让宏工作 #286
所有者

以atari_1020为例。

在 cpu_map.h 中,您应该将 simple.h(保持全部小写以匹配大多数其他文件)包含在您的 cpu 映射中。

在 simple.h 中,首先放置所有#define 语句。然后像这样将所有函数原型包装在底部。

#ifndef simple_h
	#define simple_h

#endif

在 simple.cpp 中,在顶部包含 grbl.h。用 cpu 映射的 #ifdef 包围所有函数。所以它只将它们用于您的机器。

如果您仍然遇到问题,请粘贴您的编译错误。

如何让宏工作 #286
作者

以atari_1020为例。

在 cpu_map.h 中,您应该将 simple.h(保持全部小写以匹配大多数其他文件)包含在您的 cpu 映射中。

在 simple.h 中,首先放置所有#define 语句。然后像这样将所有函数原型包装在底部。

#ifndef simple_h
	#define simple_h

#endif

在 simple.cpp 中,在顶部包含 grbl.h。用 cpu 映射的 #ifdef 包围所有函数。所以它只将它们用于您的机器。

如果您仍然遇到问题,请粘贴您的编译错误。

谢谢,我回家试试。谢谢你。

如何让宏工作 #286
作者

嗨巴特,

谢谢你的信息。愚蠢的错误,但按照你的建议让它工作。
我确实注意到,如果您按下宏以从 SD 卡运行 Gcode,它会运行代码,但从那时起,点击循环开始也会运行该宏(即使在电源循环之后)对我来说不是问题,事实上这对无头机器很有用。

如果您按下 feedhold,串行监视器也会显示无效的 gcode 错误。这在代码中没什么奇怪的。

如何让宏工作 #286

我有没有提到你在这里的工作很棒。我也会尽我所能,通过我的学习来支持其他用户。

干杯!

如何让宏工作 #286
所有者

很高兴听见。该编译器非常挑剔,其行为与其他一些 c 编译器并不完全相同。

关闭….