Обсуждаем контроллеры компании Atmel.
Ответить

Re: помогите востановить загрузчик на nano 168pa

Ср янв 08, 2020 14:25:48

если я правельно понял то прошив нано через minyCore на 20 мгц то она будет работать всегда на 20 мгц

При установленном на плате кварце 16 МГц, МК не может физически тактироваться на частоте 20 МГц. У ардуины фьюзы не меняют, а значит и тактовая частота остаётся неизменной.


НЕВЕРНОЕ СУЖДЕНИЕ.
В "сторонних платформах" фузы таки меняются под установленную в окне
инструменты -> плата....
конфигурацию...

В каком месте неверное суждение? :roll: Биты фюзов отвечающие за частотный диапазон тактирования МК у ардуины выбран от внешнего кварца с частотой более 8 МГц… означающие, что тактовая частота МК будет зависеть от установленного на плате кварца. Который в подавляющем большинстве установлен на 16 МГц. Так с какой частотой будет тактироваться МК при данном кварце? И если Вам понадобится тактовая частота 20 МГц, изменение фьюзов Вам поможет этого добиться? Уверен что нет.

Re: помогите востановить загрузчик на nano 168pa

Ср янв 08, 2020 14:28:48

а оно ваше на 20 и выще заведетца? чето гложут сомнения что если ДА не каждый кристал...

Добавлено after 1 minute 2 seconds:
пс гдето видел вариант кода под 48... не помню где...

Re: помогите востановить загрузчик на nano 168pa

Ср янв 08, 2020 14:33:31

Оно не моё… если Вы читали внимательно все посты… или Вам не важно…

Что касается 20 МГц… для МК меги48…328 при такой частоте необходимо напряжение питания не менее 4,5 В.
Последний раз редактировалось Самсусамыч Ср янв 08, 2020 14:39:57, всего редактировалось 1 раз.

Re: помогите востановить загрузчик на nano 168pa

Ср янв 08, 2020 14:39:12

Самсусамыч
Имелось ввиду, что при компиляции необходимая переустановка фузов добавляется автоматически.
Т.е. дополнительно вручную ничего делать не требуется.
Как оно там устроено - Х/З.
Скорее всего на основе тех же SPM команд.
:dont_know:

musor
У адуринки весьма распространенный "фокус" когда один и тот же исходник для разных платформ компилируется в различный по размерам код.
Зависит и от авторов платформы и от опций компилятора, кои в окошке настроек платки устанавливаются.
Так что 3 с хвостом кила для 8й меги превращаются в 4 с хвостом для 48й.
8)
А с 20 мегагерцами вполне работают (ежли таковой кварц по даташитам полагается) - МК он ведь не меняется от того в каком устройстве установлен.
Правда тогда функционал, связанный со временем штатных функций референса IDE МОЖЕТ иметь ограничения...
:roll:

Re: помогите востановить загрузчик на nano 168pa

Ср янв 08, 2020 20:21:32

Di123 писал(а):MiniCore последний из обновлений библиотеки 2,0,3
У вас нормальный установлен.
Di123 писал(а):сначала выдал это
потом это
libusb не установлен.
Давайте попробуем так:
по пути C:\arduino-1.8.1\hardware\tools\avr\bin\ находится avrdude.exe (внимательно смотрите у вас свой путь будет).

В винде есть ПУСК -> Стандартные -> Выполнить , вводите
Код:
cmd
В открывшемся окне "Командная строка" вводите
Код:
cd C:\arduino-1.8.1\hardware\tools\avr\bin\
Теперь вводите
Код:
avrdude.exe -p m168p -c avrisp -b19200 -P COM3 -U calibration:r:calibration.hex:r
Результат сюда.

Добавлено after 5 hours 4 minutes 21 second:
Di123, у вас случайно не Win10?

Чисто ради эксперимента:
Раздобыл вот такой DESKTOP
СпойлерИзображение
Поставил ArduinoIDE последнею, поставил драйвер CH340
СпойлерИзображение
Программатор мне добавить не удалось, но программатор там есть - Arduino as ISP.
На текущий момент мне не удалось загрузить ни чего в контроллер, та же связка нормально работает на Win7-64.

