Ошибка avrdude: verification error

moonlight1
Offline
Зарегистрирован: 18.03.2016
Добрый день. Имеется Arduino nano v3 HC340. Столкнулся с такой проблемой что не могу залить не один скетч, ни новый, ни из ранее созданных и ранее работавших. При заливании под конец выдает такую ошибку:
"avrdude: verification error, first mismatch at byte 0x0000
0xff != 0x0c
avrdude: verification error; content mismatch"
Для проверки использовал простой скетч для мигания встроенного светодиода на 13 пине.
int ledPin = 13;

void setup() {
  // put your setup code here, to run once:
  pinMode(ledPin, OUTPUT);
}

void loop() {
  // put your main code here, to run repeatedly:
  digitalWrite(ledPin, HIGH);
  delay(500);
  digitalWrite(ledPin, LOW);
  delay(500);
}

Еще вчера ардуина работала, а сегодня вдруг перестала. Теперь при подключении к ПК постоянно мигает встроенные светодиод на 13 пине.

Скрин скетча и лога с ошибкой:
 
Первым делом был конечно гугл и он сказал что возможно что-то с загрузчиком, предлагал перепрошить, но выдавал примеры только для pro-mini а для nano нет. У меня есть программатор USBasp но как прошить с помощью него загрузчик nano я не нашел и не стал рисковать, решил написать сюда и ждать может скажете чего.
P.s. менял провода и usb порты, все бестолку...
Valera19701
Valera19701 аватар
Offline
Зарегистрирован: 18.10.2015

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

moonlight1
Offline
Зарегистрирован: 18.03.2016

Valera19701 пишет:

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

так вроде все понял, спасибо.

**upd.**

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

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.
 
Ошибка при записи загрузчика.
 
Этот отчёт будет иметь больше информации с
включенной опцией Файл -> Настройки ->
"Показать подробный вывод во время компиляции"
 
 

Подключил вроде все как надо в соответствии с этими данными:

как-то так

Собственно как я понял, надо обновить прошивку на программаторе? Но как это сделать не имея нечего кроме самого программатора я чето не вкурил, хотя гугл юзал... у меня ардуина которая не может залить в себя скетч, следовательно ее не получится использовать для прошивки программатора...

Valera19701
Valera19701 аватар
Offline
Зарегистрирован: 18.10.2015

лучше прямо на пины подключайте, а то у меня на нане другой расклад на 6 пиновом разъеме, чем у вас на рисунке, на usbasp такой же

на эту ошибку не обращайте внимание "avrdude: warning: cannot set sck period. please check for usbasp firmware update.",

moonlight1
Offline
Зарегистрирован: 18.03.2016

Valera19701 пишет:

лучше прямо на пины подключайте, а то у меня на нане другой расклад на 6 пиновом разъеме, чем у вас на рисунке, на usbasp такой же

на эту ошибку не обращайте внимание "avrdude: warning: cannot set sck period. please check for usbasp firmware update.",

А я ведь сначала подумал что надо на пины, но потом перечитал про 6ти контактный разъем и не стал уточнять :D хотя перед этим нарисовал схему тк были вопросы:

1) какой reset выбрать, на стороне A или на стороне D пинов? я склоняюсь к ресету на стороне питания, но лучше уточнить.

2) какую землю выбрать, на программаторе это предпоследняя определил опытным путем, а вот какая на плате опять такие со стороны A или со стороны D пинов? хотя тут вроде логично землю выбрать рядом в +5v но на всякий случай лучше спрашиваю.

Valera19701
Valera19701 аватар
Offline
Зарегистрирован: 18.10.2015

земля без разницы на usbasp 8  или 10, делайте как нарисовали

moonlight1
Offline
Зарегистрирован: 18.03.2016

А reset? тоже без разницы?

и земля на ардуинке же их две какую выбрать точнее?

Valera19701
Valera19701 аватар
Offline
Зарегистрирован: 18.10.2015

все без разницы, куда удобнее туда и подключайте

