Меню

Ошибка при записи загрузчика usbasp

Форум РадиоКот • Просмотр темы — Все про USBAsp

Сообщения без ответов | Активные темы

ПРЯМО СЕЙЧАС:

Автор Сообщение

Не в сети

Заголовок сообщения: Re: Все про USBAsp

СообщениеДобавлено: Пт мар 18, 2016 20:19:58 

Потрогал лапой паяльник

Карма: 4

Рейтинг сообщений: 14

Зарегистрирован: Ср мар 02, 2016 16:40:45
Сообщений: 337

Рейтинг сообщения: 0

А Вы при программировании, питаете откуда программируемый контроллер? Я так понимаю с самого девайса, а не с программатора? в таком случае, эта кака может быть лезет по питанию, вряд-ли это может дать сбой по резету?…На ардуине, возможно оно лучше отфильтровано после юсб, поэтому все чисто…Попробуйте ради эксперемента увеличьте шлейф до 30 см, и подключите к ардуине, думаю ничего не изменится, и будет читаться так же без ошибок, возможно :)

Вернуться наверх
 

ПрофильПрофиль

 

Реклама

boka1733

Не в сети

Заголовок сообщения: Re: Все про USBAsp

СообщениеДобавлено: Пт мар 18, 2016 21:01:59 

Встал на лапы
Аватар пользователя

Карма: 1

Рейтинг сообщений: 79

Зарегистрирован: Пт апр 16, 2010 12:00:19
Сообщений: 121
Откуда: КМВ

Рейтинг сообщения: 0

RX24 писал(а):

А Вы при программировании, питаете откуда программируемый контроллер?

Питание идет от USB —>программатор —> arduino 2560.
На борту у дуньки есть стабилизатор, но я его не использую.
Когда подключаю ISP в пульт радиоуправления (turnigy 9x кто в теме) питания от USB уже не хватает, поэтому включаю штатное питание пульта от его аккумулятора.

Вернуться наверх
Реклама

radteh

Не в сети

Заголовок сообщения: Re: Все про USBAsp

СообщениеДобавлено: Сб мар 19, 2016 03:44:55 

Друг Кота
Аватар пользователя

Карма: 23

Рейтинг сообщений: 282

Зарегистрирован: Пт мар 09, 2007 15:01:52
Сообщений: 3040
Откуда: Биробиджан

Рейтинг сообщения: 0

Медали: 1

Получил миской по аватаре (1)

moonlight1 какой программой пытаешься работать?

Вернуться наверх

moonlight1

Не в сети

Заголовок сообщения: Re: Все про USBAsp

СообщениеДобавлено: Сб мар 19, 2016 06:37:37 

Зарегистрирован: Вс июн 28, 2015 18:07:39
Сообщений: 62
Откуда: Алтайский край, город Бийск

Рейтинг сообщения: 0

radteh, дудкой. Что из среды ардуино, что через консоль все равно не получается прошить загрузчик ардуины.
Напишу с самого начала мб скажете в какой раздел форума тут лучше написать чтобы помогли.

Цитата:

Имеется Arduino nano v3 HC340. Столкнулся с такой проблемой что не могу залить не один скетч, ни новый, ни из ранее созданных и ранее работавших. При заливании под конец выдает такую ошибку:
«avrdude: verification error, first mismatch at byte 0x0000
0xff != 0x0c
avrdude: verification error; content mismatch»
Для проверки использовал простой скетч для мигания встроенного светодиода на 13 пине.
Еще вчера ардуина работала, а сегодня вдруг перестала. Теперь при подключении к ПК постоянно мигает встроенные светодиод на 13 пине
Первым делом был конечно гугл и он сказал что возможно что-то с загрузчиком, предлагал перепрошить, но выдавал примеры только для pro-mini а для nano нет. У меня есть программатор USBasp но как прошить с помощью него загрузчик nano я не нашел и не стал рисковать, решил написать сюда и ждать может скажете чего.
P.s. менял провода и usb порты, все бестолку…

Мне помог один человек подсказал как цеплять проводки чтобы прошить загрузчик

Цитата:

подключаете usbasp к nano (разъем на 6 штырьков — mosi(D11), miso(D12), sck(D13), reset, vcc, gnd), выбираете в IDE програматор usbasp, выбираете плату , и жмете записать загрузчик

Я сделал как он сказал и мне в ардуино выдало такое

Цитата:

выдает ошибку при нажатии на «записать загрузчик»

Arduino: 1.6.8 (Windows 7), Плата:»Arduino Nano, ATmega328″

avrdude: warning: cannot set sck period. please check for usbasp firmware update.
avrdude: error: programm enable: target doesn’t answer. 1
avrdude: initialization failed, rc=-1
Double check connections and try again, or use -F to override
this check.

Ошибка при записи загрузчика.

Этот отчёт будет иметь больше информации с
включенной опцией Файл -> Настройки ->
«Показать подробный вывод во время компиляции»

Потом он сказал попробовать через командную строку шить, но и этот способ не сработал.
Может быть длина проводов влияет? Но я что-то не уверен в этом. Проводки от шлейфа программатора до ардуинки 12см, не думаю что в них причина но если скажете укорочу.
Лог с работой через консоль и ошибками прилагаю, мб что подскажете…

Вложения:


log.txt [5.43 KiB]

Скачиваний: 153

Вернуться наверх
Реклама

Как выбрать батарейки для IoT-устройств – обзор эксперта

Как выбрать химические источники тока (ХИТ, батарейки) для устройств промышленного и бытового интернета вещей? В чем различие критериев выбора и ключевых параметров? Какие изделия популярных брендов FANSO и POWER FLASH удовлетворяют этим критериям?
Обо всем этом рассказывает ведущий инженер компании КОМПЭЛ по модулям питания и химическим источникам тока в статье.

