我在将一个简单的 hello world 程序上传到我的 Arduino Mega 2560 时遇到问题。我检查了它在使用 IDE 时是否可以工作,确实可以。但是,我不想使用 IDE。(顺便说一句,我必须chmod a+rw /dev/ttyACM0
让它工作。)
该错误是众所周知的,并且在网上进行了很多讨论。到目前为止,我发现的任何解决方案都不适用于我,因为我使用的是 makefile 而不是 IDE,而且我使用的是 Linux。我正在使用的 Makefile:
ARDUINO_DIR = /usr/share/arduino
TARGET = test
ARDUINO_LIBS =
MCU = atmega2560
F_CPU = 16000000
ARDUINO_PORT = /dev/ttyACM0
AVRDUDE_ARD_BAUDRATE = 115200
AVRDUDE_ARD_PROGRAMMER = arduino
include /usr/share/arduino/Arduino.mk
源代码编译得很好,但在上传阶段,avrdude 抱怨:
/usr/share/arduino/hardware/tools/avr/../avrdude -q -V -D -p atmega2560 -C /usr/share
/arduino/hardware/tools/avr/../avrdude.conf -c arduino -b 115200 -P /dev/ttyACM0 \
-U flash:w:build-uno/test.hex:i
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 1 of 10: not in sync: resp=0x00
我认为这是错误设置标志的简单问题。有任何想法吗?