开源改变世界

单键保持/停止 #672

推推 grbl 3年前 (2023-01-22) 73次浏览

关闭
vangalvin 打开了这个问题 2015 年 4 月 25 日 · 1条评论
关闭

单键保持/停止#672

vangalvin 打开了这个问题 2015 年 4 月 25 日 · 1条评论

注释

单键保持/停止 #672

我需要清除 nano 上的一个中断引脚以用于其他用途,并试图使开始按钮具有双重功能。如果系统正在运行并且它被按下,它会将 GRBL 置于暂停状态,如果它再次被按下,它会重新启动。

保持工作正常,但当我再次单击时,它会开始几秒钟,然后返回保持状态。关于我缺少什么的任何想法?

系统.c

如果 (pin) {
如果 (bit_istrue(pin,bit(RESET_BIT))) {
mc_reset();
// 单击应开始循环
} else if (bit_istrue(pin,bit(CYCLE_START_BIT)) && SUSPEND_FLAG == 1) {
bit_true(sys.rt_exec_state, EXEC_CYCLE_START);
暂停标记 = 0;
}
//再次点击应该暂停循环
else if (bit_istrue(pin,bit(CYCLE_START_BIT)) && SUSPEND_FLAG == 0) {
bit_true(sys.rt_exec_state, EXEC_FEED_HOLD);
暂停标记 = 1;
}

单键保持/停止 #672
作者

啊,好吧,问题来了。首先,开关在弹跳,其次,逻辑绕错了方向。现在要弄清楚如何在 ISR 中加入攻击。

喜欢 (0)