Подробнее>>

RX24

Не в сети

Заголовок сообщения: Re: Все про USBAsp

СообщениеДобавлено: Сб мар 19, 2016 09:16:31 

Карма: 4

Рейтинг сообщений: 14

Зарегистрирован: Ср мар 02, 2016 16:40:45
Сообщений: 337

Рейтинг сообщения: 0

moonlight1В ошибке написано что то вроде что ваш программатор со старой прошивкой требует обновить ее, у Вас какая версия прошивки в программаторе? нужна 2011года. А версия в программы в среде ардуино новая Если у вас в программаторе есть перемычка на пониженную частоту, замкните ее и попробуйте загрузить загрузчик если получится будет загружать минуты 3 но загрузит.
Есть программа ArduinoUploader которая позволяет загружать сторонние хекс файлы, с платы ардуино. В ней выбираете тип вашего контроллера ком порт вашей ардуины и путь к хекс файлу вашего загрузчика для вашей платы.он загружается так же как и скетчи.
Если с программатором не пройдет, если вся проблема со слетевшем загрузчике то этой программкой все загрузится, а если нет, то проблема с юсбуартом.

Последний раз редактировалось RX24 Сб мар 19, 2016 10:22:16, всего редактировалось 1 раз.

Вернуться наверх
Реклама

Реклама

Выгодные LED-драйверы MOSO для индустриальных приложений

Компэл представляет выгодные светодиодные драйверы MOSO для промышленных решений с высоким классом защиты от внешних воздействующих факторов, хорошей устойчивостью к импульсным помехам и высокой надежностью. В ряде серий реализована возможность дистанционного контроля, кроме того, отдельные версии драйверов могут программироваться на работу в автономном режиме по заранее заданному сценарию. Рассмотрим подробнее их характеристики.

Подробнее>>

moonlight1

Не в сети

Заголовок сообщения: Re: Все про USBAsp

СообщениеДобавлено: Сб мар 19, 2016 10:22:16 

Зарегистрирован: Вс июн 28, 2015 18:07:39
Сообщений: 62
Откуда: Алтайский край, город Бийск

Рейтинг сообщения: 0

RX24 , а как узнать какая версия прошивки? :))) я купил его в этом году на али, так что я даже и не знаю. Вот такой у меня программатор
Изображение
я старую версию ардуины ставил и тоже самое писало =

Последний раз редактировалось moonlight1 Сб мар 19, 2016 10:28:23, всего редактировалось 2 раз(а).

Вернуться наверх

RX24

Не в сети

Заголовок сообщения: Re: Все про USBAsp

СообщениеДобавлено: Сб мар 19, 2016 10:24:55 

Карма: 4

Рейтинг сообщений: 14

Зарегистрирован: Ср мар 02, 2016 16:40:45
Сообщений: 337

Рейтинг сообщения: 0

moonlight1 Выложил программу скачайте разархивируйте и попробуйте загрузить ваш загрузчик через эту программу вначале.
Чтобы не искать в среде ваш загрузчик выложу его сюда вот ваш загрузчик, распакуйте его, и загрузите с помощью программы с вою ардуину

Последний раз редактировалось RX24 Сб мар 19, 2016 10:28:49, всего редактировалось 1 раз.

Вернуться наверх

moonlight1

Не в сети

Заголовок сообщения: Re: Все про USBAsp

СообщениеДобавлено: Сб мар 19, 2016 10:28:41 

Зарегистрирован: Вс июн 28, 2015 18:07:39
Сообщений: 62
Откуда: Алтайский край, город Бийск

Рейтинг сообщения: 0

RX24 писал(а):

moonlight1 Выложил программу скачайте разархивируйте и попробуйте загрузить ваш загрузчик через эту программу вначале.

По поводу программы, просто подключаешь ардуино к компу без программатора, открываешь программу указываешь .hex файл с загрузчиком для ардуины, выбираешь какой мк, порт и жмешь загрузить? если так то у меня не вышло выдало ошибку и быстро окно закрылось что я даже ошибку не успел сфоткать увидел только error И все) такое успел сфоткать а потом быстро появляется информация и закрывается командная строка

Вернуться наверх

RX24

Не в сети

Заголовок сообщения: Re: Все про USBAsp

СообщениеДобавлено: Сб мар 19, 2016 10:31:11 

Карма: 4

Рейтинг сообщений: 14

Зарегистрирован: Ср мар 02, 2016 16:40:45
Сообщений: 337

Рейтинг сообщения: 0

Я вам выложил загрузчик для вашей платы выше, да, распакуйте его, потом в программе выбираете порт вашей ардуины тип микроконтроллера и указываете путь к этому загрузчику жмете загрузить.
Если не загружается тогда либо юсбуарт дохлый, либо мега 328 приказала долго жить…

Вернуться наверх

moonlight1

Не в сети

Заголовок сообщения: Re: Все про USBAsp

СообщениеДобавлено: Сб мар 19, 2016 10:37:45 

Зарегистрирован: Вс июн 28, 2015 18:07:39
Сообщений: 62
Откуда: Алтайский край, город Бийск

Рейтинг сообщения: 0

RX24 , вот жеж китайская хрень 3 дня проработала и сдохла, обидно капец… и получение товара то уже подтвердил =
Успел сфоткать ошибку видно эту ардуину на помойку к еще одной будет донором для чего либо :(

Вернуться наверх

RX24

Не в сети

Заголовок сообщения: Re: Все про USBAsp

СообщениеДобавлено: Сб мар 19, 2016 10:43:24 

Карма: 4

Рейтинг сообщений: 14

Зарегистрирован: Ср мар 02, 2016 16:40:45
Сообщений: 337

Рейтинг сообщения: 0

Попробовать еще с программатора, если загрузит то что то с юсбуарт…Посмотрите на своем прогере есть ли там перемычка или место под нее с 25 вывода на корпус, если есть то поставьте и попробуйте прошить через программатор, возможно и прокатит, если конечно сдохла не мега.Если прокатит то все равно нужен будет сторонний юсбуарт… :)
Кстати юсбауар можно проверить, замкнуть выводы rx tx открыть в среде ардуино монитор порта, написать в верхне стоке что нибудь и отправить нажав на кнопку, в поле должно появиться то что написали, если все пройдет, значит дохлая мега, ее можно и заменить, если не пройдет то проблема в преобразователе, можно и стороннем пользоваться например от старых мобильников дата кабель

