Arduino Programmer 仅在拔下并重新插入后才能工作

Arduino Programmer only works after unlugging and plugging back in

我正在使用 avrdude 为我的 Arduino 编程。我的Ardunio Uno来自中国,设备管理器中报告的编程器是ch340。

当我第一次将 arduino 连接到我的电脑时,avrdude 工作了一次。除非我从计算机上拔下它并重新插入,否则所有后续时间它都会失败。我尝试在 RST 和 GND 之间放置一个 10uF 电容器,但没有帮助。我还尝试了不同的配置:

programmer
  id = "ch340";
  desc = "ttl port banging, reset=!txd sck=!rts mosi=!dtr miso=!cts (invert signals using 74ls04)";
  type = serbb;
  reset = 3;
  sck = 4;
  mosi = 8;
  miso = 7;
;

这也没有帮助。使用这些解决方案中的任何一个,我什至无法在第一时间让它工作。只有程序员 "arduino" 我才让它工作,但只有一次。

这是连接到 USB 后第一个 运行 的输出:

avrdude: AVR device initialized and ready to accept instructions

Reading | ################################################## | 100% 0.00s

avrdude: Device signature = 0x1e950f

avrdude: safemode: Fuses OK

avrdude done.  Thank you.

在那之后的所有 运行 秒:

avrdude: stk500_getsync(): not in sync: resp=0x00
avrdude: stk500_disable(): protocol error, expect=0x14, resp=0x51

avrdude done.  Thank you.

我也试过主板上的重置按钮,没有什么区别。

这似乎是我的 avrdude 版本。我下载的 avrgui 中包含的是 5.6。 arduino 网站上的那个是 6.0.1,可以用。