开源改变世界

Grbl 在提示时冻结 #52

推推 grbl 2年前 (2023-01-21) 187次浏览

关闭
Atrixium 打开了这个问题 2012 年 1 月 28 日 · 8条评论
关闭

Grbl 在提示时冻结#52

Atrixium 打开了这个问题 2012 年 1 月 28 日 · 8条评论

注释

Grbl 在提示时冻结 #52

昨天我设法将 GRBL 闪存到我的 Uno,但是当我试图用我的步进驱动器测试它时遇到了问题。

GRBL 似乎在 init 提示符的中途冻结,它一直到“键入 ‘$’ 以转储 c”,然后停止并且不接受任何命令。偶尔,如果我重置 Uno it 或拔下并重新插入 USB 足够多次,我可以让它给我完整的提示,此时它似乎会无限期地接受命令,但这是少数情况。

我认为这可能是 Arduino IDE 串行监视器的限制,所以我决定改用 Minicom 来尝试,但我得到了完全相同的结果。

我已经通读了第8期,这似乎是一个类似的问题,但我相信波特率问题在发生后已得到纠正。不管怎样,我回家后可能会试一试。我还没有尝试过 0.8a,但我也可以尝试一下。

我目前正在运行 Linux Mint 9 x64 (Ubuntu 10.04)、Arduino Uno DIP 和带有 grbl_0_7d_atmega328p_16mhz_9600.hex 的 1.0 IDE。

Grbl 在提示时冻结 #52
成员

奇怪的。我不记得遇到过这样的问题。看起来您的连接很好,但 grbl 可能在初始化期间崩溃。不知道为什么。它总是停在“键入’$’以转储c”还是随机更改并停在某个地方?你是怎么刷十六进制文件的?

以下是您可以尝试的几件事。

  • 当你让它运行时,手动重写所有的 EEPROM 设置。每隔一段时间,EEPROM 会在版本升级后损坏。这个错误可能是间接的来源,但不太可能。
  • 通常 *nix 安装有一个名为“screen”的命令行终端程序。我定期使用它并且知道它有效。如果有,请尝试一下。您基本上键入:“screen /dev/tty.usbmodem”或任何您的 usb 设备路径。要退出程序,请按 ctrl-a 和 k。

我也会下载并安装那个 0.7d 十六进制文件,看看今晚是否有任何问题。

Grbl 在提示时冻结 #52
作者

感谢您及时的回复!

当它失败时,它总是停在那个确切的位置,但当它工作时,它会完全工作。

我使用在 wiki 中找到的 Mac 指令的修改版本将 hex 文件闪存到原始 Uno,它与 Linux 进程非常相似。我实际上正在编写一个脚本,以使新用户将来更容易刷入 grbl。

我自己对此还很陌生,所以当您说“手动重写所有 EEPROM 设置”时,我想您的意思是手动设置在我输入“$”并按回车键时显示的所有设置,其中一次它不会冻结,对吗?

我会试一试屏幕,看看我回家后会发生什么。

至于重新刷新 Arduino,我知道 grbl 会覆盖 Arduino 引导加载程序,现在我已经用 grbl 刷新了它,我是否必须用 AVR 编程器重新烧录引导加载程序,或者我可以像以前一样刷新它吗如果我想更改固件?回厂干嘛?

如果你们同意的话,我想用我在这个过程中学到的所有东西来更新 wiki,作为回馈项目的一种方式,我不是一个程序员,但我绝对可以写文档!

Grbl 在提示时冻结 #52
成员

诡异的。奇怪的是它恰好停在同一点。当 grbl 打印这些字符时,它实际上并没有做任何特别的事情,只是从闪存中打印欢迎字符串。

所以,我同时测试了 DIP 和 SMD Uno,下载中编译的 0.7d 十六进制都没有显示这个问题。我可以正常连接。我认为这可能是与您的计算机握手时出现的某种问题。您是否尝试过使用另一台计算机来消除您的计算机?但是让我们先看看另一个终端或十六进制文件是否有任何不同。

至于重新刷写,它不应该覆盖引导加载程序,至少据我所知。我可能是错的,但在我闪过 grbl 之后,我将 Arduino IDE 程序上传回它从来没有遇到任何问题。所以我认为你应该没事。

请随时更新维基!这毕竟是社区的努力!非常感谢!:)

Grbl 在提示时冻结 #52
贡献者

你检查过你的接线了吗?也许 grbl 将欢迎消息发送到 tx 队列,然后继续将一些引脚设置为有时短路的输出,将 atmega 发送到 nirvana。

Grbl 在提示时冻结 #52
作者

好吧,这是一个有趣的更新。我重新插入 Arduino 并再次测试它,它立即工作一次,然后我无法让它显示完整的提示。我决定从 Jens 的建议开始并移除我所有的接线,因为它只是连接到我的步进控制器进行测试并且只有 7 根电线。移除所有电线后,问题就消失了,我无法让 Arduino 失败。我一次连接每个步进控制器一个,以测试每个步进控制器是否短路,但在连接每个步进控制器后,我得到了完整的提示。然后我立即将它们全部连接起来并进行测试,但仍然得到完整的提示,到目前为止,我无法通过任何可能的接线错误组合使其失败!

非常感谢您的两个建议,如果我发现崩溃的原始原因,我会回复!

Grbl 在提示时冻结 #52
成员

啊。在这里,我担心这是一个由不明原因引起的软件问题,而且很难找到。哇!无论如何,很高兴听到你成功了!感谢您让我们知道!

Grbl 在提示时冻结 #52
作者

看来是对引出线的误解造成了这种情况。我根据此图表和说明“ http://dank.bengler.no/-/page/show/5473_connectinggrbl?ref=mst ”连接我的步进控制器,这让我将正在测试的步进控制器插入数字引脚 0和 Arduino 上的 4,标记为 RX 和 PWM 3。这当然是错误的,会导致各种不良行为,例如 RX 期间电机步进。正确的引出线似乎是:

Xstep=2 Ystep=3 Zstep=4
Xdir=5 Ydir=6 Zdir=7

我相当确定问题的原因是将 RX 和 TX 线连接到步进驱动器。

Grbl 在提示时冻结 #52
成员

那可能会做到!希望 wiki 很快就会充实一切,从引出线到连接到 grbl 并使用它。为了防止再次出现此问题,我将开始放置 wiki 页面,以便人们开始更新它们。

喜欢 (0)