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

Offline

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

Доброго времени суток, уважаемые.

Решил залить альтернативный загрузчик в Pro mini 3.3в чтобы работала на 1МГц и 1.8в.

Столкнулся с ошибкой:

avrdude: stk500_getsync() attempt 1 of 10: not in sync: resp=0x66

avrdude: stk500_getsync() attempt 2 of 10: not in sync: resp=0x03

avrdude: stk500_getsync() attempt 3 of 10: not in sync: resp=0x66

avrdude: stk500_getsync() attempt 4 of 10: not in sync: resp=0x03

avrdude: stk500_getsync() attempt 5 of 10: not in sync: resp=0x66

avrdude: stk500_getsync() attempt 6 of 10: not in sync: resp=0x03

avrdude: stk500_getsync() attempt 7 of 10: not in sync: resp=0x66

avrdude: stk500_getsync() attempt 8 of 10: not in sync: resp=0x03

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

avrdude: stk500_getsync() attempt 9 of 10: not in sync: resp=0x66

avrdude: stk500_getsync() attempt 10 of 10: not in sync: resp=0x03

Подскажите куда копать.

Если уже было, буду благодарен за ссылку. Сам не нашел на форуме.

Arduino Pro MiniArduino Pro Mini весьма привлекательная плата из семейства Ардуино в первую очередь маленькими габаритами и ценой.

Например на АЛИ можно купить ее меньше чем за $2

Зачем перезаписывать загрузчик

  1. Если загрузчик «слетел» и плата не прошивается. Выдает всегда: «avrdude: stk500_recv(): programmer is not responding».
  2. Если вы решили разобраться со сторожевым таймером, как в этой статье, и использовать для этого OPTIBOOT.
  3. Если нужно переустановить ФЬЮЗ-биты, например, как в моем случае, отключить контроль напряжения питания для того чтобы запитать плату от 3.3В
  4. Или же вы решили совсем убрать загрузчик с целью экономии памяти и увеличения скорости загрузки, тогда вместо загрузчика заливается ваша программа по нулевому адресу.

002

Что для этого нужно

  • Недорогой программатор USBASP
  • Стандартные проводочки для подключения модулей к платам Arduino
  • Драйвер USBASP (если программировать по Windows)
  • Среда разработки Arduino IDE

Подключение

Все Arduino имеющие 6-пиновый IСSP разъем подключаются к программатору через такой переходник

Arduino Pro Mini ICSP на плате не имеет, поэтому подключаем проводками по следующей схеме

Схема подключения

Подключаем программатор к USB компьютера, устанавливаем драйвер USBAsp (если он еще не установлен) и запускам среду Arduino IDE

Прошивка Arduino Pro Mini

Выбираем тип программатора USBASP

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

Выбираем тип контроллера. Если мы хотим просто восстановить загрузчик — выбираем Arduino Pro Mini 5В (или 3.3В в зависимости от платы). Если нам нужен OPTIBOOT без лишней головной боли — выбираем Arduino UNO

Выбор контроллера

Затем жмем «Записать загрузчик»

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

Если все подключено и настроено правильно, то программатор довольно долго мигает лампочками.

Настройка параметров загрузчика

Последнее время применяю Aduino Pro Mini 5В с модулями NRF24L01+, требующих для питания 3.3В. Для питания таких плат от низкого напряжения нужно отключить во фьюзах контроль напряжения питания. Для этого открываем файл c:\Program Files (x86)\Arduino\hardware\arduino\boards.txt и прописываем в нем характеристики желаемой прошивки:

atmega328_16.name=Atmega328_16 (3.3V, 16 MHz external)

atmega328_16.upload.protocol=arduino

atmega328_16.upload.maximum_size=32256

atmega328_16.upload.speed=115200

atmega328_16.bootloader.low_fuses=0xff

atmega328_16.bootloader.high_fuses=0xde

atmega328_16.bootloader.extended_fuses=0x07

atmega328_16.bootloader.path=optiboot

atmega328_16.bootloader.file=optiboot_atmega328.hex

atmega328_16.bootloader.unlock_bits=0x3F

atmega328_16.bootloader.lock_bits=0x0F

atmega328_16.build.mcu=atmega328p

atmega328_16.build.f_cpu=16000000L

atmega328_16.build.core=arduino

atmega328_16.build.variant=standard

После этого шьем выбираем тип контроллера «Atmega328_16 (3.3V, 16 MHz external)» и пишем загрузчик.

Программируя «перешитый» Arduino Pro Mini через стандартный порт не нужно забывать устанавливать нужный тип контроллера

Вы можете оставить отзыв или трекбек со своего сайта.

Цитата
Сообщение от яверт

Ну я незнаю какая у тебя ось. В никсах наверное всё же /div/ttyUSB0