Но самое что интересное - этот DESKTOP вот уже 1,5 часа выключается и ни как не может выключиться, нет не завис, темный экран с мышкой по середине, иногда возле мышки вспыхивает индикатор кружок, упорно мигает жестким диском. Наверное еще с полчаса подожду и выдерну из розетки. Кстати этот DESKTOP тянет World of Tanks.

Завтра еще поковыряюсь, может драйвер CH340 кривой?, на себя не проверял.

Re: помогите востановить загрузчик на nano 168pa

Ср янв 08, 2020 22:07:55

Собственно IDE 1.8.10 устанавливается на виндовс10 без всяких замечаний.
Но... неприемлема на ХР (там последняя стабильно работающая 1.8.9).
Версии от 1.8.6 и более поздние тестировались на 7-ке х32 в полном объёме относительно нанок и про-мини, более ранние еще не на чем тестировать было.
Необходимые драйвера для "штатного" комплекта ставятся при инсталляции автоматически.
Попытка запустить менеджер плат без прямого доступа и интернету обречена на неудачу с матюками.
Кроме прочего после установки платформ "по умолчанию" (и/или обновлений платформ) основной набор программ
попадает в специальный скрытый каталог минимум в 2 раза превышающий объем того, что находится на
C:\Program Files\Arduino
(в более "расширенном" варианте доходит до 5 гигабайт).
Кстати... для максимальной "нафаршированности" при установке IDE надо использовать инсталлятор, а не заархивированный каталог.
А на сайте предлагается два варианта - собственно инсталлятор и каталог в архиве.
Ну и про необходимость интернет он лайн в процессе инсталляции забывать нельзя.
И не забываем про необходимость поддержки нет фрамеворков и java...
8)
В принципе все эти "мелочевки" я в КОТУИНКО уже более детально описывал.
:write:

Re: помогите востановить загрузчик на nano 168pa

Ср янв 08, 2020 22:19:53

BOB51, не важно.
Я ее победил
СпойлерИзображение

Re: помогите востановить загрузчик на nano 168pa

Чт янв 09, 2020 04:38:04

BOB51,
у меня есть две такие загружалки ещё
Изображение
я их для про мини использую

Re: помогите востановить загрузчик на nano 168pa

Чт янв 09, 2020 07:49:20

BOB51, ваш вариант с инсталлятором я постараюсь сегодня проверить, я архив скачивал, и архив распаковал. ArduinoIDE в архивном варианте у меня по прежнему не загружает ни чего, но собирает прошивки. И естественно с подключенным инетом.
Di123 писал(а):у меня есть две такие загружалки ещё
я имел ввиду вот это
СпойлерТолько за место черного шнура подключен адаптер usb-uart на CH340.
Далее платка arduino pro mini на atmega168, в нее загружен скейтч ArduinoISP
Далее по SPI подключена мега328
Изображение

Re: помогите востановить загрузчик на nano 168pa

Чт янв 09, 2020 10:13:07

В таком случае драйвер для USB-COM платки ессно ищем у производителя микросхемы моста (CH340, FT232, PL2303 или СЗ2102) под имеющуюся в наличии операционную систему.
А IDE подключаем к уже установившемуся в системе СОМ порту.
Собственно это уже вариант arduinoISP из платки USB-COM моста и про-мини.
Там вместо "обрезания" достаточно просто отсоединить провод идущий от платки-моста к выводу DTR на про-мини.
Т.Е сначала при полнокомплектном интерфейсе между USB-COM и про-мини заливаем скотч примера из arduinoISP.
Затем выключаем и отсоединяем линию DTR.
Затем включаем уже как программатор.
В результате саму про-мини в дальнейшем можно в любое время без лишнего шаманизма использовать в других проектах (перепрограммировать без восстановления дорожки или отпайки кондея).
8)

Re: помогите востановить загрузчик на nano 168pa

Чт янв 09, 2020 14:42:26

BOB51, вот и проблем ка вырисовалась
СпойлерВыбранный программатор Arduino as ISP
Код:
Arduino: 1.8.10 (Windows 10), Плата:"Arduino Pro or Pro Mini, ATmega328P (5V, 16 MHz)"

