我已在菜单工具→串口下启用了avrdude: stk500_recv(): programmer is not responding.
/dev/ttyUSB0
。我也从列表中选择了正确的板子(ATmega328的Duemilanove)。但是,我仍然无法解决问题。我也在网上搜索了一些解决方案,但似乎都不适用于我。为什么会出现这个问题,如何解决?我还尝试了翻转板载ATmega并插入另一个方向。现在,上传没有问题,但之后什么也没发生。板载LED也似乎没有闪烁。
我已在菜单工具→串口下启用了avrdude: stk500_recv(): programmer is not responding.
/dev/ttyUSB0
。我也从列表中选择了正确的板子(ATmega328的Duemilanove)。但是,我仍然无法解决问题。我也在网上搜索了一些解决方案,但似乎都不适用于我。为什么会出现这个问题,如何解决?我在使用OS X上的Arduino IDE时遇到了Crowduino的问题。对于我来说解决方案是在上传时打开详细输出(在Arduino IDE首选项窗格中)。
然后,在上传时,您可以看到AVRDUDE发送三个数据包avrdude: Send: 0 [30] [20]
(与板子上相应的RX闪光)就在avrdude: ser_recv(): programmer is not responding
错误之前。
诀窍是在发送这三个数据包之前立即按下板子上的复位按钮,然后程序将会成功上传。
确保 Tx/Rx 引脚没有输入。然后它就可以正常工作。
这里有一些关于编程的好主意,但也有一些术语。让我们试着更加真实地了解发生了什么,并总结一下要检查的好东西:
基本上,当这种情况发生时,启用AVRDUDE的详细模式是一个好主意,以便更好地了解正在发生的事情。要这样做,您只需要进入首选项并勾选详细模式框。同时,远离Arduino IDE,启动控制台以更舒适地阅读AVRDUDE的输出,您可以通过单击上传
按钮来获取。
在这里重要的是将3或4个-v
放入命令调用中。以下是这样的AVRDUDE命令,其中包含虚构的参数,因为它们完全取决于Arduino的安装方式:
avrdude -v -v -v -v -C /path/to/avrdude.conf -patmega328 -P/dev/usbport -U flash:w:/path/to/firmware.hex
Rx
和Tx
之间没有短路(通常是引脚1
和0
);1
和0
引脚没有被某个扩展板或自定义设计使用(/!\
不适用于Leonardo,因为它具有独立的USB处理);FTDI
或新版Arduino Uno上的ATmega16U2);avrdude -v -v -v -v
可以帮助找到失败的阶段,无论是完全无法进行USB连接(电缆故障、USB/UART、PCB...),还是引导加载程序问题。
如果您反转了ATmega的位置,然后它不起作用,那么您将电源放在数字引脚上的事实可能已经烧坏了芯片。更新:我尝试了反转板载ATmega并将其放在另一个方向。现在,我上传没有遇到任何问题,但之后什么也没发生。板上LED也似乎没有闪烁。
avrdude: no programmer has been specified on the command line or the config file Specify a programmer using the -c option and try again
- basickarlavrdude -v -v -v -v -C/etc/avrdude.conf -patmega328 -carduino -P/dev/ttyACM0 -U flash:w:~/Arduino/WebServer/WebServer.ino.standard.hex
- basickarl-c
参数时,您应该指定您正在使用的程序员工具的类型(如果直接使用,则为arduino
,如果使用avrisp
、jtagice
等,则为相应的工具)。这在avrdude
的手册中有说明;-) - zmo尝试查看您的板子是否已正确选择。点击菜单工具-->板子,检查是否选择了正确的板子。
您可以检查一下是否在引脚0和1上插了跳线。这些引脚用于串行通信,而连接的导线可能会阻止代码上传到板子上。
如果没有任何连接,那么可能是 AVRDUDE 的错误,您可以尝试更新它。
avrdude
也已更新为最新版本。 - PastafarianSerial.println()
示例来检查它是否仅限于led 13
。 - ladislas我也遇到了这个问题,解决方法是重新安装USB串口驱动程序。请参考:http://arduino.cc/en/Guide/Howto 和 http://www.ftdichip.com/Drivers/VCP.htm
以上错误分为三个阶段:
我在第一次尝试使用Arduino Uno时也遇到了同样的问题。
我的解决方法非常简单。只需拔下USB电缆,然后再插回去即可。