注释
你好@Stevenx1986x |
我在 Windows 7 x64 上使用 Python 3.4.3、pyserial 2.7 for 3.4 和 bCNC 的最新版本运行 bCNC。我的微控制器也是带有 GRBL 0.9i 的标准 Arduino Mega2560。mega 上的所有保险丝位都未受影响(与启动时序位相关),昨晚我仔细检查并擦除了 eeprom 并重新刷新了 Grbl,以确保我可以排除任何用户错误。 |
可能是pySerial和Python 2与Python 3的工作方式不同。 |
如果我碰巧发现问题,我一定会在此处报告解决方案。很想学习 Python 只是为了为这个项目做贡献。当然它不会比 C++ 更难 |
你好@Stevenx1986x, 你能降级 bCNC.py 吗?串行连接最近发生了变化@effer提到让它更健壮,但也许它不适用于 python 3。 |
我明天下班后第一件事就是尝试并报告任何变化。 |
我已将 setDTR(True/False) 更改为 1/0,因为在文档中它期望 level= |
如果使用包含的 bCNC 脚本,我会遇到完全相同的问题。 “Python丁我�/��否�.�是“ (明确要求 python2) |
它绝对不适用于 Python 3。 |
@vlachoudis问题随着变化而持续存在。如果不能解决问题,我将继续降级 bCNC 和/或更改环境以使用 python 2。 |
这就是我每次尝试连接时得到的结果。 |
@Stevenx1986x显然@effer没错,python3有几个问题。python3 中的字符串是 unicode,而串行接口需要字节流。我将尝试将所有发送命令转换为字节。@effer它可以使用 python 2.7 中接受的 b”\r\n\r\n” 语法来完成,而不是 .encode(),对于所有硬编码字符串,它需要重新处理 serialIO 线程正确转换 unicode 字符串。 |
好吧,我不会再提出这个问题。 同样的事情,但我是 Windows 10。 |
@Stevenx1986x Mega2560 Lbuntu 12.04.5 LTS 我用 Python 做了一些检查,看起来一切正常:
Grbl 0.9g [‘$’寻求帮助]
|
我有一个mega2560。我会尝试安装 grbl 并测试它 |
很抱歉再次碰到这个,但我有同样的错误。 |
你好@TilTisback,您使用的是哪个 python 版本? |
Python 3.4.3 |
我认为该代码也将很快适用于 python 3,不幸的是它需要在 eval 分支中已经改进的一些函数内部进行一些调整。 |
新接口与 ATMEGA2560 配合得很好。Python v3 正在进行中,因此@effer提到我们暂时必须坚持使用良好的旧python 2.7 |
每次我尝试连接到我的 arduino 时,都会出现以下错误。 有没有其他人遇到并解决过这个问题?