Скетч использует 924 байт (3%) памяти устройства. Всего доступно 30720 байт.
Глобальные переменные используют 9 байт (0%) динамической памяти, оставляя 2039 байт для локальных переменных. Максимум: 2048 байт.
C:\arduino-1.8.10\hardware\tools\avr/bin/avrdude -CC:\arduino-1.8.10\hardware\tools\avr/etc/avrdude.conf -v -patmega328p -carduino -PCOM3 -b57600 -D -Uflash:w:C:\Users\628D~1\AppData\Local\Temp\arduino_build_892185/Blink.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:\arduino-1.8.10\hardware\tools\avr/etc/avrdude.conf"

         Using Port                    : COM3
         Using Programmer              : arduino
         Overriding Baud Rate          : 57600
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 1 of 10: not in sync: resp=0x7a
avrdude: stk500_getsync() attempt 2 of 10: not in sync: resp=0x1c
avrdude: stk500_getsync() attempt 3 of 10: not in sync: resp=0x1c
avrdude: stk500_getsync() attempt 4 of 10: not in sync: resp=0x1c
avrdude: stk500_getsync() attempt 5 of 10: not in sync: resp=0x1c
avrdude: stk500_getsync() attempt 6 of 10: not in sync: resp=0x1c
avrdude: stk500_getsync() attempt 7 of 10: not in sync: resp=0x1c
avrdude: stk500_getsync() attempt 8 of 10: not in sync: resp=0x1c
avrdude: stk500_getsync() attempt 9 of 10: not in sync: resp=0x1c
avrdude: stk500_getsync() attempt 10 of 10: not in sync: resp=0x1c

avrdude done.  Thank you.

Произошла ошибка при загрузке скетча
В общем выбираю любой программатор, хоть USBasp, эта Arduino мне вкатывает постоянно один и тот же программер Using Programmer : arduino

Что только не делал, права Администратора, полное разрешение на папку, даже в общий доступ папку с полным разрешение на запись
И кстати, от иснсталлятора я ожидал больше чем вот это
СпойлерИзображение
Кроме как создать ярлык на рабочем столе этот инсталлятор ни чего не сделал. Что архив что инсталлятор - одно и то же.
И драйвера на CH340 в ArduinoIDE к сожалению нет.

Какие будут предложения?

Re: помогите востановить загрузчик на nano 168pa

Чт янв 09, 2020 15:32:55

Дома прокручю на ноуте работу с условно-тестовой прошивкой - отвечу детальнее.
Драйвер для ср340 в комплекте для ардуино-нано ставится IDE автоматически (собственно для целей IDE).
Иначе просто с теми платками, где СН340 установлена (а это и нанка и уно и мега2560 в "удешевленном варианте")
Касательно процесса инсталляции ессно повторно переустанавливать не буду - а как ставил - ...
записей не делал ибо устанавливалось так же как и на ХР без излишних "плясок с бубном" - процесс идет согласно указаниям инсталлятора. Единственно надо было открыть показания show details чтобы ходом процесса полюбоваться.
Насчет "инсталлятор нмичего не сделал"...
После инсталляции необходимо
Перезагрузить IDE
запустить менеджер плат
и провести инсталляцию соответственно выбранных пакетов нажав соответствующую кнопу в правом нижнем углу соответствующего раздела меню.
Процесс тот весьма длительно-неспешный - качает с инета потихоху и затем чего-то творит пока не высветиться "готово".
Работать можно только с теми пакетами у которых справа от названия впечатано зелененькое INSTALLED
В противном случае пакет деактивирован и компиляция не производится.
Автоматически те пакеты (и обновления к ним) НЕ ИНСТАЛЛИРУЮТСЯ.
Разве что при повторном запуске IDE через некоторое время может появится запрос типа "есть обновления... установить?"
(это если не закрыта опция автообновления
файл
настройки
проверять обновления при запуске)
Помимо прочего инсталлятор создает и базовую папку среды и скрытый каталог....
Так что "учим матчасть"...
8)

Re: помогите востановить загрузчик на nano 168pa

Чт янв 09, 2020 18:30:00