Вот что вывело:

avrdude: Version 6.3, sompitid on Nov 6 2016 at 21:45:03
Copyright (c) 2000-2005 Brian Dean, http://www.bdmicro.som/
Copyright (c) 2007-2014 Joirg Wunsch

System wide confikurotion file is «/etc/avrdude.conf»
User confikurotion file is «/root/.avrduderc»
User confikurotion file does not exist or is not a regular file, skipping

Using Port : /div/ttyUSB0
Using Prokrammer : avrysp
Overriding Baud Rate : 19200
AVR Part : ATmego328P
Shyp Erase delay : 9000 us
PAGEL : PD7
BS2 : PC2
RESIT dysposition : didicated
RETRY putsi : SCK
serial program mode : yes
parallel program mode : yes
Timeout : 200
StabDelay : 100
CmdixiDelay : 25
SyncLoops : 32
ByteDelay : 0
PollIndex : 3
PollValue : 0x53
Memory Detail :

Block Poll Page Poltid
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
ftosh 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
cotybration 0 0 0 0 no 1 0 0 0 0 0x00 0x00
syknature 0 0 0 0 no 3 0 0 0 0 0x00 0x00

Prokrammer Type : STK500
Dessription : Atmel AVR ISP
Hordware Version: 2
Firmware Version: 1.18
Topcard : Unknown
Vtarget : 0.0 V
Varef : 0.0 V
Oscillator : Off
SCK period : 0.1 us

avrdude: AVR divice initiotyzed omd ready to accept instructions

Reodyng | ################################################## | 100% 0.02s

avrdude: Device syknature = 0x1e950f (probably m328p)
avrdude: safemode: hfuse reads as DA
avrdude: safemode: efuse reads as FD

avrdude: safemode: hfuse reads as DA
avrdude: safemode: efuse reads as FD
avrdude: safemode: Fuses OK (E:FD, H:DA, L:FF)

avrdude done. Thank you.

Бывает так, что вы сломали bootloader у своей Arduino. Например, перезаписали его своей программой или просто попортили. При попытке залить в плату новую программу через USB-converter, аплоад зависает и вылезает вот такая ошибка:

avrdude: stk500_recv(): programmer is not responding

Не стоит выкидывать Arduino, сейчас мы разберемся, как это поправить.

Подключаем внешний программатор

Сердце Arduino pro mini — это Atmega328, и, естественно этот микроконтроллер поддерживает ICSP — внутрисхемное программирование по SPI-интерфейсу. Мы можем взять любой программатор для AVR, например, дешевый USBasp, и залить bootloader в память с его помощью.

Подключим линии VCC, GND, SCK, RST, MISO и MOSI нашего программатора к Arduino, как показано на рисунке:

Получается вот такое чудо техники:

Шаманим в Arduino IDE

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

Для начала правильно выберем борду из списка:

Теперь выберем программатор:

И нажмем волшебную кнопку Burn Bootloader:

Появится сообщение «Burning bootloader to I/O board (this may take a minute…)», а потом «Done burning bootloader».

Если этого не произошло, проверьте, правильно ли вы подсоединили программатор к Arduino mini и определился ли он операционной системой. 

  1. Доброго времени суток, уважаемые.

    Решил залить альтернативный загрузчик в Pro mini 3.3в чтобы работала на 1МГц и 1.8в.
    В качестве загрузчика программатора Arduino ISP.

    Столкнулся с ошибкой:

    Подскажите куда копать.

    Если уже было, буду благодарен за ссылку. Сам не нашел на форуме.

  2. Интересная у вас Про Мини, насколько я видел на своей про мини, там кварц стоит на 16Мгерц. Как вы ее собираетесь прошивать на 1МГц не выпаивая кварца? Что за плата, дайте ссылку и схема не помешала бы.

  3. Pro mini 8мгц atmega328p — абсолютно обычная.
    Честно говоря, я не знаю какой у нее генератор, внутренний или внешний.
    Но тем не менее с соответствующими фьюзами под внутренний все работает.
    Там есть параметр делить частоту на 8 — получаем 1мгц.

    Калькулятор фьюзов: http://www.engbedded.com/fusecalc/

    С момента размещения данного поста, я уже кучу всего проделал.

    И в данный момент у меня есть Pro mini 1мгц с загрузчиком optiboot.
    Но проблема в том, что IDE при компиляции выдает ошибку:

    Конфиг:

Понравилась статья? Поделить с друзьями:
  • Ошибка при вызове метода контекста переместить файл
  • Ошибка при записи к врачу через госуслуги
  • Ошибка при вызове метода контекста перейтипонавигационнойссылке
  • Ошибка при записи загрузчика atmega328p
  • Ошибка при записи файла corel