У меня есть Arduino Duemilanove с ATmega328 . Я работаю над Ubuntu 12.04 (Precise Pangolin), и версия Arduino IDE - 1.0. Недавно я попытался загрузить на него несколько образцов эскизов, например Blink. Однако ни одна из моих попыток не работает, и каждый раз, когда я пробую, они приводят к одной и той же ошибке:
avrdude: stk500_recv (): программист не отвечает.
Я включил /dev/ttyUSB0
в меню Инструменты → Последовательный порт . Я также выбрал правильную плату (Duemilanove с ATmega328) из списка. Тем не менее, я не могу решить проблему. Я также искал в Интернете, и никакие другие ответы на эту проблему, кажется, не работают для меня. Почему я столкнулся с этой проблемой и как ее решить?
Я также попытался повернуть встроенный ATmega и установить его в другом направлении. Теперь у меня нет проблем с загрузкой, но потом ничего не происходит. Встроенный светодиод тоже вроде не мигает.
Ответы:
У меня была эта проблема с Crowduino, работающим с IDE Arduino на OS X. Решением для меня было включить подробный вывод во время загрузки (на панели настроек Arduino IDE).
Затем при загрузке вы можете увидеть, как AVRDUDE отправляет три пакета
avrdude: Send: 0 [30] [20]
(с соответствующими вспышками RX на плате) прямо передavrdude: ser_recv(): programmer is not responding
ошибкой.Хитрость заключается в том, чтобы нажать кнопку сброса на плате непосредственно перед отправкой этих трех пакетов. Тогда программа будет успешно загружена.
источник
Убедитесь, что на выводах Tx / Rx нет ввода. Тогда это будет работать.
источник
У меня была такая же проблема - поэтому я нашел этот вопрос.
Мне только нужно было изменить процессор с «ATmego328P» на «ATmego328P (старый загрузчик)»
Проблема решена - по крайней мере, для меня.
источник
Среди хороших идей здесь есть какие-то колдовские разговоры. Давайте постараемся быть более реалистичными в том, что происходит, и подведем итоги, которые стоит проверить:
В принципе, когда это происходит, рекомендуется включить подробный режим для AVRDUDE , чтобы лучше понять, что происходит. Для этого вам нужно только зайти в настройки и установить флажок подробного режима. Также неплохо отказаться от Arduino IDE и запустить консоль, чтобы было удобнее читать выходные данные AVRDUDE, которые вы получите при нажатии на
upload
кнопку.Здесь важно поставить 3 или 4
-v
на вызов команды. Вот как выглядят такие команды AVRDUDE с составленными параметрами, поскольку они полностью зависят от того, как был установлен Arduino:Хороший способ получить правильную командную строку - это скопировать ее из подробного вывода журнала вывода Arduino IDE, когда многословие включено.
Когда вы получаете
avrdude: stk500_recv(): programmer is not responding
это, это в основном означает, что что-то не так, до того, как начнется мигание.В основном вам нужно проверить (от оборудования до программного обеспечения, от низкого уровня до высокого уровня):
Rx
иTx
(обычно это контакты1
и0
);1
и0
штырьки Arduino не используется какой - то щит или индивидуальный дизайн (/!\
не относится к Леонардо , как это имеет независимую обработку USB);FTDI
в более старых версиях Duemilanove или ATmega16U2 в более новых версиях Arduino Unos);Обычно это
avrdude -v -v -v -v
может помочь найти, на каком этапе он терпит неудачу. Если он вообще не может установить USB-соединение (неисправность кабеля, USB / UART, PCB…) или это проблема с загрузчиком.Боюсь, что если вы поменяли положение ATmega на обратное, и он не работает, то факт, что вы поместили источник питания на цифровые контакты, мог сжечь ваш чип.
источник
avrdude: no programmer has been specified on the command line or the config file Specify a programmer using the -c option and try again
avrdude -v -v -v -v -C/etc/avrdude.conf -patmega328 -carduino -P/dev/ttyACM0 -U flash:w:~/Arduino/WebServer/WebServer.ino.standard.hex
Попробуйте проверить, правильно ли выбрана ваша доска. Щелкните меню Инструменты -> Доска и проверьте, выбрана ли правильная плата.
источник
Вы можете проверить, подключены ли какие-либо перемычки к контактам 0 и 1. Эти контакты используются для последовательной связи, а подключенные провода могут предотвратить загрузку кода на плату.
Если ничего не подключено, это может быть ошибка в AVRDUDE , вы можете попробовать обновить его.
источник
avrdude
Также обновлено и является последней версией.Serial.println()
пример, чтобы проверить, если это не толькоled 13
.Я тоже столкнулся с этой проблемой, и я решил ее, переустановив последовательный драйвер USB. Пожалуйста, см. Также: http://arduino.cc/en/Guide/Howto и http://www.ftdichip.com/Drivers/VCP.htm
источник
Выше ошибка приходит в 3 этапа
источник
Я решил проблему в OS X v10.10 (Yosemite), следуя этим инструкциям:
Чип FTDI и OS X 10.10
Однако трюк, предложенный hoipolloi, был рабочим временным обходным решением и в этой версии.
источник
У меня была такая же проблема при первой попытке Arduino Uno.
Мое решение было довольно простым. Просто отключите, а затем подключите кабель USB.
источник
В Windows 7 у меня возникала эта проблема несколько раз, каждый раз с разными сообщениями об ошибках. По сути, IDE отправляет не на тот порт.
Чтобы исправить это, просто перейдите в меню Инструменты → Порты → [выберите COM-порт, на котором установлена ваша плата].
Не забудьте дважды проверить порт вашей платы:
Запустите диспетчер устройств
Убедитесь, что ваш драйвер Arduino указан под портом, соответствующим настройкам порта вашей IDE (упомянутым выше).
Моя плата указана под портом
COM1
. Если вы хотите, вы можете просто изменить порт в дополнительных настройках драйвера:источник
У меня также есть эта проблема на моем Arduino, работающем на Mac. Это происходит на двух моих Arduinos (Arduino Uno и Arduino Pro, связанных с FTDI).
Для Uno я подключаю кабель к своему компьютеру и нажимаю кнопку загрузки, а затем начинаю считать, пока не замигает светодиод «TX». Затем повторите загрузку, но непосредственно перед тем, как загорится индикатор TX, нажмите кнопку сброса, и загрузка будет успешной.
Позже я определил, что смена кабеля USB устранила эту проблему.
источник
Я публикую это, потому что нигде не нашел этого ответа. Все мои клоны Arduino nano Chinese (CH340) имели эту проблему после обновления до Arduino IDE до 1.8.9. Что сработало для меня, так это использование запасного официального Arduino Uno, который я должен записать загрузчик на неисправный наноразмер, используя заголовки ICSP на нано. Для этого все, что я сделал, - это следовал инструкциям здесь: chinese-clone-of-arduino-nano-with-chip-ch340g-how-to-fix-it . ЕДИНСТВЕННОЕ, что я сделал иначе, - это всегда устанавливать параметр «Старый загрузчик», как было сказано ранее в этой теме. В остальном я полностью выполнил инструкции по этой ссылке и избавил свои наноразмеры от этой досадной проблемы. Я надеюсь, что это кому-то поможет.
источник
Сначала убедитесь, что / dev / ttyUSB0 работает. Например, подключите мышь и проверьте, что она работает. Во-вторых, попробуйте выбрать другую доску. Часто неоригинальные платы не распознаются правильно под своим именем. В-третьих, попробуйте вручную нажать кнопку сброса при загрузке скетча. Видимо автоматический сброс сломан.
источник
Я решил проблему в моем случае при загрузке и установке старых драйверов FDTM из здесь .
Попробуйте установить
FTDIUSBSerialDriver_10_4_10_5_10_6_10_7.mpkg
, а затем перезапустите Arduino.источник
Просто подумал, что хочу указать, что моя новая плата Arduino Uno Rev3 использует следующий драйвер LInux:
Это известно как
CONFIG_USB_ACM:
опция : в последней версии ядра LInux 3.x.Затем это устройство выглядит как:
/dev/ttyACM0
или подобное.источник
Есть ли у вас что-нибудь подключенное к
RESET
контакту на Arduino?Я столкнулся с этой проблемой с графическим ЖК-дисплеем, который необходимо подключить к
RESET
контакту. Отсоединение перемычки между ЖК-дисплеем иRESET
контактом во время загрузки кода исправило это для меня, все, что вам нужно было сделать, это повторно подключить после завершения загрузки кода.источник
Я нашел причину этого ...
Изменение моего последовательного порта на /dev/tty.usbmodem2131 исправило это. Оказывается, я все время использовал неправильный последовательный порт!
источник
Можешь попробовать:
serial.debug_rate=9600
источник
Эта комбинация приведенных выше ответов решила для меня проблему:
выполнил обновление Java:
sudo apt-get install default-jdk
затем убил Arduino IDE и перезапустил ее
теперь появилась моя правильная плата (Arduino Mega 2560, где до Mega 1280 был единственный вариант)
для драйверов я сделал так:
sudo chmod a+rw /dev/serial/by-id/usb-Arduino__www.arduino.cc__(a bunch of numbers)
После этого моя Arduino IDE отображается
/dev/ttyACM0
в меню инструментов / последовательного порта.Теперь все отлично работает!
источник
Вот решение, которое помогло мне работать на MacBook Pro (на рабочем столе).
Я получал ту же ошибку, и оказалось, что это потому, что у меня был USB, подключенный к периферийному устройству (моему монитору), а не к USB на самом ПК. Он сразу остановил все ошибки и является простым решением.
источник
Спасибо @hoipolloi за правильное направление в поиске решения.
Во всяком случае, мне пришлось сделать несколько другие шаги, чтобы исправить проблему.
В моем случае Arduino Uno работала нормально, но внезапно перестала работать после некоторой игры с эскизами. Я получал
stk500_recv(): programmer is not responding
все время, и ничего не работало. Потом обратил внимание, что на моей плате всегда горит светодиод 13. Это выглядело так, как будто какой-то жесткий зацикленный набросок повторялся снова и снова на доске и блокировал любой ввод на плату. Не уверен, это всего лишь мои предположения.Я безуспешно пытался нажимать СБРОС во все возможные моменты и внезапно попробовал следующие шаги:
После этого я заметил, что на плате 13 светодиод на секунду погас, а затем снова включился. Похоже, было короткое окно сброса, когда плата действительно сбрасывалась. Затем, как и в решении @hoipolloi, я поймал момент «сброса» прямо перед отправкой трех пакетов, и это сработало.
Надеюсь, это поможет вам разобраться в проблеме, если ни одно из других решений не работает.
СОВЕТ . Если вы не видите три
Send: 0 [30] [20]
строки при загрузке эскиза в консоль, сделайте следующее:Посмотрите в окно журнала. Вы сможете найти такую строку:
Похоже, он проглатывает символы разрыва строки или пробела, как здесь
-CE:\Program Files...
. Так и должно быть-C E:\Program Files
. Скопируйте это как в Блокнот, добавьте пропущенные пробелы, чтобы сделать строку такой:Добавьте 4
-v
инструкции, как я делал выше.Теперь вы увидите намного больше подробностей благодаря 4
-v
аргументам. Изначально Arduino Studio использует только один.источник
Вы устанавливали / обновляли драйвер для кабеля FTDI? (Шаг третий на http://arduino.cc/en/Guide/Howto ). Запуск Arduino IDE из моего Raspberry Pi работал нормально без явной установки драйверов (либо они были предварительно установлены, либо установщик Arduino IDE позаботился об этом). На моем Mac это было не так, и мне пришлось устанавливать драйверы кабелей в дополнение к IDE.
источник
Я только что потратил последние несколько часов на эту же проблему ... Просто зайдите сюда " http://www.ftdichip.com/Drivers/VCP.htm ", загрузите последние версии драйверов и перезагрузитесь. После этого все должно работать нормально. Я также загружал каждую ночь программного обеспечения Arduino, но я не заметил, чтобы это имело значение.
источник
Попробуйте загрузить программу без -b (опция скорости передачи). В ~ / .arduino15 / preferences.txt установите build.verbose = true, когда arduino.cc не запущен. В подробном выводе вы найдете шестнадцатеричный файл, который вы должны загрузить из консоли:
Я просто заменяю чип 128 на версию 328, и с Decimile название моей платы было изменено на Uno или Ethernet из-за новой скорости 115200 бод.
источник
Если вы подключаете Arduino через USB-концентратор, попробуйте подключить его непосредственно к одному из USB-портов на Mac.
Это сработало для меня.
источник
В моем случае проблема возникла, когда я пытался составить «странные» арифметические выражения.
например (3,14 / 4) / 5 или 3,15% 2,55
Итак, я предлагаю вам проверить все арифметические выражения на случай, если некоторые из них не могут быть вычислены Arduino.
Надеюсь, поможет.
источник
В моем случае (Mini Pro) решение было настолько простым, что я не понял, как я это пропустил. Мне нужно было пересечь провода RX / TX.
Решение:
источник
В моем случае это была неправильная скорость передачи данных. Он вызывает эту команду:
Как видите, скорость передачи установлена на 57600. Когда вы удаляете этот аргумент (-b57600) и запускаете его в командной строке, он работает нормально.
источник
Моя проблема заключалась в том, что я обновил Arduino IDE до новой версии и не подключал провод заново. Похоже, это была проблема
Просто отключите кабель и подключите снова. Спасибо.
источник