Последний раз редактировалось RX24 Сб мар 19, 2016 10:50:57, всего редактировалось 1 раз.

Вернуться наверх

moonlight1

Не в сети

Заголовок сообщения: Re: Все про USBAsp

СообщениеДобавлено: Сб мар 19, 2016 10:50:17 

Зарегистрирован: Вс июн 28, 2015 18:07:39
Сообщений: 62
Откуда: Алтайский край, город Бийск

Рейтинг сообщения: 0

RX24 писал(а):

есть ли там перемычка или место под нее с 25 вывода на корпус, если есть то поставьте и попробуйте прошить через программатор, возможно и прокатит, если конечно сдохла не мега.Если прокатит то все равно нужен будет сторонний юсбуарт… :)

вроде бы есть jp3 а шить через программатор через дудку и консоль как раньше пытался?

Вернуться наверх

RX24

Не в сети

Заголовок сообщения: Re: Все про USBAsp

СообщениеДобавлено: Сб мар 19, 2016 10:52:55 

Карма: 4

Рейтинг сообщений: 14

Зарегистрирован: Ср мар 02, 2016 16:40:45
Сообщений: 337

Рейтинг сообщения: 0

Да, выбираете прогер тип платы и записать загрузчик, убедитесь что это та перемычка с 25 вывода на корпусс. если не поможет проверьте юсбуарт как я описа выше

Вернуться наверх

moonlight1

Не в сети

Заголовок сообщения: Re: Все про USBAsp

СообщениеДобавлено: Сб мар 19, 2016 11:01:10 

Зарегистрирован: Вс июн 28, 2015 18:07:39
Сообщений: 62
Откуда: Алтайский край, город Бийск

Рейтинг сообщения: 0

не че не получилось все так же

Вернуться наверх

RX24

Не в сети

Заголовок сообщения: Re: Все про USBAsp

СообщениеДобавлено: Сб мар 19, 2016 11:10:29 

Карма: 4

Рейтинг сообщений: 14

Зарегистрирован: Ср мар 02, 2016 16:40:45
Сообщений: 337

Рейтинг сообщения: 0

Значит либо мега сдохла либо нужно обновлять прошивку в прогере. Попробйте проверить юсбуарт, замкните rxtx откройте монитор порта и отправте что нибудь, если отправляет значит дохлая мега, если нет, то вместо юарт можно пользовать дата кабель от старых мобильников

Вернуться наверх

moonlight1

Не в сети

Заголовок сообщения: Re: Все про USBAsp

СообщениеДобавлено: Сб мар 19, 2016 11:25:50 

Зарегистрирован: Вс июн 28, 2015 18:07:39
Сообщений: 62
Откуда: Алтайский край, город Бийск

Рейтинг сообщения: 0

замкнул, пишу число, нажимаю отправить, а в ответ тишина.
я не в курсе в сам скетч надо что-то писать? а то он у меня пустой

Вернуться наверх

RX24

Не в сети

Заголовок сообщения: Re: Все про USBAsp

СообщениеДобавлено: Сб мар 19, 2016 11:38:31 

Карма: 4

Рейтинг сообщений: 14

Зарегистрирован: Ср мар 02, 2016 16:40:45
Сообщений: 337

Рейтинг сообщения: 0

Нет скетч тут не причем) Замыкаете rxtx открываете в среде ардуино монитор последовательного порта в верхней строке пишете что нибудь и жмете отправить, в поле у вас должно появится то же самое что вы написали.
На плате еще должны быть два светодиода, на схеме преобразователя, когда что то отправляете они должны перемигиваться они у вас есть?

Последний раз редактировалось RX24 Сб мар 19, 2016 11:47:43, всего редактировалось 1 раз.

Вернуться наверх

moonlight1

Не в сети

Заголовок сообщения: Re: Все про USBAsp

СообщениеДобавлено: Сб мар 19, 2016 11:47:13 

Зарегистрирован: Вс июн 28, 2015 18:07:39
Сообщений: 62
Откуда: Алтайский край, город Бийск

Рейтинг сообщения: 0

значит я правильно делал, отсылал число скажем 100, но в ответ нечего не приходило

Вернуться наверх

RX24

Не в сети

Заголовок сообщения: Re: Все про USBAsp

СообщениеДобавлено: Сб мар 19, 2016 11:48:33 

Карма: 4

Рейтинг сообщений: 14

Зарегистрирован: Ср мар 02, 2016 16:40:45
Сообщений: 337

Рейтинг сообщения: 0

Светодиоды есть на плате по rxtx? они перемигивают в такт отправки?
Если не мигают, проверьте все таки питание на контроллерах, если оно в норме то скорее всего либо чип преобразователя сдох, либо имеет место его непропай. А то что контроллер прогером не шьется то нужно обновлять прошивку 2012 года ставить.

Вернуться наверх

moonlight1

Не в сети

Заголовок сообщения: Re: Все про USBAsp

СообщениеДобавлено: Сб мар 19, 2016 11:55:56 

Зарегистрирован: Вс июн 28, 2015 18:07:39
Сообщений: 62
Откуда: Алтайский край, город Бийск

Рейтинг сообщения: 0

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

Вернуться наверх