BOB51 писал(а):Так что "учим матчасть"...
Точно, признаю свое поражение.
Спойлер
Код:
Скетч использует 924 байт (3%) памяти устройства. Всего доступно 30720 байт.
Глобальные переменные используют 9 байт (0%) динамической памяти, оставляя 2039 байт для локальных переменных. Максимум: 2048 байт.
C:\Users\628D~1\AppData\Local\Arduino15\packages\arduino\tools\avrdude\6.3.0-arduino17/bin/avrdude -CC:\Users\628D~1\AppData\Local\Arduino15\packages\arduino\tools\avrdude\6.3.0-arduino17/etc/avrdude.conf -v -patmega328p -cstk500v1 -PCOM3 -b19200 -Uflash:w:C:\Users\628D~1\AppData\Local\Temp\arduino_build_43635/Blink.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:\Users\628D~1\AppData\Local\Arduino15\packages\arduino\tools\avrdude\6.3.0-arduino17/etc/avrdude.conf"

         Using Port                    : COM3
         Using Programmer              : stk500v1
         Overriding Baud Rate          : 19200
         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 : STK500
         Description     : Atmel STK500 Version 1.x firmware
         Hardware 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 device initialized and ready to accept instructions

Reading | ################################################## | 100% 0.02s

avrdude: Device signature = 0x1e950f (probably m328p)
avrdude: NOTE: "flash" memory has been specified, an erase cycle will be performed
         To disable this feature, specify the -D option.
avrdude: erasing chip
avrdude: reading input file "C:\Users\628D~1\AppData\Local\Temp\arduino_build_43635/Blink.ino.hex"
avrdude: writing flash (924 bytes):

Writing | ################################################## | 100% 1.12s

avrdude: 924 bytes of flash written
avrdude: verifying flash memory against C:\Users\628D~1\AppData\Local\Temp\arduino_build_43635/Blink.ino.hex:
avrdude: load data flash data from input file C:\Users\628D~1\AppData\Local\Temp\arduino_build_43635/Blink.ino.hex:
avrdude: input file C:\Users\628D~1\AppData\Local\Temp\arduino_build_43635/Blink.ino.hex contains 924 bytes
avrdude: reading on-chip flash data:

Reading | ################################################## | 100% 0.61s

avrdude: verifying ...
avrdude: 924 bytes of flash verified

avrdude done.  Thank you.
Осталось проверить программатор usbasp.

Re: помогите востановить загрузчик на nano 168pa

Чт янв 09, 2020 20:15:42

У меня несколько иначе:
взял тест-проект
https://radiokot.ru/forum/viewtopic.php ... 1#p3742521
Собственно шить в нанку интереса небыло - решил поизвращаться...
подсоединил мой адурино ISP с панелькой от старопоньки/STK200 (было ранее изготовлено - зачем терять зазаря - так разводка под хвост от STK200 и появилась)
http://img.radiokot.ru/files/20529/23k27qovcp.jpg
поставил "дежурную мегу8"
http://img.radiokot.ru/files/20529/23k27psr4o.jpg
ткнул все в USB2 порт ноута - там и напружка и ток подходящий...
Запустил ноут, запустил 1.8.10...
Открыл папку проекта...
поставил arduino NG or older
http://img.radiokot.ru/files/20529/23k27kfmua.jpg
запустил тест-компиляцию
по окончании поставил программатор
http://img.radiokot.ru/files/20529/23k27kx9zv.jpg
и запустил прошивку через программатор
http://img.radiokot.ru/files/20529/23k27o84jt.jpg
на железе наблюдаем красивую иллюминацию в процессе работы
http://img.radiokot.ru/files/20529/23k27nd58u.jpg
фотка правда "корявая" - но то не суть важно.
Прошив мегу просмотрел содержимое, для чего запустил комп с ХР, мегу сунул в мою версию SiProgева железа (с той же безнажимной панелькой - польза от единого стиля разводки шлейфа во всех собственных прикладных железяках)
http://img.radiokot.ru/files/20529/23k27mkjav.jpg
запустил avrdudeshell, настроенную на данное железко
http://img.radiokot.ru/files/20529/23k27lgh4a.jpg
выбрал полное считывание и запустил процесс
http://img.radiokot.ru/files/20529/23k27ksrre.jpg
http://img.radiokot.ru/files/20529/23k27jugdr.jpg
ну и результат
начало дампа
http://img.radiokot.ru/files/20529/23k27j9uvc.jpg
и его окончание
http://img.radiokot.ru/files/20529/23k27ifvxk.jpg
:roll:
Так что все вполне работает...
Касательно драйверов под USB-com мосты...
Можно вполне при необходимости и те, что завод-изготовитель предлагает для конкретной операционной системы установить независимо от того, что IDE при установке накидала - конфликтовать вряд-ли будут.
В моих запасниках для ХР имеются точно, а вот на 10ку... как то не заморачивался пока - это больше "читалка-писалка", нежли рабочий комплекс разработки.
8)

