Стер atmega328pb (Atmega328P U-TH)

Wosh
Offline
Зарегистрирован: 30.04.2022

Ребят, не пинайте.

Есть 4 китайские ардуино нано с чипами atmega328pb

Есть програматоры Usbasp, CH341A, USBtinyISP

В общем суть вопроса. 

Запорол 3 ардуины пока понял в чем дело.

Хотел прошить загрузчик и после этого одна перестала определяться. 

Вторую очистил через avrdude и залил фьюзы по умолчанию - перестала определяться. 

Третью просто очистил  и она так же перестала определяться. вернее на попытке считать например фьюзы выдает такое:

Cформированная командная строка:
avrdude.exe -p m328p -c usbtiny -P usb  -U lock:r:lock.hex:r -U hfuse:r:hfuse.hex:r -U lfuse:r:lfuse.hex:r -U efuse:r:efuse.hex:r


avrdude.exe: AVR device initialized and ready to accept instructions

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

avrdude.exe: Device signature = 0x000000 (retrying)

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

avrdude.exe: Device signature = 0xffff00
avrdude.exe: Expected signature for ATmega328P is 1E 95 16
             Double check chip, or use -F to override this check.

avrdude.exe done.  Thank you.

При этом постоянно меняется строчка:

avrdude.exe: Device signature = 0x00ffff

avrdude.exe: Device signature = 0xff0000

avrdude.exe: Device signature = 0x800000

На всех трех. 

Получается они все пустышки? Можно как то пофиксить теперь?

А то осталась последняя ардуина.

Проги пробовал:

avrdude

AVRDUDESHELL

SinaProg2.1.1

eXtreme Burner - AVR

ну и ардуину иде

Komandir
Komandir аватар
Offline
Зарегистрирован: 18.08.2018

Видимо попутали прямые и инверсные фьюзы.

Wosh
Offline
Зарегистрирован: 30.04.2022

Komandir пишет:

Видимо попутали прямые и инверсные фьюзы.

Использовал прямые. Ну на данный момент это уже не важно так как все три ни считываются ни прошиваются.

Komandir
Komandir аватар
Offline
Зарегистрирован: 18.08.2018

Если запретили общение через ISP, то спасет высоковольтный программатор.

Разрешить внутрисхемное программирование (SPI)

m328p - для PB надо и выбирать m328pb

Wosh
Offline
Зарегистрирован: 30.04.2022

Komandir пишет:

Если запретили общение через ISP, то спасет высоковольтный программатор.

Разрешить внутрисхемное программирование (SPI)


Вытащить пьезоэлемент из зажигалки и пару раз шарахнуть :)?
А если серьезно, можно инструкцию?

Komandir
Komandir аватар
Offline
Зарегистрирован: 18.08.2018
Wosh
Offline
Зарегистрирован: 30.04.2022

Komandir пишет:

m328p - для PB надо и выбирать m328pb

Ну до СТИРАНИЯ все отлично ститывалось.

ua6em
ua6em аватар
Offline
Зарегистрирован: 17.08.2016

установить miniCore, выбрать чип 328PB и будет тебе счастье

avrdude.conf -v -patmega328pb -carduino -PCOM8 -b115200 -D -Uflash:w:C:\TEMP\arduino_build_956171/BlinkWithoutDelay.ino.hex:i

D:\ARDUINO\arduino-1.8.16\portable\packages\arduino\tools\avrdude\6.3.0-arduino18/bin/avrdude -CD:\ARDUINO\arduino-1.8.16\portable\packages\MiniCore\hardware\avr\2.1.3/avrdude.conf -v -patmega328pb -carduino -PCOM8 -b115200 -D -Uflash:w:C:\TEMP\arduino_build_956171/BlinkWithoutDelay.ino.hex:i 