Кто сейчас на форуме

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 8

Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Dimmm аватар

Offline

Зарегистрирован: 07.11.2016

Здравствуйте!

Давно собрал управляющую плату для холодильника из arduino pro mini. Все замечательно работало порядка четырех месяцев. Я уж забыл как скетч написал))) Так вот дернул черт обновить скетч в ардуинке. Подключил, грузанул…. Слетела та, что стояла и новая не загрузилась. Выдает ошибку Arduino:

1.7.11 (Windows 8.1), Плата»Arduino Pro or Pro Mini, ATmega328 (5V, 16 MHz)»

avrdude: error: programm enable: target doesn’t answer. 1 

avrdude: initialization failed, rc=-1

         Double check connections and try again, or use -F to override

         this check.

Ошибка при записи загрузчика

  Это сообщение будет содержать больше информации чем

  «Отображать вывод во время компиляции»

  включено в Файл > Настройки

Ничего понять не могу, что случилось? Чего надо???

Помогите, пожалуйста. Холодильник стоит не включенный.

Купил Pro mini на 328P камне. На нем так и написано
Решил залить загрузчик используя USBasp и ядро Minicore если в настройках выбирать 328P то шьется с ошибкой и говорит что плата 328 PB

avrdude: Version 6.3-20201216
         Copyright (c) 2000-2005 Brian Dean, http://www.bdmicro.com/
         Copyright (c) 2007-2014 Joerg Wunsch

         System wide configuration file is "C:UsersQiasarAppDataLocalArduino15packagesMiniCorehardwareavr2.1.3/avrdude.conf"

         Using Port                    : usb
         Using Programmer              : usbasp
         AVR Part                      : ATmega328P
         Chip Erase delay              : 9000 us
         PAGEL                         : PD7
         BS2                           : PC2
         RESET disposition             : dedicated
         RETRY pulse                   : SCK
         serial program mode           : yes
         parallel program mode         : yes
         Timeout                       : 200
         StabDelay                     : 100
         CmdexeDelay                   : 25
         SyncLoops                     : 32
         ByteDelay                     : 0
         PollIndex                     : 3
         PollValue                     : 0x53
         Memory Detail                 :

                                  Block Poll               Page                       Polled
           Memory Type Mode Delay Size  Indx Paged  Size   Size #Pages MinW  MaxW   ReadBack
           ----------- ---- ----- ----- ---- ------ ------ ---- ------ ----- ----- ---------
           eeprom        65    20     4    0 no       1024    4      0  3600  3600 0xff 0xff
           flash         65     6   128    0 yes     32768  128    256  4500  4500 0xff 0xff
           lfuse          0     0     0    0 no          1    0      0  4500  4500 0x00 0x00
           hfuse          0     0     0    0 no          1    0      0  4500  4500 0x00 0x00
           efuse          0     0     0    0 no          1    0      0  4500  4500 0x00 0x00
           lock           0     0     0    0 no          1    0      0  4500  4500 0x00 0x00
           calibration    0     0     0    0 no          1    0      0     0     0 0x00 0x00
           signature      0     0     0    0 no          3    0      0     0     0 0x00 0x00

         Programmer Type : usbasp
         Description     : USBasp, http://www.fischl.de/usbasp/

avrdude: auto set sck period (because given equals null)
avrdude: warning: cannot set sck period. please check for usbasp firmware update.
avrdude: AVR device initialized and ready to accept instructions

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

avrdude: Device signature = 0x1e9516 (probably m328pb)
avrdude: Expected signature for ATmega328P is 1E 95 0F
         Double check chip, or use -F to override this check.

avrdude done.  Thank you.

Failed chip erase: uploading error: exit status 1

Если выбирать 328 pb и шить, то он вроде шьется но есть залоченый байт.

avrdude: Version 6.3-20201216
         Copyright (c) 2000-2005 Brian Dean, http://www.bdmicro.com/
         Copyright (c) 2007-2014 Joerg Wunsch

         System wide configuration file is "C:UsersQiasarAppDataLocalArduino15packagesMiniCorehardwareavr2.1.3/avrdude.conf"

         Using Port                    : usb
         Using Programmer              : usbasp
         AVR Part                      : ATmega328PB
         Chip Erase delay              : 9000 us
         PAGEL                         : PD7
         BS2                           : PC2
         RESET disposition             : dedicated
         RETRY pulse                   : SCK
         serial program mode           : yes
         parallel program mode         : yes
         Timeout                       : 200
         StabDelay                     : 100
         CmdexeDelay                   : 25
         SyncLoops                     : 32
         ByteDelay                     : 0
         PollIndex                     : 3
         PollValue                     : 0x53
         Memory Detail                 :

                                  Block Poll               Page                       Polled
           Memory Type Mode Delay Size  Indx Paged  Size   Size #Pages MinW  MaxW   ReadBack
           ----------- ---- ----- ----- ---- ------ ------ ---- ------ ----- ----- ---------
           eeprom        65    20     4    0 no       1024    4      0  3600  3600 0xff 0xff
           flash         65     6   128    0 yes     32768  128    256  4500  4500 0xff 0xff
           lfuse          0     0     0    0 no          1    0      0  4500  4500 0x00 0x00
           hfuse          0     0     0    0 no          1    0      0  4500  4500 0x00 0x00
           lock           0     0     0    0 no          1    0      0  4500  4500 0x00 0x00
           calibration    0     0     0    0 no          1    0      0     0     0 0x00 0x00
           signature      0     0     0    0 no          3    0      0     0     0 0x00 0x00
           efuse          0     0     0    0 no          1    0      0  4500  4500 0x00 0x00

         Programmer Type : usbasp
         Description     : USBasp, http://www.fischl.de/usbasp/

avrdude: auto set sck period (because given equals null)
avrdude: warning: cannot set sck period. please check for usbasp firmware update.
avrdude: AVR device initialized and ready to accept instructions

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