Re: помогите востановить загрузчик на nano 168pa

Пт янв 10, 2020 18:48:41

Проверил программатор usbasp
СпойлерИзображение
ArduinoIDE
СпойлерИзображение
Лог Ардуины
Спойлер
Код:
Скетч использует 444 байт (1%) памяти устройства. Всего доступно 30720 байт.
Глобальные переменные используют 9 байт (0%) динамической памяти, оставляя 2039 байт для локальных переменных. Максимум: 2048 байт.
C:\Users\628D~1\AppData\Local\Arduino15\packages\arduino\tools\avrdude\6.3.0-arduino17/bin/avrdude -CC:\Users\628D~1\AppData\Local\Arduino15\packages\arduino\tools\avrdude\6.3.0-arduino17/etc/avrdude.conf -v -patmega328p -cusbasp -Pusb -Uflash:w:C:\Users\628D~1\AppData\Local\Temp\arduino_build_97698/sketch_jan10a.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:\Users\628D~1\AppData\Local\Arduino15\packages\arduino\tools\avrdude\6.3.0-arduino17/etc/avrdude.conf"

         Using Port                    : usb
         Using Programmer              : 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  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 : usbasp
         Description     : USBasp, http://www.fischl.de/usbasp/

avrdude: auto set sck period (because given equals null)
avrdude: AVR device initialized and ready to accept instructions

Reading | ################################################## | 100% 0.01s

avrdude: Device signature = 0x1e950f (probably m328p)
avrdude: NOTE: "flash" memory has been specified, an erase cycle will be performed
         To disable this feature, specify the -D option.
avrdude: erasing chip
avrdude: auto set sck period (because given equals null)
avrdude: reading input file "C:\Users\628D~1\AppData\Local\Temp\arduino_build_97698/sketch_jan10a.ino.hex"
avrdude: writing flash (444 bytes):

Writing | ################################################## | 100% 0.39s

avrdude: 444 bytes of flash written
avrdude: verifying flash memory against C:\Users\628D~1\AppData\Local\Temp\arduino_build_97698/sketch_jan10a.ino.hex:
avrdude: load data flash data from input file C:\Users\628D~1\AppData\Local\Temp\arduino_build_97698/sketch_jan10a.ino.hex:
avrdude: input file C:\Users\628D~1\AppData\Local\Temp\arduino_build_97698/sketch_jan10a.ino.hex contains 444 bytes
avrdude: reading on-chip flash data:

Reading | ################################################## | 100% 0.17s

avrdude: verifying ...
avrdude: 444 bytes of flash verified

avrdude done.  Thank you.
Ну и как же без этого
СпойлерИзображение
Вопрос решен. Дальше меня этот Desctop на Win10 не интересует.

Собрались мы для другого, MiniCore.
Подопытный Atmega328P 20MHz(16MHz нет в наличии) программатор Arduino as ISP
СпойлерИзображение
Жмыкаем "Записать загрузчик".
Лог записи загрузчика
Спойлер
Код:
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:\Users\User\AppData\Local\Arduino15\packages\MiniCore\hardware\avr\2.0.3/avrdude.conf"

         Using Port                    : COM2
         Using Programmer              : stk500v1
         Overriding Baud Rate          : 19200
         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 : STK500
         Description     : Atmel STK500 Version 1.x firmware
         Hardware 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 device initialized and ready to accept instructions

Reading | ################################################## | 100% 0.02s

avrdude: Device signature = 0x1e950f (probably m328p)
avrdude: erasing chip
avrdude: reading input file "0x3f"
avrdude: writing lock (1 bytes):

Writing | ################################################## | 100% 0.01s