avrdude: Version 6.3-20201216
         Copyright (c) 2000-2005 Brian Dean, <a data-cke-saved-href="http://www.bdmicro.com/" href="http://www.bdmicro.com/" rel="nofollow">http://www.bdmicro.com/</a>
         Copyright (c) 2007-2014 Joerg Wunsch

         System wide configuration file is "D:\ARDUINO\arduino-1.8.16\portable\packages\MiniCore\hardware\avr\2.1.3/avrdude.conf"

         Using Port                    : COM8
         Using Programmer              : arduino
         Overriding Baud Rate          : 115200
         AVR Part                      : ATmega328PB
         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
           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
           efuse          0     0     0    0 no          1    0      0  4500  4500 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 = 0x1e9516 (probably m328pb)
avrdude: reading input file "C:\TEMP\arduino_build_956171/BlinkWithoutDelay.ino.hex"
avrdude: writing flash (1170 bytes):

Writing | ################################################## | 100% 0.19s

avrdude: 1170 bytes of flash written
avrdude: verifying flash memory against C:\TEMP\arduino_build_956171/BlinkWithoutDelay.ino.hex:
avrdude: load data flash data from input file C:\TEMP\arduino_build_956171/BlinkWithoutDelay.ino.hex:
avrdude: input file C:\TEMP\arduino_build_956171/BlinkWithoutDelay.ino.hex contains 1170 bytes
avrdude: reading on-chip flash data:

Reading | ################################################## | 100% 0.15s

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

avrdude done.  Thank you.

 

Komandir
Komandir аватар
Offline
Зарегистрирован: 18.08.2018

ua6em они уже сигнатуру не отдают ... minicore уже не поможет скорее всего

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

Wosh
Offline
Зарегистрирован: 30.04.2022

avrdude.conf -v -patmega328pb -carduino -PCOM8 -b115200 -D -Uflash:w:C:\TEMP\arduino_build_956171/BlinkWithoutDelay.ino.hex:i

 

А это куда прописывать?

Komandir
Komandir аватар
Offline
Зарегистрирован: 18.08.2018

Wosh пишет:

avrdude.conf -v -patmega328pb -carduino -PCOM8 -b115200 -D -Uflash:w:C:\TEMP\arduino_build_956171/BlinkWithoutDelay.ino.hex:i

 

А это куда прописывать?

Если вы такой вопрос задаете - ОНО ВАМ НЕ НАДО 100%

Тем более что команда не полная.

Wosh
Offline
Зарегистрирован: 30.04.2022

Komandir пишет:

ua6em они уже сигнатуру не отдают ... minicore уже не поможет скорее всего

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

программатор  точно верно подключен.

ua6em
ua6em аватар
Offline
Зарегистрирован: 17.08.2016

Wosh пишет:

avrdude.conf -v -patmega328pb -carduino -PCOM8 -b115200 -D -Uflash:w:C:\TEMP\arduino_build_956171/BlinkWithoutDelay.ino.hex:i

 

А это куда прописывать?

никуда, поставить ядро поддерживающее твой процессор и пользовать для оставшейся платы, а запоротые шить программатором, а может фузедоктор поднимет, у меня есть только программатор, доктора не пробовал

Доктор пишет что 328PB не поддерживается, так что остаётся высоковольтный программатор

Komandir
Komandir аватар
Offline
Зарегистрирован: 18.08.2018

Схема/фото подключения есть ?

Wosh
Offline
Зарегистрирован: 30.04.2022

Komandir пишет:

Схема/фото подключения есть ?

 

https://it-chainik.ru/wp-content/uploads/2017/05/ARDUINO_ICPS.jpg

Komandir
Komandir аватар
Offline
Зарегистрирован: 18.08.2018

До произошедшего платы откликались через внешний программатор ?

Wosh
Offline
Зарегистрирован: 30.04.2022

Komandir пишет:

До произошедшего платы откликались через внешний программатор ?

Одна оставшаяся ардуина и считывается через avrdude и так же можно в ардуино иде загрузить скетч через програматор.

Да, все они работали от програматоров

