Arduino Mega2560不能使用avrdude重复编程

Arduino Mega2560 can't be programmed repeatedly using avrdude

我有一个 mega2560 板的草图,我可以使用 Arduino IDE 使用上传按钮成功上传,但我更愿意使用 avrdude 使用脚本。唯一的问题是,如果我尝试 运行 avrdude 不止一次来刷新电路板,它会出现 stk500v2_ReceivedMessage(): 超时。它不会每次都发生,但足够了。 avrdude 似乎再次工作的唯一方法是,如果我使用 Arduino IDE 更新相同的草图。

我无法找到 Arduino IDE 上传文件的功能,但我能找到的所有设置都表明 avrdude 正在以相同的方式进行操作。

可以在 Arduino 中启用详细编译和上传 IDE 设置:

File->Preferences->Show verbose output during:  [] compilation  [x] upload.

它将显示用于上传的完整命令,avrdude 应该相同,或者您可以使用相同的 avrdude.exe。您应该会看到如下内容:

C:\arduino\hardware\tools\avr/bin/avrdude -CC:\arduino\hardware\tools\avr/etc/avrdude.conf -v -V -patmega2560 -cwiring -PCOM17 -b115200 -D -Uflash:w:C:\Users\kiiv\AppData\Local\Temp\build658cdf44885ca2a8676f164a933c092f.tmp/MAX7219_4x4x4.ino.hex:i 

顺便说一句:我刚开始使用 PlatformIO CLI(命令行工具),我很喜欢它。

PlatformIO IDE 对我来说效果不佳,因为我使用的是捷克语键盘布局,并且击键会阻止我在不将其切换为英语的情况下编写所有基本字符,例如 []{}#&