avrdude: Device signature = 0x1e9516 (probably m328pb)
avrdude: NOTE: "flash" memory has been specified, an erase cycle will be performed
         To disable this feature, specify the -D option.
avrdude: erasing chip
avrdude: auto set sck period (because given equals null)
avrdude: warning: cannot set sck period. please check for usbasp firmware update.
avrdude: reading input file "C:UsersQiasarAppDataLocalArduino15packagesMiniCorehardwareavr2.1.3/bootloaders/empty/empty.hex"
avrdude: writing flash (0 bytes):

Writing | ################################################## | 100% -0.00s

avrdude: 0 bytes of flash written
avrdude: verifying flash memory against C:UsersQiasarAppDataLocalArduino15packagesMiniCorehardwareavr2.1.3/bootloaders/empty/empty.hex:
avrdude: load data flash data from input file C:UsersQiasarAppDataLocalArduino15packagesMiniCorehardwareavr2.1.3/bootloaders/empty/empty.hex:
avrdude: input file C:UsersQiasarAppDataLocalArduino15packagesMiniCorehardwareavr2.1.3/bootloaders/empty/empty.hex contains 0 bytes
avrdude: reading on-chip flash data:

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

avrdude: verifying ...
avrdude: 0 bytes of flash verified
avrdude: reading input file "0x0f"
avrdude: writing lock (1 bytes):

Writing | ################################################## | 100% 0.01s

avrdude: 1 bytes of lock written
avrdude: verifying lock memory against 0x0f:
avrdude: load data lock data from input file 0x0f:
avrdude: input file 0x0f contains 1 bytes
avrdude: reading on-chip lock data:

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

avrdude: verifying ...
avrdude: 1 bytes of lock verified

avrdude done.  Thank you.

Подделку подсунули, как прошить то его?

img

Для нормального процесса загрузки прошивки в основную микросхему Atmega2560 контроллера, необходимо наличие в ней загрузчика. Что и как делать — описано в этой статье.

Каким образом он там не оказался сразу, как мог слететь, мы разбираться не будем, а начнем делать процедуру восстановления.

Нам понадобится подключение к ISP разъему на плате. Питание подключать нет необходимости (берется с программатора).

board-big-front-2560-isp

Разъем ISP для Atmega2560

Распиновка разъема ISP:

isp6

Распиновка ISP

Есть несколько способов прошивки (по сути делается одно и тоже, только разными средствами):

  1. Прошивка с помощью среды Arduino и программатора USBasp.
  2. Прошивка с помощью программатора на базе FT232RL и программы Avrdude.
  3. Прошивка с помощью программатора USBasp и программы Avrdude.

Внимание! Версии, сборки и конфиги Avrdude, представленные здесь, различаются, поэтому качаем архив под каждый программатор по своей ссылке.

1) Прошивка с помощью среды Arduino и программатора USBasp.

Скачиваем свежую сборку среды Arduino отсюда или по прямой ссылке zip-архив. Распаковываем архив например в корень диска C.

Подключаем программатор к разъему ISP контроллера. Запускаем исполняемый файл среды программирования: arduino-1.0.5arduino.exe.

Далее необходимо выбрать плату — Arduino Mega 2560:

arduino-2560-boot-board

Arduino. Выбор платы

Далее необходимо выбрать программатор USBasp:

arduino-2560-boot-usbasp

Arduino. Выбор программатора

Запускаем процесс прошивки загрузчика:

arduino-2560-boot-rec

Arduino. Записать загрузчик

Дожидаемся сообщения «Загрузка завершена» в нижней части окна. Если в процессе прошивки в среде Arduino в нижней части окна наблюдались ошибки, то проверяем правильность выбора платы и программатора, а также подключение разъема ISP. Пробуем заново.

При использовании данного способа фьюзы проставляются автоматически (среда Arduino все делает сама). Ничего дополнительно делать не надо.

2) Прошивка с помощью программатора на базе FT232RL и программы Avrdude.

Нам потребуется программатор, собранный по этой схеме:

ft232rl

Схема программатора на FT232RL

Ранее о нем уже говорили, когда прошивали загрузчик на PPM-encoder.

Существует прикол, что китайцы путают подписи выводов, или просто их не делают. Например был случай, что написано «RSD», а по даташиту «DSR». В этом случае прослеживаем по ножкам микросхемы.

Чтобы прошить мегу по ISP, нужно соединить:

11 ногу ft232RL с MISO
9 ногу ft232RL с SCK
6 ногу ft232RL с RST
10 ногу ft232RL с MOSI
А так же подать питание и землю от переходника.

Нам необходима программа Avrdude с настроенным на Atmega2560 конфигом, библиотека для работы Avrdude и FT232 и файл прошивки загрузчика. Все есть тут (спасибо Алексею Козину).

  • Распаковываем архив в удобную папку, например в корень диска C.
  • Подключить программатор к ПК, проследить чтоб корректно встали драйвера (о чем красноречиво скажет появление в системе еще одного ком-порта), подключаем программатор к ISP разъему Atmega2560 на плате APM.
  • Запускаем файл «boot2560.bat» и наслаждаемся процессом. В конце видим сообщение о завершении процесса прошивки.

При использовании данного способа фьюзы проставляются автоматически (команда в bat файле). Ничего дополнительно делать не надо.

3) Прошивка с помощью программатора USBasp и программы Avrdude.

Чтобы прошить мегу по ISP, нужно соедить:

MISO программатора с MISO разъема ISP на контроллере.
SCK программатора с SCK разъема ISP на контроллере.
RST программатора с RST разъема ISP на контроллере.
MOSI программатора с MOSI разъема ISP на контроллере.
А так же подать питание и землю от переходника.

