Загрузка загрузчика в ATMEGA328 P

У меня есть Duemilanove, который изначально имел 168. У меня есть несколько чипов ATMEGA328 P, и я вставил один в Duemilanove. Я использую Uno в качестве программатора для Duemilanove. Я использую Arduino 1.8.2 на ПК, который, как я понимаю, не требует установки конденсатора на Uno. Я загрузил скетч, который делает Uno интернет-провайдером, отредактировал файл avrdude.conf, подключил в соответствии с http://www.crash-bang.com/resource/bootload-atmega328/ и руководство на этом сайте. Когда я запускаю загрузчик записи, используя настройки, установленные на подробный, возвращаемая подпись верна для версии P чипа, которую я считаю (0x95 0x14), и это значение, которое я поместил в файл avrdude.conf. Однако avrdude по-прежнему утверждает, что ожидает получения 0x95 0x0F и не будет сжигать загрузчик. Я понятия не имею, откуда оно берет это значение (я даже пробовал редактировать файл iom328p.h...). Есть идеи?

, 👍-1

Обсуждение

Почему вы хотите использовать дуэмиланове? Почему бы не использовать UNO, которая имеет лучшие характеристики и фактически все еще поддерживается?, @MichaelT

Какую плату вы выбрали, чтобы "записать загрузчик"? Насколько я знаю, установка ATMega328 на плату Duemilanove сделает ее (более или менее) идентичной UNO. Итак, выберите UNO на плате и нажмите «Записать загрузчик», должно сработать., @Gerben

У меня была такая же проблема с каким-то автономным проектом 328P. Если вы включите «Показывать подробный вывод во время: загрузки» в меню настроек, вы увидите команду, которую Arduino IDE использует для прошивки вашего устройства — avrdude. Скопируйте его из окна терминала в командную строку и добавьте к нему «-F», чтобы отключить проверку подписи устройства., @towe

@TobiasWeiß отключение проверки устройства не является хорошей практикой, если вы хотите записать данные на чип, и, кроме того, это неэлегантно. Должна быть простая неправильная конфигурация, которую необходимо найти и исправить., @Sim Son


1 ответ


-1

Байты подписи:

ATmega328 0x1E 0x95 0x14

ATmega328P 0x1E 0x95 0x0F

Похоже, у вас неправильные байты для 328P.

,