Скетчи не загружаются в Uno

Сегодня я попытался обновить скетч на своем Arduino Uno, но не смог из-за этой ошибки:

Sketch uses 1,870 bytes (5%) of program storage space. Maximum is 32,256 bytes.
Global variables use 188 bytes (9%) of dynamic memory, leaving 1,860 bytes for local variables. Maximum is 2,048 bytes.
D:\Users\User\Desktop\arduino-1.6.10\hardware\tools\avr/bin/avrdude -CD:\Users\User\Desktop\arduino-1.6.10\hardware\tools\avr/etc/avrdude.conf -v -patmega328p -carduino -PCOM4 -b115200 -D -Uflash:w:C:\Users\User\AppData\Local\Temp\build2f7b4a32c3810b2d8e42648954faba05.tmp/nes_controller.ino.hex:i 
An error occurred while uploading the sketch

Теперь ничего не будет загружено на плату. Я попытался загрузить простой скетч с пустыми функциями setup() и loop(), я попробовал разные ПК и получил ту же ошибку, я поменял USB-кабели местами, я дважды проверил, что использую правильный COM port, я отключил все провода от контактов Arduino - ничего не помогло.

Старый скетч по-прежнему работает на Uno. Он был загружен несколько дней назад с точно такими же настройками, которые я пытаюсь использовать сейчас.

Среда разработки Arduino IDE даже не указывает на какие-либо ошибки, все компилируется и выглядит хорошо до тех пор, пока не появится сообщение "Произошла ошибка при загрузке скетча"

, 👍2

Обсуждение

Я собираюсь поместить это в буфер копирования, я думаю... «У вас есть настоящая Arduino или (вздох) дешевый китайский клон?», @Majenko

Подлинный Uno с Arduino.cc, @Osirus

Можете ли вы попросить Arduino IDE добавить больше подробностей (есть предпочтение этому IIRC)? Также как вы проверили, что это правильный COM-порт? Иногда COM-порты могут измениться после перезагрузки. Я всегда использую listComPort.exe, чтобы проверить это в первую очередь., @jfpoilpret

Это настолько многословно, насколько это возможно. Нет описания ошибки относительно того, что произошло. Я пробовал разные USB-порты, трижды проверял COM-порт., @Osirus


5 ответов


-1

щелкните правой кнопкой мыши на компьютере, выберите "Управление", "Диспетчер устройств", отключите драйвер USB и снова включите его.

,

Этот ответ не содержит достаточно подробностей, чтобы быть полезным для ОП. Пожалуйста, предоставьте дополнительную информацию, например: в какой ОС вы что делаете, скриншоты, чтобы показать каждый шаг. Если бы вы также могли объяснить, почему этот способ должен работать, это было бы еще лучше., @jfpoilpret

Пробовал, без изменений., @Osirus


1

предполагается, что это Windows, поэтому в старой версии IDE требуется перезагрузка, чтобы освободить USB-порты, или иногда просто замена USB-порта и изменение порта в меню «Инструменты»> «Порт».

идентифицирует ли он используемую плату при выборе порта? (Подлинный/Ардуино)

,

Да, «Получить информацию о плате» работает и идентифицирует мою плату., @Osirus


3

Вы можете установить уровень детализации в Arduino IDE:

  • Меню "Файл"
  • Настройки
  • Вкладка "Настройки".
  • "Показывать подробный вывод во время" => отметьте "загрузить"
  • Нажмите "ОК".

Загрузите еще раз и обратите внимание на дополнительные выходные данные, сообщающие вам, что не так.

Он также должен указывать на этот URL, который указывает на наиболее часто встречающиеся проблемы.

Самая большая проблема заключается в том, что я забываю переключаться между платами Micro и Uno (поскольку я развертываю свой скетч на обеих платах).

,

0

По моему опыту, ошибка загрузки скетча возникает из-за 4 разных ошибок: (1) Глупая ошибка: не подключили последовательный кабель к ПК (2) Я не правильно выбрал COM-порт (Инструменты/порт). (3) Я выбрал неправильный тип платы (Инструменты/плата). подключил Nano, но при загрузке выбрал Uno. (4) При обновлении Arduino IDE до версии a мне не удалось выбрать опцию «загрузить USB-драйверы». Их 2 или 3.

,

0

Это предположение основано на том, с чем я сталкивался ранее. Со всей предоставленной информацией помните, что я всего лишь предположил!

Возможно ли, что вы столкнулись с серийным флудом, т.е. он постоянно что-то отправляет на консоль. Выполните следующие действия. Возможно, потребуется несколько попыток:

  1. Полностью выключите плату
  2. Отсоедините USB-кабель.
  3. Удерживайте кнопку сброса.
  4. удерживайте ее нажатой (или соедините перемычкой контакт RESET с контактом GND).
  5. Все еще удерживая кнопку Reset, снова подключите USB-кабель.
  6. Начните загружать скетч, у которого нет этой проблемы (я использую скетч Blink).
  7. Когда индикатор приема начнет мигать, отпустите кнопку сброса. Примечание. Я видел, как это происходило несколько раз, когда я заливал последовательный вывод. Индикатор TX горит.

Вы можете проверить оборудование следующим образом. Вот трюк, который я использую на некоторых платах, но сначала скорость передачи в терминале такая же, как в скетче (Serial.begin(115200). Если это так, то удалите все, затем установите перемычку между землей и сбросом. Затем установите перемычка между TX и RX (контакт o и контакт 1 на uno). Запустите IDE, и то, что вы набираете в консоли, должно быть возвращено вам. Если это работает, оборудование подключено нормально.

,