Ошибка avrdude: verification error
- Войдите на сайт для отправки комментариев
Пт, 18/03/2016 - 10:50
Добрый день. Имеется 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 порты, все бестолку...
подключаете usbasp к nano (разъем на 6 штырьков - mosi(D11), miso(D12), sck(D13), reset, vcc, gnd), выбираете в IDE програматор usbasp, выбираете плату , и жмете записать загрузчик
подключаете usbasp к nano (разъем на 6 штырьков - mosi(D11), miso(D12), sck(D13), reset, vcc, gnd), выбираете в IDE програматор usbasp, выбираете плату , и жмете записать загрузчик
так вроде все понял, спасибо.
**upd.**
сделал как ты сказал но выдает ошибку при нажатии на "записать загрузчик"
Подключил вроде все как надо в соответствии с этими данными:
как-то так
Собственно как я понял, надо обновить прошивку на программаторе? Но как это сделать не имея нечего кроме самого программатора я чето не вкурил, хотя гугл юзал... у меня ардуина которая не может залить в себя скетч, следовательно ее не получится использовать для прошивки программатора...
лучше прямо на пины подключайте, а то у меня на нане другой расклад на 6 пиновом разъеме, чем у вас на рисунке, на usbasp такой же
на эту ошибку не обращайте внимание "avrdude: warning: cannot set sck period. please check for usbasp firmware update.",
лучше прямо на пины подключайте, а то у меня на нане другой расклад на 6 пиновом разъеме, чем у вас на рисунке, на usbasp такой же
на эту ошибку не обращайте внимание "avrdude: warning: cannot set sck period. please check for usbasp firmware update.",
А я ведь сначала подумал что надо на пины, но потом перечитал про 6ти контактный разъем и не стал уточнять :D хотя перед этим нарисовал схему тк были вопросы:
1) какой reset выбрать, на стороне A или на стороне D пинов? я склоняюсь к ресету на стороне питания, но лучше уточнить.
2) какую землю выбрать, на программаторе это предпоследняя определил опытным путем, а вот какая на плате опять такие со стороны A или со стороны D пинов? хотя тут вроде логично землю выбрать рядом в +5v но на всякий случай лучше спрашиваю.
земля без разницы на usbasp 8 или 10, делайте как нарисовали
А reset? тоже без разницы?
и земля на ардуинке же их две какую выбрать точнее?
все без разницы, куда удобнее туда и подключайте
не вышло, та же самая ошибка
не вышло, та же самая ошибка
значит пробовать так, с командной строки
значит пробовать так, с командной строки
А это как? можно инструкцию для нуба?)
Я пробовал типо такого, но не смог запустить)
в нете полно , лучше всего IDE положить на диск с в корень, пути короче будут, и шить этот файл "ATmegaBOOT_168_atmega328.hex"
http://forum.easyelectronics.ru/viewtopic.php?p=291893
Такое выдало и снова неудача =\
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.Точно такая же проблема с ардуинкой уно (китай). Сначала работал нормально, потом при заливки скетча начал выходит ошибка:
avrdude: verification error, first mismatch at byte 0x0000 0xff != 0x0c avrdude: verification error; content mismatch***failed; avrdude: verification error, first mismatch at byte 0x0000 0xff != 0x05 avrdude: verification error; content mismatch Ошибка при записи загрузчика.Может ошибка не в загрузчике. Но все таки решился на вариант с Parallel Programmer. Все сделал как тут. Теперь выдает ошибку:
Хотя плата выбрана Ардуино Уно. А чип менять не знаю как. Вроде ATmega328P и должен быть.
Ура! Ты прав, через ардуино уно не получается.
Ура, все получилось, через ардуино уно нет.