avrdude: 1 bytes of lock written
avrdude: verifying lock memory against 0x3f:
avrdude: load data lock data from input file 0x3f:
avrdude: input file 0x3f contains 1 bytes
avrdude: reading on-chip lock data:

Reading | ################################################## | 100% 0.01s

avrdude: verifying ...
avrdude: 1 bytes of lock verified
avrdude: reading input file "0b11111101"
avrdude: writing efuse (1 bytes):

Writing | ################################################## | 100% 0.01s

avrdude: 1 bytes of efuse written
avrdude: verifying efuse memory against 0b11111101:
avrdude: load data efuse data from input file 0b11111101:
avrdude: input file 0b11111101 contains 1 bytes
avrdude: reading on-chip efuse data:

Reading | ################################################## | 100% 0.01s

avrdude: verifying ...
avrdude: 1 bytes of efuse verified
avrdude: reading input file "0xd6"
avrdude: writing hfuse (1 bytes):

Writing | ################################################## | 100% 0.02s

avrdude: 1 bytes of hfuse written
avrdude: verifying hfuse memory against 0xd6:
avrdude: load data hfuse data from input file 0xd6:
avrdude: input file 0xd6 contains 1 bytes
avrdude: reading on-chip hfuse data:

Reading | ################################################## | 100% 0.01s

avrdude: verifying ...
avrdude: 1 bytes of hfuse verified
avrdude: reading input file "0b11110111"
avrdude: writing lfuse (1 bytes):

Writing | ################################################## | 100% 0.03s

avrdude: 1 bytes of lfuse written
avrdude: verifying lfuse memory against 0b11110111:
avrdude: load data lfuse data from input file 0b11110111:
avrdude: input file 0b11110111 contains 1 bytes
avrdude: reading on-chip lfuse data:

Reading | ################################################## | 100% 0.01s

avrdude: verifying ...
avrdude: 1 bytes of lfuse verified

avrdude done.  Thank you.


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:\Users\User\AppData\Local\Arduino15\packages\MiniCore\hardware\avr\2.0.3/avrdude.conf"

         Using Port                    : COM2
         Using Programmer              : stk500v1
         Overriding Baud Rate          : 19200
         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 : STK500
         Description     : Atmel STK500 Version 1.x firmware
         Hardware 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 device initialized and ready to accept instructions

Reading | ################################################## | 100% 0.02s

avrdude: Device signature = 0x1e950f (probably m328p)
avrdude: NOTE: "flash" memory has been specified, an erase cycle will be performed
         To disable this feature, specify the -D option.
avrdude: erasing chip
avrdude: reading input file "C:\Users\User\AppData\Local\Arduino15\packages\MiniCore\hardware\avr\2.0.3/bootloaders/optiboot_flash/bootloaders/atmega328p/20000000L/optiboot_flash_atmega328p_UART0_115200_20000000L.hex"
avrdude: writing flash (32768 bytes):

Writing | ################################################## | 100% 0.00s

avrdude: 32768 bytes of flash written
avrdude: verifying flash memory against C:\Users\User\AppData\Local\Arduino15\packages\MiniCore\hardware\avr\2.0.3/bootloaders/optiboot_flash/bootloaders/atmega328p/20000000L/optiboot_flash_atmega328p_UART0_115200_20000000L.hex:
avrdude: load data flash data from input file C:\Users\User\AppData\Local\Arduino15\packages\MiniCore\hardware\avr\2.0.3/bootloaders/optiboot_flash/bootloaders/atmega328p/20000000L/optiboot_flash_atmega328p_UART0_115200_20000000L.hex:
avrdude: input file C:\Users\User\AppData\Local\Arduino15\packages\MiniCore\hardware\avr\2.0.3/bootloaders/optiboot_flash/bootloaders/atmega328p/20000000L/optiboot_flash_atmega328p_UART0_115200_20000000L.hex contains 32768 bytes
avrdude: reading on-chip flash data:

Reading | ################################################## | 100% 0.00s

avrdude: verifying ...
avrdude: 32768 bytes of flash verified
avrdude: reading input file "0x0f"
avrdude: writing lock (1 bytes):

Writing | ################################################## | 100% 0.02s

avrdude: 1 bytes of lock written
avrdude: verifying lock memory against 0x0f:
avrdude: load data lock data from input file 0x0f:
avrdude: input file 0x0f contains 1 bytes
avrdude: reading on-chip lock data:

Reading | ################################################## | 100% 0.01s

avrdude: verifying ...
avrdude: 1 bytes of lock verified

avrdude done.  Thank you.
Кому интересно что за фьюзы Ардуина загнала
СпойлерИзображение Изображение

Пробный скейтч
Спойлер
Код:
#include <avr/wdt.h>

void setup() {
  wdt_disable(); // бесполезная строка до которой не доходит выполнение при bootloop
  Serial.begin(9600);
  Serial.println("Setup..");
 
  Serial.println("Wait 5 sec..");
  delay(5000); // Задержка, чтобы было время перепрошить устройство в случае bootloop
  wdt_enable (WDTO_8S); // Для тестов не рекомендуется устанавливать значение менее 8 сек.
  Serial.println("Watchdog enabled.");
}

int timer = 0;

void loop(){
  // Каждую секунду мигаем светодиодом и значение счетчика пишем в Serial
  if(!(millis()%1000)){
    timer++;
    Serial.println(timer);
    digitalWrite(13, digitalRead(13)==1?0:1); delay(1);
  }
//  wdt_reset();
}
для загрузки в подопытного и лог загрузки
Спойлер
Код:
Скетч использует 2842 байт (8%) памяти устройства. Всего доступно 32256 байт.
Глобальные переменные используют 226 байт (11%) динамической памяти, оставляя 1822 байт для локальных переменных. Максимум: 2048 байт.
C:\Users\User\AppData\Local\Arduino15\packages\arduino\tools\avrdude\6.3.0-arduino17/bin/avrdude -CC:\Users\User\AppData\Local\Arduino15\packages\MiniCore\hardware\avr\2.0.3/avrdude.conf -v -patmega328p -carduino -PCOM2 -b115200 -D -Uflash:w:C:\Users\User\AppData\Local\Temp\arduino_build_300420/sketch_jan10b.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:\Users\User\AppData\Local\Arduino15\packages\MiniCore\hardware\avr\2.0.3/avrdude.conf"

         Using Port                    : COM2
         Using Programmer              : arduino
         Overriding Baud Rate          : 115200
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 1 of 10: not in sync: resp=0x52
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 2 of 10: not in sync: resp=0x52
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 3 of 10: not in sync: resp=0x52
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 4 of 10: not in sync: resp=0x52
         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: 3
         Firmware Version: 8.0
         Vtarget         : 0.3 V
         Varef           : 0.3 V
         Oscillator      : 28.800 kHz
         SCK period      : 3.3 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\User\AppData\Local\Temp\arduino_build_300420/sketch_jan10b.ino.hex"
avrdude: writing flash (2842 bytes):

Writing | ################################################## | 100% 0.57s

avrdude: 2842 bytes of flash written
avrdude: verifying flash memory against C:\Users\User\AppData\Local\Temp\arduino_build_300420/sketch_jan10b.ino.hex:
avrdude: load data flash data from input file C:\Users\User\AppData\Local\Temp\arduino_build_300420/sketch_jan10b.ino.hex:
avrdude: input file C:\Users\User\AppData\Local\Temp\arduino_build_300420/sketch_jan10b.ino.hex contains 2842 bytes
avrdude: reading on-chip flash data:

Reading | ################################################## | 100% 0.39s

avrdude: verifying ...
avrdude: 2842 bytes of flash verified

avrdude done.  Thank you.

и демонстрация работы
СпойлерИзображение
ну и конечно как без этого
СпойлерИзображение
и лог
Спойлер
Код:
Cформированная командная строка:
avrdude.exe -p m328p -c arduino -b115200 -P COM2 -U calibration:r:calibration.hex:r
avrdude.exe: AVR device initialized and ready to accept instructions

Reading | ################################################## | 100% 0.00s

avrdude.exe: Device signature = 0x1e950f
avrdude.exe: reading calibration memory:

Reading | ################################################## | 100% 0.02s

avrdude.exe: writing output file "calibration.hex"

avrdude.exe: safemode: Fuses OK (E:00, H:00, L:00)

avrdude.exe done.  Thank you.

Re: помогите востановить загрузчик на nano 168pa

