Ошибка при загрузке скетча
- Войдите на сайт для отправки комментариев
Ср, 01/04/2020 - 00:22
Всем доброго времени суток. Имеется китайская Arduino Nano с чипом Atmel M328P U-CN. Подпаял к D13 через резистор 220 Ом и GND светодиод. Подключаю через провод mini-USB (5-контактов). Поставил для нее драйвер (CH341SER, 3.3.2011.11). Версия IDE - 1.8.12. ОС - Win 10 PRO. В IDE выбрал порт, на который ее винда повесила, плату Нано, Чип - ATMega328P (old bootloader, скорость 57600). Пробую залить скетч:
void setup() {
// put your setup code here, to run once:
pinMode(13, OUTPUT);
}
void loop() {
// put your main code here, to run repeatedly:
digitalWrite(13, HIGH);
delay(300);
digitalWrite(13, LOW);
delay(1000);
}На что получаю следующее:
Скетч использует 932 байт (3%) памяти устройства. Всего доступно 30720 байт.
Глобальные переменные используют 9 байт (0%) динамической памяти, оставляя 2039 байт для локальных переменных. Максимум: 2048 байт.
C:\Program Files (x86)\Arduino\hardware\tools\avr/bin/avrdude -CC:\Program Files (x86)\Arduino\hardware\tools\avr/etc/avrdude.conf -v -patmega328p -carduino -PCOM3 -b57600 -D -Uflash:w:C:\Users\A4F7~1\AppData\Local\Temp\arduino_build_246975/sketch_mar31a.ino.hex:i
avrdude: Version 6.3-20190619
Copyright (c) 2000-2005 Brian Dean, http://www.bdmicro.com/
Copyright (c) 2007-2014 Joerg Wunsch
System wide configuration file is "C:\Program Files (x86)\Arduino\hardware\tools\avr/etc/avrdude.conf"
Using Port : COM3
Using Programmer : arduino
Overriding Baud Rate : 57600
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 : Arduino
Description : Arduino
Hardware Version: 2
Firmware Version: 1.16
Vtarget : 0.0 V
Varef : 0.0 V
Oscillator : Off
SCK period : 0.1 us
avrdude: AVR device initialized and ready to accept instructions
Reading | ################################################## | 100% 0.00s
avrdude: Device signature = 0x1e950f (probably m328p)
avrdude: reading input file "C:\Users\A4F7~1\AppData\Local\Temp\arduino_build_246975/sketch_mar31a.ino.hex"
avrdude: writing flash (932 bytes):
Writing | ################################################## | 100% 0.29s
avrdude: 932 bytes of flash written
avrdude: verifying flash memory against C:\Users\A4F7~1\AppData\Local\Temp\arduino_build_246975/sketch_mar31a.ino.hex:
avrdude: load data flash data from input file C:\Users\A4F7~1\AppData\Local\Temp\arduino_build_246975/sketch_mar31a.ino.hex:
avrdude: input file C:\Users\A4F7~1\AppData\Local\Temp\arduino_build_246975/sketch_mar31a.ino.hex contains 932 bytes
avrdude: reading on-chip flash data:
Reading | avrdude: stk500_recv(): programmer is not responding
######avrdude: stk500_recv(): programmer is not responding
avr_read(): error reading address 0x0000
read operation not supported for memory "flash"
avrdude: failed to read all of flash memory, rc=-2
avrdude: stk500_recv(): programmer is not responding
avrdude done. Thank you.
выбранный последовательный порт
не существует или плата не подключена к нему
Скетч он, и правда, заливает - ардуинка начинает мигать светодиодом на D13 и, почему-то светодиодом L (мигают в такт). Но почему возникает ошибка при обратном чтении...
ардуинка начинает мигать светодиодом на D13 и, почему-то светодиодом L (мигают в такт).
Так и должно быть, потому что светодиод L подпаян к D13. Свой можно было не паять.
Но почему возникает ошибка при обратном чтении...
Попробуйте поставить более старую версию IDE, например 1.8.5
Сделал - не помогает. Результат - тот же.
порт выбери правильный. и программатор.
порт выбери правильный. и программатор.
Если бы порт был выбран неправильно, прошивка бы не загрузилась. А у него ошибка при верификации после загрузки, флеш не считывается. А выбор программатора вообще не при чём, он же не через ISP прошивает.
Да, я с утра невнимателен. Смутило упоминание неверного порта и stk500 в выдаче
Есть ощущение, что он перезагружается сразу после записи скетча в него, поэтому IDE не может сделать верификацию. Да, не написал, что usb-преобразователь на моей китайской Arduino - CH340C. В чем может быть проблема?
Какая-то странность. Я обновил дрова для до последних с сайта wch-ic.com - сначала не помогло. Но когда стал заливать скетч, в который сам внес поправки (да, до этого я заливал копипасты с просторов - учусь еще) - все заработало. Всем откликнувшимся спасибо.