开源改变世界

grbl 和 Arduino 的同步错误 #1475

推推 grbl 3年前 (2023-01-24) 106次浏览

打开
xSleepyCatx 打开了这个问题 2018 年 12 月 6 日 · 1条评论
打开

grbl 和 Arduino 的同步错误#1475

xSleepyCatx 打开了这个问题 2018 年 12 月 6 日 · 1条评论

注释

grbl 和 Arduino 的同步错误 #1475

我有一个啄木鸟 grbl 控制板,所有指南都在谈论 grbl 在上传时如何自动配置到 Arduino。我不确定哪里出了问题,我以前从未使用过 grbl 或 Arduino。任何帮助将不胜感激,对我放轻松,我只是想为我的 3D 打印机编程,但是 0 编程经验…
Arduino ver。1.8.8
grbl 版本。1.1

这是错误消息:

Arduino:1.8.8 每小时构建 2018/11/23 04:33 (Windows 10),开发板:“Arduino/Genuino Uno”

构建选项已更改,重建所有
包含在 C:\Users\Cathy\Documents\Arduino\libraries\grbl/grbl.h:43:0 中的文件,

             from C:\CNC\grbl-master\grbl\examples\grblUpload\grblUpload.ino:27:

C:\Users\Cathy\Documents\Arduino\libraries\grbl/nuts_bolts.h:51:0: 警告:“最大”重新定义

#define max(a,b) (((a) > (b)) ? (a) : (b))

^

在 sketch\grblUpload.ino.cpp:1:0 包含的文件中:

C:\CNC\arduino-nightly\hardware\arduino\avr\cores\arduino/Arduino.h:93:0:注意:这是前面定义的位置

#define max(a,b) ((a)>(b)?(a):(b))

^

在 C:\Users\Cathy\Documents\Arduino\libraries\grbl/grbl.h:43:0 包含的文件中,

             from C:\CNC\grbl-master\grbl\examples\grblUpload\grblUpload.ino:27:

C:\Users\Cathy\Documents\Arduino\libraries\grbl/nuts_bolts.h:52:0: 警告:“min”重新定义

#define min(a,b) (((a) < (b)) ? (a) : (b))

^

在 sketch\grblUpload.ino.cpp:1:0 包含的文件中:

C:\CNC\arduino-nightly\hardware\arduino\avr\cores\arduino/Arduino.h:92:0:注意:这是前面定义的位置

#define min(a,b) ((a)<(b)?(a):(b))

^

在 C:\Users\Cathy\Documents\Arduino\libraries\grbl/grbl.h:43:0 包含的文件中,

             from C:\CNC\grbl-master\grbl\examples\grblUpload\grblUpload.ino:27:

C:\Users\Cathy\Documents\Arduino\libraries\grbl/nuts_bolts.h:55:0: 警告:“位”重新定义

#定义位(n)(1 << n)

^

在 sketch\grblUpload.ino.cpp:1:0 包含的文件中:

C:\CNC\arduino-nightly\hardware\arduino\avr\cores\arduino/Arduino.h:123:0:注意:这是前面定义的位置

#define 位(b) (1UL << (b))

^

Sketch 使用 29868 字节(92%)的程序存储空间。最大值为 32256 字节。
全局变量使用 1484 字节 (72%) 的动态内存,为局部变量留下 564 字节。最大为 2048 字节。
avrdude:stk500_getsync() 尝试 10 次中的第 1 次:不同步:resp=0x0d
avrdude:stk500_getsync() 尝试 10 次中的 2 次:不同步:resp=0x0a
avrdude:stk500_getsync() 尝试 10 次中的 3 次:不同步:resp= 0x47
avrdude:stk500_getsync() 尝试 4 次,共 10 次:不同步:resp=0x72
avrdude:stk500_getsync() 尝试 5 次,共 10 次:不同步:resp=0x62 avrdude
:stk500_getsync() 尝试 6 次,共 10 次:不同步:resp =0x6c avrdude
:stk500_getsync() 尝试 10 次中的 7 次:不同步:resp=0x20
avrdude:stk500_getsync() 尝试 10 次中的 8 次:不同步:resp=0x31
avrdude: stk500_getsync() 尝试 9 of 10: not in sync: resp=
0x2e avrdude: stk500_getsync() attempt 10 of 10: not in sync: resp=0x31
上传草图时发生错误

如果在文件 -> 首选项中启用了
“在编译期间显示详细输出”选项,该报告将包含更多信息。

grbl 和 Arduino 的同步错误 #1475

编译器警告的解决方案是将现在重新定义的宏封装在 nuts_bolts.h 中,使用#ifndef #endif 如下所示:

...
#ifndef max
#define max(a,b) (((a) > (b)) ? (a) : (b))
#endif
#ifndef min
#define min(a,b) (((a) < (b)) ? (a) : (b))
#endif
#define isequal_position_vector(a,b) !memcmp(a, b, sizeof(coord_data_t))


// Bit field and masking macros
#ifndef bit
#define bit(n) (1UL << n)
#endif
...

谷歌“avrdude: stk500_getsync() attempt”获取如何解决上传问题的输入。

喜欢 (0)