Пт янв 10, 2020 20:37:40

При работе с arduinoISP из самой IDE никаких логов в окнах IDE я не наблюдаю (если не ошибка).
Такая же картинка (исключительно отчет о компиляции белым шрифтом, без предшествующих красных вармингов) в случае "штатных" средств самих платок или того же arduinoISP.
Чего могут выдать иные программаторы - это зависит от того, что при работе будет использовано - при нормальной работе особо не интересует.
Чем меньше мороки с дополнительными настройками - тем лучше для пользователя.
А в этом отношении таки самостоятельное изготовление arduinoISP и работа с ним выполняются значительно проще для начинающего пользователя.
:wink:
В остальном... Для относительно подготовленного любителя принципиально без особой разницы на основе какого спецсофта и какого железа используя ISP протокол установить в МК начальный загрузчик.
В данном смысле (для подготовленного пользователя) определять "лучший вариант" не имеет смысла - лучшее, это то что имеется в наличии и хорошо изучено и проработано в практике использования.
8)

Re: помогите востановить загрузчик на nano 168pa

Пт янв 10, 2020 22:24:42

BOB51 писал(а):При работе с arduinoISP из самой IDE никаких логов в окнах IDE я не наблюдаю (если не ошибка).
Нет, не ошибка, могу повторить если надо.
В настройках IDE включено - Показать подробный вывод - Загрузка. Сообщение компилятора - Ничего.

Меня больше интересовал загрузчик optiboot, я не знал какой протокол используется, вот и было интересно какой IDE подпихнет протокол.
Самое что удивительное этот протокол оказался в avrdude version 6.1-svn-20131205.
Про загрузчик optiboot, скорость 115200 это только для новенького контроллера, в пошарканный контроллер я бы не стал на скорости 115200 грузить. Лучше пере собрать под 19200, чем тише едешь - тем надежней.

Re: помогите востановить загрузчик на nano 168pa

Сб янв 11, 2020 15:34:37

За протоколы отвечает настройка интегрированный в IDE avrdude (вернее, то что записано в соответствующем файле настроек для соответствующей "железячной" приставки).
Собственно та дуда и является основным софтом для режима применения "внешних программаторов".
А вот загрузка через бутлоадер идет уже по протоколу того бутлоадера, что при помощи ISP программатора был предварительно загружен в МК.
Тот лог, что выдан при работе через ISP программатор в режиме "загрузить через программатор" не обязательно соответствует логу при "штатной" загрузке через бутлоадер (через СОМ порт МК).
Что какается самого бутлоадера - там в основе команды самопрограммирования МК.
Как их использовать - все есть в даташитах.
Какой вариант связи с МК - это зависит от возможностей аппаратных средств самого МК и имеющихся в доступности программ обмена с ПК, да от творческого изврата того, кто сии возможности использовать будет.
Собственно большинство пользователей это нюансы не интересуют - ибо интерес представляет КОНЕЧНОЕ УСТРОЙСТВО, создаваемое при помощи имеющихся под руками ПРОСТЫХ В ОБРАЩЕНИИ инструментов.
Это уже не тема топикстартера.
8)

Re: помогите востановить загрузчик на nano 168pa

Пн янв 13, 2020 21:02:21

Меня больше интересовал загрузчик optiboot, я не знал какой протокол используется, вот и было интересно какой IDE подпихнет протокол.
Самое что удивительное этот протокол оказался в avrdude version 6.1-svn-20131205.

Протоколы все посмотреть можно в boards.txt от ардуино. Там все ключи запуска avrdude прописаны. А также сам путь к бутлоадеру что ардуина шьет через свою опцию и фьюзы.
Удивительного ничего нет, протокол arduino давно добавлен в avrdude. И он не меняется. optiboot давно стал родным бутом для большинства ардуин. А даже старый бут ардуиновский тот же протокол использует. optiboot просто быстрее и меньше места жрет. Протокол кстати почти полная копия атмеловского STK500.

На засыпку, если интересно: https://github.com/baerwolf/USBaspLoader
USB Бутлоадер для AVR, эмулирующий программатор USBAsp. Т.е. прошив его в МК, потом можно МК шить сразу по USB через avrdude как будто через USBAsp, только без USBAsp.
Ответить