moonlight1
Offline
Зарегистрирован: 18.03.2016

не вышло, та же самая ошибка

 

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.
 
Ошибка при записи загрузчика.
 
Этот отчёт будет иметь больше информации с
включенной опцией Файл -> Настройки ->
"Показать подробный вывод во время компиляции"
 
Valera19701
Valera19701 аватар
Offline
Зарегистрирован: 18.10.2015

moonlight1 пишет:

не вышло, та же самая ошибка

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

значит пробовать так, с командной строки

moonlight1
Offline
Зарегистрирован: 18.03.2016

Valera19701 пишет:

значит пробовать так, с командной строки

А это как? можно инструкцию для нуба?)

Я пробовал типо такого, но не смог запустить)

"C:\Program Files (x86)\Arduino\hardware/tools/avr/bin/avrdude -CC:\Program Files (x86)\Arduino\hardware/tools/avr/etc/avrdude.conf -v -v -v -v -patmega328p -cusbtiny -Uflash:w:C:\Program Files (x86)\Arduino\hardware\arduino\avr\bootloaders\optiboot\optiboot_atmega328.hex:i -Ulock:w:0x0F:m"

 

Valera19701
Valera19701 аватар
Offline
Зарегистрирован: 18.10.2015

в нете полно , лучше всего IDE положить на диск с в корень, пути короче будут, и шить этот файл "ATmegaBOOT_168_atmega328.hex"

http://forum.easyelectronics.ru/viewtopic.php?p=291893

moonlight1
Offline
Зарегистрирован: 18.03.2016

Такое выдало и снова неудача =\

Microsoft Windows [Version 6.1.7601]
(c) Корпорация Майкрософт (Microsoft Corp.), 2009. Все права защищены.

C:\Users\admin>C:\Arduino\hardware/tools/avr/bin/avrdude -CC:\Arduino\hardware/t
ools/avr/etc/avrdude.conf -v -v -v -v -patmega328p -cusbasp -Uflash:w:C:\Arduino
\hardware\arduino\avr\bootloaders\atmega\ATmegaBOOT_168_atmega328.hex:i -Ulock:w
:0x0F:m

avrdude: Version 6.0.1, compiled on Apr 15 2015 at 19:59:58
         Copyright (c) 2000-2005 Brian Dean, http://www.bdmicro.com/
         Copyright (c) 2007-2009 Joerg Wunsch

         System wide configuration file is "C:\Arduino\hardware/tools/avr/etc/av
rdude.conf"

         Using Port                    : usb
         Using Programmer              : usbasp
avrdude: usbasp_open("usb")
avrdude: seen device from vendor ->www.fischl.de<-
avrdude: seen product ->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  Max
W   ReadBack
           ----------- ---- ----- ----- ---- ------ ------ ---- ------ ----- ---
-- ---------
           eeprom        65    20     4    0 no       1024    4      0  3600  36
00 0xff 0xff
                                  Block Poll               Page
      Polled
           Memory Type Mode Delay Size  Indx Paged  Size   Size #Pages MinW  Max
W   ReadBack
           ----------- ---- ----- ----- ---- ------ ------ ---- ------ ----- ---
-- ---------
           flash         65     6   128    0 yes     32768  128    256  4500  45
00 0xff 0xff
                                  Block Poll               Page
      Polled
           Memory Type Mode Delay Size  Indx Paged  Size   Size #Pages MinW  Max
W   ReadBack
           ----------- ---- ----- ----- ---- ------ ------ ---- ------ ----- ---
-- ---------
           lfuse          0     0     0    0 no          1    0      0  4500  45
00 0x00 0x00
                                  Block Poll               Page
      Polled
           Memory Type Mode Delay Size  Indx Paged  Size   Size #Pages MinW  Max
W   ReadBack
           ----------- ---- ----- ----- ---- ------ ------ ---- ------ ----- ---
-- ---------
           hfuse          0     0     0    0 no          1    0      0  4500  45