Komandir
Komandir аватар
Offline
Зарегистрирован: 18.08.2018

Тогда сбрасывать фьюзы через высоковольтный программатор (fusebit doctor)...

Wosh
Offline
Зарегистрирован: 30.04.2022

Komandir пишет:

Тогда сбрасывать фьюзы через высоковольтный программатор (fusebit doctor)...

Подойдет такой? https://aliexpress.ru/item/32899682982.html

Komandir
Komandir аватар
Offline
Зарегистрирован: 18.08.2018

Wosh пишет:

Подойдет такой? https://aliexpress.ru/item/32899682982.html

Что то я там не вижу упоминаний о высоковольтности ...

Вы "один ардуиньщик на деревне" - нет в локальном доступе "погонять" ?

Можно сделать из оставшейся нано - https://www.radiokot.ru/circuit/digital/pcmod/72/

BOOM
BOOM аватар
Offline
Зарегистрирован: 14.11.2018

https://aliexpress.ru/item/1005003462461796.html

Я только так и не понял - как ТС умудрился три нано грохнуть? Это талант, однако....

Komandir
Komandir аватар
Offline
Зарегистрирован: 18.08.2018

BOOM в разных GUI оболочках фьюзы задаются по разному - где то прямые, где то инверсные. Народ галочки ставит, а надо снимать или наоборот и прошивает... В итоге запрещают ногу Reset или программирование через ISP и получают полутрупик...

А дальше уже психология - человек полностью уверен что все правильно делал ... а тут еще несколько плат под рукой ...

BOOM
BOOM аватар
Offline
Зарегистрирован: 14.11.2018

Я не понял - зачем фьюзы менять, если просто загрузчик нужно было прошить? Ну и чем имеющийся не понравился? Тоже вопрос...

dimax
dimax аватар
Offline
Зарегистрирован: 25.12.2013

Boom, похоже чел вообще не в курсе, что для 328PB нужен дополнительный addon.  

ua6em
ua6em аватар
Offline
Зарегистрирован: 17.08.2016

dimax пишет:

Boom, похоже чел вообще не в курсе, что для 328PB нужен дополнительный addon.  

при этом имеет аж три программатора, осталось заиметь HVPP

Komandir
Komandir аватар
Offline
Зарегистрирован: 18.08.2018

Если "плюшки" от PB не нужны, то и аддон не обязателен.

BOOM
BOOM аватар
Offline
Зарегистрирован: 14.11.2018

Кстати, для любителей менять фьюзы: Сначала читаем фьюзы, смотрим на бит SPIEN - если галка стоит, значит в программе инверсные  используются, если не стоит, значит - прямые), потом только меняем исходя из логики и записываем.

Вообще удобно AVRDUDE_PROG v3.3 пользоваться, там прям написано какие используются в данный момент.

Komandir
Komandir аватар
Offline
Зарегистрирован: 18.08.2018

GUI - ЗЛО ! Есть много онлайн avr fuse калькуляторов. Из них надо взять HEX значения и вписать. 

BOOM
BOOM аватар
Offline
Зарегистрирован: 14.11.2018

А какая разница - в онлайн калькуляторе галки ставить или в GUI?
Просто голову включать нужно. С дуру и х#й сломать можно...

devICEpro
Offline
Зарегистрирован: 11.11.2020

Вот и я дури х#й сломал, вернее плату с 328PB. Ситуация точно как у топикстартера, ID чипа снесло, ничего не могу сделать. Как восстановить хотя бы  ID ? 

Komandir
Komandir аватар
Offline
Зарегистрирован: 18.08.2018

devICEpro стереть ID нельзя. Вы просто прописали фьюзы так что чип не отзывается. Надо сбросить его в дефолт через высоковольтный программатор.

devICEpro
Offline
Зарегистрирован: 11.11.2020

Спасибо, уже разобрался. Благо в хозяйстве имеется TL866A. Всё починилось.