Нам необходима программа Avrdude с настроенным на Atmega2560 конфигом, драйвера для программатора USBasp, и файл прошивки загрузчика. Все есть тут.

  • Распаковываем архив в удобную папку, например в корень диска C.
  • Подключаем программатор к ПК, по необходимости устанавливаем драйвер из архива, подключаем программатор к ISP разъему Atmega2560 на плате APM.
  • Для прошивки фьюзов запускаем файл «boot2560-fuses.bat».
  • Запускаем файл «boot2560.bat» и наслаждаемся процессом. В конце видим сообщение о завершении процесса прошивки.

Раз речь пошла о фьюзах, то перечислю их для заметки:

low_fuses=0xFF
high_fuses=0xD8
extended_fuses=0xFD
lock_bits=0x0F

После успешного процесса прошивки загрузчика можно попробовать загрузить основную прошивку в контроллер через Mission Planner (описано в предыдущей статье). Если все работает, значит загрузчик был успешно залит и работает должным образом.

Update 30.03.2014:

При прошивке 3-м способом наблюдается проблема с верификацией. Так понял, что это проблема дешевых программаторов, которые некорректно работают с размером памяти >128кб. Но все работает. Главное не пугаться, если в консоли долго строчки не обновляются. Процесс не быстрый (около 5 минут).

Update 13.01.2017:

Если после прошивок загрузчиков и основных прошивок наблюдаются проблемы с заливкой прошивки через Mission Planner, то рекомендуется сделать очистку чипа средствами программатора (обычно в программе это называется «Erase chip»).

Один из примеров, как это помогло.

Если вы нашли ошибку на странице, то нажмите Shift + Enter или нажмите здесь, чтобы уведомить нас.

This div height required for enabling the sticky sidebar

I am getting an error while Uploading the Bootloader to Atmega8A
I am selecting..

  Board -> Arduino NG and Older
  Processor -> Atmega8A
  Programmer -> USBasp

and sketch code is ArduinoISP, After selecting port then I do «Burn Bootloader»

But getting an error of…

   "efuse" memory type not defined for part "ATmega8"
    Error while burning bootloader. 

Please tell me what to do. Any help will be appreciated.

Thank you

asked Nov 25, 2015 at 12:39

Nik's user avatar

Google is your friend!!!
Apparently this is a known regression bug not yet corrected. The possible solution is also suggested there by user rigelinorion and here is the quote:

Hello, I solved it this way...

Open for edit the file C:Program FilesArduinohardwarearduinoavrplatforms.txt
this is standard section uploader/programmers tools

#==============================================================================
tools.avrdude.cmd.path={runtime.ide.path}/hardware/tools/avr/bin/avrdude
tools.avrdude.config.path={runtime.ide.path}/hardware/tools/avr/etc/avrdude.conf
tools.avrdude.cmd.path.linux={runtime.ide.path}/hardware/tools/avrdude
tools.avrdude.config.path.linux={runtime.ide.path}/hardware/tools/avrdude.conf

tools.avrdude.upload.params.verbose=-v -v -v -v
tools.avrdude.upload.params.quiet=-q -q
tools.avrdude.upload.pattern="{cmd.path}" "-C{config.path}" {upload.verbose} -p{build.mcu} -c{upload.protocol} -P{serial.port} -b{upload.speed} -D "-Uflash:w:{build.path}/{build.project_name}.hex:i"

tools.avrdude.program.params.verbose=-v -v -v -v
tools.avrdude.program.params.quiet=-q -q
tools.avrdude.program.pattern="{cmd.path}" "-C{config.path}" {program.verbose} -p{build.mcu} -c{protocol} {program.extra_params} "-Uflash:w:{build.path}/{build.project_name}.hex:i"

tools.avrdude.erase.params.verbose=-v -v -v -v
tools.avrdude.erase.params.quiet=-q -q
tools.avrdude.erase.pattern="{cmd.path}" "-C{config.path}" {erase.verbose} -p{build.mcu} -c{protocol} {program.extra_params} -e -Uefuse:w:{bootloader.extended_fuses}:m -Ulock:w:{bootloader.unlock_bits}:m -Uhfuse:w:{bootloader.high_fuses}:m -Ulfuse:w:{bootloader.low_fuses}:m

tools.avrdude.bootloader.params.verbose=-v -v -v -v
tools.avrdude.bootloader.params.quiet=-q -q
tools.avrdude.bootloader.pattern="{cmd.path}" "-C{config.path}" {bootloader.verbose} -p{build.mcu} -c{protocol} {program.extra_params} "-Uflash:w:{runtime.ide.path}/hardware/arduino/avr/bootloaders/{bootloader.file}:i" -Ulock:w:{bootloader.lock_bits}:m
#==============================================================================

create a new tool called, for example, avrdude1
simply copy section tools.avrdude and name it tools.avrdude1
the trick is that we remove switch "-Uefuse:w:{bootloader.extended_fuses}:m" from "tools.avrdude1.erase.pattern="

#=============================================================================
tools.avrdude1.cmd.path={runtime.ide.path}/hardware/tools/avr/bin/avrdude
tools.avrdude1.config.path={runtime.ide.path}/hardware/tools/avr/etc/avrdude.conf
tools.avrdude1.cmd.path.linux={runtime.ide.path}/hardware/tools/avrdude
tools.avrdude1.config.path.linux={runtime.ide.path}/hardware/tools/avrdude.conf

tools.avrdude1.upload.params.verbose=-v -v -v -v
tools.avrdude1.upload.params.quiet=-q -q
tools.avrdude1.upload.pattern="{cmd.path}" "-C{config.path}" {upload.verbose} -p{build.mcu} -c{upload.protocol} -P{serial.port} -b{upload.speed} -D "-Uflash:w:{build.path}/{build.project_name}.hex:i"