00 0x00 0x00
                                  Block Poll               Page
      Polled
           Memory Type Mode Delay Size  Indx Paged  Size   Size #Pages MinW  Max
W   ReadBack
           ----------- ---- ----- ----- ---- ------ ------ ---- ------ ----- ---
-- ---------
           efuse          0     0     0    0 no          1    0      0  4500  45
00 0x00 0x00
                                  Block Poll               Page
      Polled
           Memory Type Mode Delay Size  Indx Paged  Size   Size #Pages MinW  Max
W   ReadBack
           ----------- ---- ----- ----- ---- ------ ------ ---- ------ ----- ---
-- ---------
           lock           0     0     0    0 no          1    0      0  4500  45
00 0x00 0x00
                                  Block Poll               Page
      Polled
           Memory Type Mode Delay Size  Indx Paged  Size   Size #Pages MinW  Max
W   ReadBack
           ----------- ---- ----- ----- ---- ------ ------ ---- ------ ----- ---
-- ---------
           calibration    0     0     0    0 no          1    0      0     0
 0 0x00 0x00
                                  Block Poll               Page
      Polled
           Memory Type Mode Delay Size  Indx Paged  Size   Size #Pages MinW  Max
W   ReadBack
           ----------- ---- ----- ----- ---- ------ ------ ---- ------ ----- ---
-- ---------
           signature      0     0     0    0 no          3    0      0     0
 0 0x00 0x00

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

avrdude: usbasp_initialize()
avrdude: usbasp_transmit("USBASP_FUNC_GETCAPABILITIES", 0x00, 0x00, 0x00, 0x00)
avrdude: usbasp_spi_set_sck_period(0)
avrdude: auto set sck period (because given equals null)
avrdude: usbasp_transmit("USBASP_FUNC_SETISPSCK", 0x00, 0x00, 0x00, 0x00)
avrdude: warning: cannot set sck period. please check for usbasp firmware update
.
avrdude: usbasp_transmit("USBASP_FUNC_CONNECT", 0x00, 0x00, 0x00, 0x00)
avrdude: usbasp_program_enable()
avrdude: usbasp_transmit("USBASP_FUNC_ENABLEPROG", 0x00, 0x00, 0x00, 0x00)
         <= [01]
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.

avrdude: usbasp_close()
avrdude: usbasp_transmit("USBASP_FUNC_DISCONNECT", 0x00, 0x00, 0x00, 0x00)

avrdude done.  Thank you.

 

Sherzod
Offline
Зарегистрирован: 17.04.2016

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

avrdude: verification error, first mismatch at byte 0x0000
         0xff != 0x0c
avrdude: verification error; content mismatch
Подозреваю либо слетел загрузчик, либо какой то деталь сгорел, так как при подключении ардуино в 12в блок питание сильно грелся разъем подключение питание.
 
Сначала пробовал по этой статье. Русская версия тут. Выходит ошибка:
 ***failed;  
avrdude: verification error, first mismatch at byte 0x0000
         0xff != 0x05
avrdude: verification error; content mismatch
Ошибка при записи загрузчика.
 

Может ошибка не в загрузчике. Но все таки решился на вариант с Parallel Programmer. Все сделал как тут. Теперь выдает ошибку:

avrdude: AVR device not responding
avrdude: initialization failed, rc=-1
avrdude: Expected signature for ATmega328P is 1E 95 0F
Найден неправильный микроконтроллер. Вы указали правильную плату в меню Инструменты -> Плата?

Хотя плата выбрана Ардуино Уно. А чип менять не знаю как. Вроде ATmega328P и должен быть.

 
Может ошибка 0xff != 0x0c вовсе не означает что проблема с загрузчиком. Может сгорел какой нибудь деталь? Что посоветуете?
saa-74
Offline
Зарегистрирован: 24.09.2017

Ура! Ты прав, через ардуино уно не получается.

saa-74
Offline
Зарегистрирован: 24.09.2017

Ура, все получилось, через ардуино уно нет.