tools.avrdude1.program.params.verbose=-v -v -v -v
tools.avrdude1.program.params.quiet=-q -q
tools.avrdude1.program.pattern="{cmd.path}" "-C{config.path}" {program.verbose} -p{build.mcu} -c{protocol} {program.extra_params} "-Uflash:w:{build.path}/{build.project_name}.hex:i"

tools.avrdude1.erase.params.verbose=-v -v -v -v
tools.avrdude1.erase.params.quiet=-q -q

#this line was edited
tools.avrdude1.erase.pattern="{cmd.path}" "-C{config.path}" {erase.verbose} -p{build.mcu} -c{protocol} {program.extra_params} -e -Ulock:w:{bootloader.unlock_bits}:m -Uhfuse:w:{bootloader.high_fuses}:m -Ulfuse:w:{bootloader.low_fuses}:m

tools.avrdude1.bootloader.params.verbose=-v -v -v -v
tools.avrdude1.bootloader.params.quiet=-q -q
tools.avrdude1.bootloader.pattern="{cmd.path}" "-C{config.path}" {bootloader.verbose} -p{build.mcu} -c{protocol} {program.extra_params} "-Uflash:w:{runtime.ide.path}/hardware/arduino/avr/bootloaders/{bootloader.file}:i" -Ulock:w:{bootloader.lock_bits}:m
#==============================================================================

Here is an example of the use of the tool avrdude1 in boards.txt file

atmega8.name=ATmega8 OPTIBOOT
atmega8.upload.protocol=arduino
atmega8.upload.maximum_size=7168
atmega8.upload.speed=115200
atmega8.upload.tool=avrdude1
atmega8.bootloader.low_fuses=0xbf
atmega8.bootloader.high_fuses=0xCC
atmega8.bootloader.path=atmega8
atmega8.bootloader.file=optiboot/optiboot_atmega8.hex
atmega8.bootloader.unlock_bits=0x3F
atmega8.bootloader.lock_bits=0x0F
atmega8.bootloader.tool=avrdude1
atmega8.build.mcu=atmega8
atmega8.build.f_cpu=16000000L
atmega8.build.core=arduino
atmega8.build.variant=standard

answered Nov 25, 2015 at 13:10

brtiberio's user avatar

brtiberiobrtiberio

9265 silver badges15 bronze badges

4

I used Programmer «AVRUPro+» for Uploading Program. I downloaded its Software «Progisp» Then I did some few steps….

1) After downloading it, Run the Progisp.exe file.
2) Then went to Command tab, and clicked “Program Fuse”, It just did my fuse set.
3)Then I just did the simple process of burning the bootloader to my Atmega Controller.
4)After this I was able to upload my program to my new Atmega Controller.

Thank you

answered Nov 27, 2015 at 12:10

Nik's user avatar

I am getting an error while Uploading the Bootloader to Atmega8A
I am selecting..

  Board -> Arduino NG and Older
  Processor -> Atmega8A
  Programmer -> USBasp

and sketch code is ArduinoISP, After selecting port then I do «Burn Bootloader»

But getting an error of…

   "efuse" memory type not defined for part "ATmega8"
    Error while burning bootloader. 

Please tell me what to do. Any help will be appreciated.

Thank you

asked Nov 25, 2015 at 12:39

Nik's user avatar

Google is your friend!!!
Apparently this is a known regression bug not yet corrected. The possible solution is also suggested there by user rigelinorion and here is the quote:

Hello, I solved it this way...

Open for edit the file C:Program FilesArduinohardwarearduinoavrplatforms.txt
this is standard section uploader/programmers tools

#==============================================================================
tools.avrdude.cmd.path={runtime.ide.path}/hardware/tools/avr/bin/avrdude
tools.avrdude.config.path={runtime.ide.path}/hardware/tools/avr/etc/avrdude.conf
tools.avrdude.cmd.path.linux={runtime.ide.path}/hardware/tools/avrdude
tools.avrdude.config.path.linux={runtime.ide.path}/hardware/tools/avrdude.conf

tools.avrdude.upload.params.verbose=-v -v -v -v
tools.avrdude.upload.params.quiet=-q -q
tools.avrdude.upload.pattern="{cmd.path}" "-C{config.path}" {upload.verbose} -p{build.mcu} -c{upload.protocol} -P{serial.port} -b{upload.speed} -D "-Uflash:w:{build.path}/{build.project_name}.hex:i"

tools.avrdude.program.params.verbose=-v -v -v -v
tools.avrdude.program.params.quiet=-q -q
tools.avrdude.program.pattern="{cmd.path}" "-C{config.path}" {program.verbose} -p{build.mcu} -c{protocol} {program.extra_params} "-Uflash:w:{build.path}/{build.project_name}.hex:i"

tools.avrdude.erase.params.verbose=-v -v -v -v
tools.avrdude.erase.params.quiet=-q -q
tools.avrdude.erase.pattern="{cmd.path}" "-C{config.path}" {erase.verbose} -p{build.mcu} -c{protocol} {program.extra_params} -e -Uefuse:w:{bootloader.extended_fuses}:m -Ulock:w:{bootloader.unlock_bits}:m -Uhfuse:w:{bootloader.high_fuses}:m -Ulfuse:w:{bootloader.low_fuses}:m

tools.avrdude.bootloader.params.verbose=-v -v -v -v
tools.avrdude.bootloader.params.quiet=-q -q
tools.avrdude.bootloader.pattern="{cmd.path}" "-C{config.path}" {bootloader.verbose} -p{build.mcu} -c{protocol} {program.extra_params} "-Uflash:w:{runtime.ide.path}/hardware/arduino/avr/bootloaders/{bootloader.file}:i" -Ulock:w:{bootloader.lock_bits}:m
#==============================================================================

create a new tool called, for example, avrdude1
simply copy section tools.avrdude and name it tools.avrdude1
the trick is that we remove switch "-Uefuse:w:{bootloader.extended_fuses}:m" from "tools.avrdude1.erase.pattern="

#=============================================================================
tools.avrdude1.cmd.path={runtime.ide.path}/hardware/tools/avr/bin/avrdude
tools.avrdude1.config.path={runtime.ide.path}/hardware/tools/avr/etc/avrdude.conf
tools.avrdude1.cmd.path.linux={runtime.ide.path}/hardware/tools/avrdude
tools.avrdude1.config.path.linux={runtime.ide.path}/hardware/tools/avrdude.conf

tools.avrdude1.upload.params.verbose=-v -v -v -v
tools.avrdude1.upload.params.quiet=-q -q
tools.avrdude1.upload.pattern="{cmd.path}" "-C{config.path}" {upload.verbose} -p{build.mcu} -c{upload.protocol} -P{serial.port} -b{upload.speed} -D "-Uflash:w:{build.path}/{build.project_name}.hex:i"

tools.avrdude1.program.params.verbose=-v -v -v -v
tools.avrdude1.program.params.quiet=-q -q
tools.avrdude1.program.pattern="{cmd.path}" "-C{config.path}" {program.verbose} -p{build.mcu} -c{protocol} {program.extra_params} "-Uflash:w:{build.path}/{build.project_name}.hex:i"

tools.avrdude1.erase.params.verbose=-v -v -v -v
tools.avrdude1.erase.params.quiet=-q -q

#this line was edited
tools.avrdude1.erase.pattern="{cmd.path}" "-C{config.path}" {erase.verbose} -p{build.mcu} -c{protocol} {program.extra_params} -e -Ulock:w:{bootloader.unlock_bits}:m -Uhfuse:w:{bootloader.high_fuses}:m -Ulfuse:w:{bootloader.low_fuses}:m

tools.avrdude1.bootloader.params.verbose=-v -v -v -v
tools.avrdude1.bootloader.params.quiet=-q -q
tools.avrdude1.bootloader.pattern="{cmd.path}" "-C{config.path}" {bootloader.verbose} -p{build.mcu} -c{protocol} {program.extra_params} "-Uflash:w:{runtime.ide.path}/hardware/arduino/avr/bootloaders/{bootloader.file}:i" -Ulock:w:{bootloader.lock_bits}:m
#==============================================================================

Here is an example of the use of the tool avrdude1 in boards.txt file

atmega8.name=ATmega8 OPTIBOOT
atmega8.upload.protocol=arduino
atmega8.upload.maximum_size=7168
atmega8.upload.speed=115200
atmega8.upload.tool=avrdude1
atmega8.bootloader.low_fuses=0xbf
atmega8.bootloader.high_fuses=0xCC
atmega8.bootloader.path=atmega8
atmega8.bootloader.file=optiboot/optiboot_atmega8.hex
atmega8.bootloader.unlock_bits=0x3F
atmega8.bootloader.lock_bits=0x0F
atmega8.bootloader.tool=avrdude1
atmega8.build.mcu=atmega8
atmega8.build.f_cpu=16000000L
atmega8.build.core=arduino
atmega8.build.variant=standard

answered Nov 25, 2015 at 13:10

brtiberio's user avatar

brtiberiobrtiberio

9265 silver badges15 bronze badges

4

I used Programmer «AVRUPro+» for Uploading Program. I downloaded its Software «Progisp» Then I did some few steps….

1) After downloading it, Run the Progisp.exe file.
2) Then went to Command tab, and clicked “Program Fuse”, It just did my fuse set.
3)Then I just did the simple process of burning the bootloader to my Atmega Controller.
4)After this I was able to upload my program to my new Atmega Controller.

Thank you

answered Nov 27, 2015 at 12:10

Nik's user avatar

jajanio

Идет загрузка
Загрузка

17.11.2019

3632

Здравствуйте . Помогите пожалуйста советом. Проблема такая . При попытке записать загрузчик выходит ошибка ;avrdude: warning: cannot set sck period. please check for usbasp firmware update.

avrdude: error: program enable: target doesn’t answer. 1

avrdude: initialization failed, rc=-1

         Double check connections and try again, or use -F to override

         this check.

В чем может быть проблема и как возможно ее решить ? 

В диспетчере устройств Asp отображается, но записать не хочет .

Ответы на вопросы

Популярные вопросы

3D printer VALLY TODAY Нужно ли вносить исправления?

PENGUINI

Идет загрузка
Загрузка

09.01.2023

501

Доброго времени суток всем кто первый раз натыкается на меня и тем кто устал уже подсказвать)По вашим советам(которых к слову было ооочень много) созд…

Принтер сжигает блоки питания

Гав2017

Идет загрузка
Загрузка

15.01.2023

514

Всем привет. У меня anet E2. Не понятно с чего, начал жечь блоки питания. Умирают они с хлопком. Что именно в них горит, пока не смотрел. происходит в…

нужна консультация

sanya6530

Идет загрузка
Загрузка

29.05.2016

13129

Решаю купить принтер, думаю но пока не решил какую выбрать конструкцию. На али нашел вот такой вариант ru.aliexpress.com/item/2016-Newest-TEVO-Tarant…

Читайте в блогах

0 0 голоса
Рейтинг статьи
Подписаться
Уведомить о
guest

0 комментариев
Старые
Новые Популярные
Межтекстовые Отзывы
Посмотреть все комментарии

А вот еще интересные материалы:

  • Яшка сломя голову остановился исправьте ошибки
  • Ясность цели позволяет целеустремленно добиваться намеченного исправьте ошибки
  • Ясность цели позволяет целеустремленно добиваться намеченного где ошибка
  • Ошибка при запросе к удаленному справочнику на госуслугах
  • Ошибка при запуске ableton live