avrdude: Yikes! Invalid device signature.

satway
Offline
Зарегистрирован: 06.12.2014

Всем привет! Тема старая, но решение свое проблеммы так и не нашел. Есть 2 чипа атмега8. Один в dip другой в tqfp. Присоединят мегу в dip к уне по ISP, ставлю кварц на 16 мГц и штатным программатором арудино без проблем прошиваю загрузчик. Тоже самое пытаюсь сделать с другой мегой в tqfp- получаю ошибку:

avrdude: Yikes!  Invalid device signature.
         Double check connections and try again, or use -F to override
         this check.
Подключение проверял, пробовал другую мегу из этой же партии в таком же корпусе - тоже самое. В чем может быть проблема? Загрузчик заливаю с параметрами ниже (из boards.txt). Скорости загрузки попробовал все. 
 
##############################################################
atmega8.name=ATmega8 (no bootloader 8MHz ext)
atmega8.upload.protocol=arduino
atmega8.upload.tool=usbasp
atmega8.upload.maximum_size=7680
atmega8.upload.speed=115200
 
atmega8.bootloader.low_fuses=0xFF
atmega8.bootloader.high_fuses=0xD9
atmega8.bootloader.unlock_bits=0x3F
atmega8.bootloader.lock_bits=0x0F
 
atmega8.build.mcu=atmega8
atmega8.build.f_cpu=8000000L
atmega8.build.core=arduino
atmega8.build.variant=standard

такеж пробовал с такими параметрами:

##############################################################
 
atmega8.name=Arduino NG or older w/ ATmega8
 
atmega8.upload.protocol=arduino
atmega8.upload.maximum_size=7168
atmega8.upload.speed=19200
 
atmega8.bootloader.low_fuses=0xdf
atmega8.bootloader.high_fuses=0xca
atmega8.bootloader.path=atmega8
atmega8.bootloader.file=ATmegaBOOT-prod-firmware-2009-11-07.hex
atmega8.bootloader.unlock_bits=0x3F
atmega8.bootloader.lock_bits=0x0F
 
atmega8.build.mcu=atmega8
atmega8.build.f_cpu=16000000L
atmega8.build.core=arduino
atmega8.build.variant=standard
 
Jeka_M
Jeka_M аватар
Offline
Зарегистрирован: 06.07.2014

Цитата:

В чем может быть проблема?

В этом: Invalid device signature. Загрузчик и настройки boards.txt тут вообще не при чём.

Включи в настройках Arduino IDE подробный вывод логов при загрузке и выложи их сюда.

атмега8 в tqfp корпусе новая?

satway
Offline
Зарегистрирован: 06.12.2014

Arduino: 1.0.6 (Windows NT (unknown)), Board: "ATmega8 at 8 MHz (w/o crystal)"
C:\Program Files (x86)\Arduino\hardware/tools/avr/bin/avrdude -CC:\Program Files (x86)\Arduino\hardware/tools/avr/etc/avrdude.conf -v -v -v -v -patmega8 -cstk500v1 -P\\.\COM3 -b19200 -e -Ulock:w:0x3F:m -Uhfuse:w:0xCF:m -Ulfuse:w:0xE4:m

avrdude: Version 5.11, compiled on Sep 2 2011 at 19:38:36
Copyright (c) 2000-2005 Brian Dean, http://www.bdmicro.com/
Copyright (c) 2007-2009 Joerg Wunsch

System wide configuration file is "C:\Program Files (x86)\Arduino\hardware/tools/avr/etc/avrdude.conf"

Using Port : \\.\COM3
Using Programmer : stk500v1
Overriding Baud Rate : 19200
avrdude: Send: 0 [30] [20]
avrdude: Send: 0 [30] [20]
avrdude: Send: 0 [30] [20]
avrdude: Recv: . [14]
avrdude: Recv: . [10]
AVR Part : ATMEGA8
Chip Erase delay : 10000 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 4 20 128 0 no 512 4 0 9000 9000 0xff 0xff
Block Poll Page Polled
Memory Type Mode Delay Size Indx Paged Size Size #Pages MinW MaxW ReadBack
----------- ---- ----- ----- ---- ------ ------ ---- ------ ----- ----- ---------
flash 33 10 64 0 yes 8192 64 128 4500 4500 0xff 0x00
Block Poll Page Polled
Memory Type Mode Delay Size Indx Paged Size Size #Pages MinW MaxW ReadBack
----------- ---- ----- ----- ---- ------ ------ ---- ------ ----- ----- ---------
lfuse 0 0 0 0 no 1 0 0 2000 2000 0x00 0x00
Block Poll Page Polled
Memory Type Mode Delay Size Indx Paged Size Size #Pages MinW MaxW ReadBack
----------- ---- ----- ----- ---- ------ ------ ---- ------ ----- ----- ---------
hfuse 0 0 0 0 no 1 0 0 2000 2000 0x00 0x00
Block Poll Page Polled
Memory Type Mode Delay Size Indx Paged Size Size #Pages MinW MaxW ReadBack
----------- ---- ----- ----- ---- ------ ------ ---- ------ ----- ----- ---------
lock 0 0 0 0 no 1 0 0 2000 2000 0x00 0x00
Block Poll Page Polled
Memory Type Mode Delay Size Indx Paged Size Size #Pages MinW MaxW ReadBack
----------- ---- ----- ----- ---- ------ ------ ---- ------ ----- ----- ---------
calibration 0 0 0 0 no 4 0 0 0 0 0x00 0x00
Block Poll Page Polled
Memory Type Mode Delay Size Indx Paged Size Size #Pages MinW MaxW ReadBack
----------- ---- ----- ----- ---- ------ ------ ---- ------ ----- ----- ---------
signature 0 0 0 0 no 3 0 0 0 0 0x00 0x00

Programmer Type : STK500
Description : Atmel STK500 Version 1.x firmware
avrdude: Send: A [41] . [80] [20]
avrdude: Recv: . [14]
avrdude: Recv: . [02]
avrdude: Recv: . [10]
avrdude: Send: A [41] . [81] [20]
avrdude: Recv: . [14]
avrdude: Recv: . [01]
avrdude: Recv: . [10]
avrdude: Send: A [41] . [82] [20]
avrdude: Recv: . [14]
avrdude: Recv: . [12]
avrdude: Recv: . [10]
avrdude: Send: A [41] . [98] [20]
avrdude: Recv: . [14]
avrdude: Recv: . [00]
avrdude: Recv: . [10]
Hardware Version: 2
Firmware Version: 1.18
Topcard : Unknown
avrdude: Send: A [41] . [84] [20]
avrdude: Recv: . [14]
avrdude: Recv: . [00]
avrdude: Recv: . [10]
avrdude: Send: A [41] . [85] [20]
avrdude: Recv: . [14]
avrdude: Recv: . [00]
avrdude: Recv: . [10]
avrdude: Send: A [41] . [86] [20]
avrdude: Recv: . [14]
avrdude: Recv: . [00]
avrdude: Recv: . [10]
avrdude: Send: A [41] . [87] [20]
avrdude: Recv: . [14]
avrdude: Recv: . [00]
avrdude: Recv: . [10]
avrdude: Send: A [41] . [89] [20]
avrdude: Recv: . [14]
avrdude: Recv: . [00]
avrdude: Recv: . [10]
Vtarget : 0.0 V
Varef : 0.0 V
Oscillator : Off
SCK period : 0.1 us

avrdude: Send: A [41] . [81] [20]
avrdude: Recv: . [14]
avrdude: Recv: . [01]
avrdude: Recv: . [10]
avrdude: Send: A [41] . [82] [20]
avrdude: Recv: . [14]
avrdude: Recv: . [12]
avrdude: Recv: . [10]
avrdude: Send: B [42] p [70] . [00] . [00] . [01] . [01] . [01] . [01] . [02] . [ff] . [00] . [ff] . [ff] . [00] @ [40] . [02] . [00] . [00] . [00] [20] . [00] [20]
avrdude: Recv: . [14]
avrdude: Recv: . [10]
avrdude: Send: E [45] . [05] . [04] . [d7] . [c2] . [00] [20]
avrdude: Recv: . [14]
avrdude: Recv: . [10]
avrdude: Send: P [50] [20]
avrdude: Recv: . [14]
avrdude: Recv: . [10]
avrdude: AVR device initialized and ready to accept instructions

Reading | avrdude: Send: V [56] 0 [30] . [00] . [00] . [00] [20]
avrdude: Recv: . [14]
avrdude: Recv: . [ff]
avrdude: Recv: . [10]
avrdude: Send: V [56] 0 [30] . [00] . [01] . [00] [20]
avrdude: Recv: . [14]
avrdude: Recv: . [ff]
avrdude: Recv: . [10]
################avrdude: Send: V [56] 0 [30] . [00] . [02] . [00] [20]
avrdude: Recv: . [14]
avrdude: Recv: . [ff]
avrdude: Recv: . [10]
################################## | 100% 0.06s

avrdude: Device signature = 0xffffff
avrdude: Yikes! Invalid device signature.
Double check connections and try again, or use -F to override
this check.

avrdude: Send: Q [51] [20]
avrdude: Recv: . [14]
avrdude: Recv: . [10]

avrdude done. Thank you.

Jeka_M
Jeka_M аватар
Offline
Зарегистрирован: 06.07.2014

Чип корректно не считывается - avrdude: Device signature = 0xffffff

Ещё раз повторю вопрос - атмега8 в tqfp корпусе новая? (с магазина или уже где-то стояла?)

satway
Offline
Зарегистрирован: 06.12.2014

новая. при чем у меня 3 новых чипа и у всех одно и то же

Jeka_M
Jeka_M аватар
Offline
Зарегистрирован: 06.07.2014

Ну раз новые, то они настроены на внутренний RC-осциллятор 8МГц и включён делитель на 8. Итого, тактовая частота МК получается 1МГц. Это низкая тактовая для программатора, чипы из-за этого могут не считываться. Поэтому нужно понижать частоту SCK программатора. Например в USBasp это делается специальным джампером. Если же используется другая ардуина со скетчем Arduino ISP, там нужно указать более низкую частоту (строка #define SPI_CLOCK в скетче Arduino ISP)

satway
Offline
Зарегистрирован: 06.12.2014

нет такой директивы в скетче

#define RESET     SS
 
#define LED_HB    9
#define LED_ERR   8
#define LED_PMODE 7
#define PROG_FLICKER true
 
#define HWVER 2
#define SWMAJ 1
#define SWMIN 18
 
// STK Definitions
#define STK_OK      0x10
#define STK_FAILED  0x11
#define STK_UNKNOWN 0x12
#define STK_INSYNC  0x14
#define STK_NOSYNC  0x15
#define CRC_EOP     0x20 //ok it is a space...
kalapanga
Offline
Зарегистрирован: 23.10.2016

А Вы Arduino: 1.0.6 из каких-то особых соображений используете? В скетче, который идёт с arduino-1.6.13 и далее такая директива есть

Jeka_M
Jeka_M аватар
Offline
Зарегистрирован: 06.07.2014

Да, в старых версиях такого нет.  У меня как раз 1.6.13.  В новых версиях 1.8.* тоже должно быть.

satway
Offline
Зарегистрирован: 06.12.2014

так а куда ж понижать, там и так стоит

#define SPI_CLOCK (1000000/6)

wdrakula
wdrakula аватар
Offline
Зарегистрирован: 15.03.2016

...до 128000/6

satway
Offline
Зарегистрирован: 06.12.2014

безрезультатно...

Arduino: 1.8.5 (Windows 10), Плата:"Arduino NG or older, ATmega8"
 
F:\Program Files (x86)\Arduino\hardware\tools\avr/bin/avrdude -CF:\Program Files (x86)\Arduino\hardware\tools\avr/etc/avrdude.conf -v -patmega8 -cstk500v1 -PCOM3 -b19200 -e -Ulock:w:0x3F:m -Uefuse:w::m -Uhfuse:w:0xca:m -Ulfuse:w:0xdf:m 
 
avrdude: Version 6.3, compiled on Jan 17 2017 at 12:00:53
         Copyright (c) 2000-2005 Brian Dean, http://www.bdmicro.com/
         Copyright (c) 2007-2014 Joerg Wunsch
 
         System wide configuration file is "F:\Program Files (x86)\Arduino\hardware\tools\avr/etc/avrdude.conf"
 
         Using Port                    : COM3
         Using Programmer              : stk500v1
         Overriding Baud Rate          : 19200
         AVR Part                      : ATmega8
         Chip Erase delay              : 10000 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         4    20   128    0 no        512    4      0  9000  9000 0xff 0xff
           flash         33    10    64    0 yes      8192   64    128  4500  4500 0xff 0x00
           lfuse          0     0     0    0 no          1    0      0  2000  2000 0x00 0x00
           hfuse          0     0     0    0 no          1    0      0  2000  2000 0x00 0x00
           efuse          0     0     0    0 no          0    0      0     0     0 0x00 0x00
           lock           0     0     0    0 no          1    0      0  2000  2000 0x00 0x00
           calibration    0     0     0    0 no          4    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 = 0xffffff (probably .reduced_core_tiny) (retrying)
 
Reading | ################################################## | 100% 0.02s
 
avrdude: Device signature = 0xffffff (probably .reduced_core_tiny) (retrying)
 
Ошибка при записи загрузчика.
Reading | ################################################## | 100% 0.02s
 
avrdude: Device signature = 0xffffff (probably .reduced_core_tiny)
avrdude: Yikes!  Invalid device signature.
         Double check connections and try again, or use -F to override
         this check.
 
 
avrdude done.  Thank you.
Jeka_M
Jeka_M аватар
Offline
Зарегистрирован: 06.07.2014

Питание подано на все пины GND, VCC, AVCC ? В корпусе tqfp их несколько штук.

Провода от ардуины до атмеги8 не слишком длинные? Контакт надёжный? Как соединение атмеги8 с ардуиной вообще организовано?

satway
Offline
Зарегистрирован: 06.12.2014

да, питание и земля на все соответствующие пины поданы. провода - стнадартный дюпон, с ними на мегу8  в дипе все становиться с дефолтными настройками

Jeka_M
Jeka_M аватар
Offline
Зарегистрирован: 06.07.2014

satway пишет:

провода - стнадартный дюпон, с ними на мегу8  в дипе все становиться с дефолтными настройками

Зачем нам dip, если проблема с tqfp... Как подсоединено к tqfp ?

И да, надеяться на китайские провода дюпон не стоит. Бывает они плохо обжаты и контакт может пропадать. Пайка лучше всего.

satway
Offline
Зарегистрирован: 06.12.2014

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

satway
Offline
Зарегистрирован: 06.12.2014

короче, купил новый чип, запаял и все заработало. обидно, что 4 чипа из 2 разных партий оказались какими-то бракованными. спасибо всем за помощь.

bwn
Offline
Зарегистрирован: 25.08.2014

Боюсь, просто где то соплей навешали, вот и не взлетело. ИМХО.

ak62
Offline
Зарегистрирован: 03.01.2019

Подниму тему, дабы не полдить новых. Ситуация похожая. Купил пару Atmega328P в SMD корпусе на замену сгоревшему. Выпаяли з платы сгоревший, впаял новый. Три дня читал интернет - у всех все просто. Запустил IDE, выбрал скетч, загрузил в одну ардуину, поменял тип программатора и нажал Записать загрузчик. Пошел спать... Мне же не дает спать. Пишет:

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\Alex\AppData\Local\Arduino15\packages\arduino\tools\avrdude\6.3.0-arduino17/etc/avrdude.conf"

         Using Port                    : COM4
         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 = 0x000000 (retrying)

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

avrdude: Device signature = 0x000000 (retrying)

Ошибка при записи загрузчика.
Reading | ################################################## | 100% 0.02s

avrdude: Device signature = 0x000000
avrdude: Yikes!  Invalid device signature.
         Double check connections and try again, or use -F to override
         this check.


avrdude done.  Thank you.

Я не знаю как в IDE включиь этот -F поэтому нашел AVRDUDESS, в которой есть возможность включить этот ключ. Предварительно  нашел в интернете загрузчик optiboot_atmega328 и с рабочей ардуины считал Fuses & Block bit,

выставил все, как на картинке и получил ошибку

~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~
>>>: avrdude -u -c arduino -p m328p -P COM4 -b 19200 -F -U flash:w:"C:\avrdudeprog\optiboot_atmega328.hex":a -U lfuse:w:0xFF:m -U hfuse:w:0xDA:m -U efuse:w:0xFD:m -U lock:w:0xFF:m 

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

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

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

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

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

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

avrdude.exe: Device signature = 0x000000
avrdude.exe: Yikes!  Invalid device signature.
avrdude.exe: Expected signature for ATmega328P is 1E 95 0F
avrdude.exe: NOTE: "flash" memory has been specified, an erase cycle will be performed
             To disable this feature, specify the -D option.
avrdude.exe: erasing chip
avrdude.exe: reading input file "C:\avrdudeprog\optiboot_atmega328.hex"
avrdude.exe: input file C:\avrdudeprog\optiboot_atmega328.hex auto detected as Intel Hex
avrdude.exe: writing flash (32768 bytes):

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

avrdude.exe: 32768 bytes of flash written
avrdude.exe: verifying flash memory against C:\avrdudeprog\optiboot_atmega328.hex:
avrdude.exe: load data flash data from input file C:\avrdudeprog\optiboot_atmega328.hex:
avrdude.exe: input file C:\avrdudeprog\optiboot_atmega328.hex auto detected as Intel Hex
avrdude.exe: input file C:\avrdudeprog\optiboot_atmega328.hex contains 32768 bytes
avrdude.exe: reading on-chip flash data:

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

avrdude.exe: verifying ...
avrdude.exe: verification error, first mismatch at byte 0x7e00
             0x00 != 0x11
avrdude.exe: verification error; content mismatch

avrdude.exe done.  Thank you.

. Подскажите, что сделал не так? Спасибо.

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

Загрузчик надо заливать через внешний программатор.

rkit
Offline
Зарегистрирован: 23.11.2016

Проверяй пайку

ak62
Offline
Зарегистрирован: 03.01.2019

Komandir пишет:

Загрузчик надо заливать через внешний программатор.

на сколько я понимаю, то ардуина прошитая скетчем ArduinoISP это уже внешний программатор. Кроме того я имею программатор USBasp, там ситуация примерно такая же.

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

Значит не отвечает ваш камень на зов программатора ...

ak62
Offline
Зарегистрирован: 03.01.2019

rkit пишет:

Проверяй пайку

Спасибо. Действительно. Прошелся еще раз по пайке и все взлетело.

KONO_REN
Offline
Зарегистрирован: 19.09.2020

Если не сложно, прошу помощи. Имею atmega8 в dip корпусе и arduino uno, хотел бы прошить загрузчик, но в итоге выдает ошибку "...Invalid device signature...".  Лог ниже

Arduino: 1.8.13 (Windows 10), Плата:"Arduino NG or older, ATmega8"
 
C:\Program Files (x86)\Arduino\hardware\tools\avr/bin/avrdude -CC:\Program Files (x86)\Arduino\hardware\tools\avr/etc/avrdude.conf -v -patmega8 -cstk500v1 -PCOM6 -b19200 -e -Ulock:w:0x3F:m -Uefuse:w::m -Uhfuse:w:0xca:m -Ulfuse:w:0xdf:m 
 
 
 
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                    : COM6
 
         Using Programmer              : stk500v1
 
         Overriding Baud Rate          : 19200
 
         AVR Part                      : ATmega8
 
         Chip Erase delay              : 10000 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         4    20   128    0 no        512    4      0  9000  9000 0xff 0xff
 
           flash         33    10    64    0 yes      8192   64    128  4500  4500 0xff 0x00
 
           lfuse          0     0     0    0 no          1    0      0  2000  2000 0x00 0x00
 
           hfuse          0     0     0    0 no          1    0      0  2000  2000 0x00 0x00
 
           efuse          0     0     0    0 no          0    0      0     0     0 0x00 0x00
 
           lock           0     0     0    0 no          1    0      0  2000  2000 0x00 0x00
 
           calibration    0     0     0    0 no          4    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 = 0x000000 (retrying)
 
 
 
Reading | ################################################## | 100% 0.02s
 
 
 
avrdude: Device signature = 0x000000 (retrying)
 
 
 
Ошибка при записи загрузчика.
 
Reading | ################################################## | 100% 0.02s
 
 
 
avrdude: Device signature = 0x000000
 
avrdude: Yikes!  Invalid device signature.
 
         Double check connections and try again, or use -F to override
 
         this check.
 
 
 
 
 
avrdude done.  Thank you.
 
 
 
Jeka_M
Jeka_M аватар
Offline
Зарегистрирован: 06.07.2014

KONO_REN пишет:

Если не сложно, прошу помощи. 

Всё уже написано в этой теме, добавить нечего.

Kakmyc
Offline
Зарегистрирован: 15.01.2018

Ну как бы не всё.
Вопрос такой у меня.
Какие сигнатуры и скорости указывать ?
Понять не могу, с ПК нормально заливка идёт, а с телефона не желает. Видимо дудка там настроена через опу.
И что ещё влияет на процесс загрузки ?

74LS00
Offline
Зарегистрирован: 11.04.2016
mega8 и mega8p разные, для них надо указывать соответствующий чип в конфиге.
в общем то разница только в сигнатуре, поэтому найдя мегу8 в конфиге, можно списать сигнатуру от 8п и будет работать.
 
кроме того у новых чипов зашит ckdiv8, поэтому их не видят програматоры на нормальной скорости.
 
попробуйте гуй avrdudeprog.
 
вот про пайку тоже верно, надо смотреть в микроскоп, без него непропай qfp не видно.
Duncan
Offline
Зарегистрирован: 27.09.2020

Прошу помощи по той же самой теме.

Все читал, и не только здесь, перепаивал трижды, пины сверял (sck-13, mosi-11, miso-12, reset-10).

Проблема такая:

Сделал свое устройство на ATmega328P-AU (SMD). Пришли 20 штук из кетая, естессно все голые.

Взял Ардуино Нано v.3.0 (CH340), все распаял, скетч загрузил, A as ISP выставил, загрузчик не льется. все как и у всех заканчивается на

avrdude: Device signature = 0x000000
avrdude: Yikes!  Invalid device signature.

в общем, не видит ардуинка мой чип. после чтения припаял кондёр, нет эффекта.

почитал еще, попробовал -B20 - нет эффекта, полез в скетч и менял 1000000/6 и 128000/6 - нет эффекта.

на след день со свежей головой отпаял свою поделку, впаял вместо ней вторую точно такую же Ардуинку и стал пытаться считать фьюзы, или флеш...
в итоге - все ровно тоже самое... signature = 0x000000

я уже не знаю куда копать. от прочитанного уже каша в голове. а результата не вижу ни в какой комбинации.

 

74LS00
Offline
Зарегистрирован: 11.04.2016

Позволю себе неграмотному быть первым.

Из описания не понятно чем и что прошивается.

328pb это кардинально не близко не 328p, надо чтоб программатор о ней знал, но вроде как в hardware\tools\avr\etc она есть, значит надо выбрать эту плату, или установить.

Надеюсь платы ваши именно под 328pb, потомучто иначе их просто замкнёт, питание у них разное. Или поднять 3 и 6 ногу, а то не в той плате мог и стабилизатор поджарится.
Ну и лучше прижимать ножки при пайке, китайские кривые qfp бывает что не касаются и лудятся навису.

А ещё из даташита я вижу что у вас подключено непонятно куда
mosi 15
miso 16
sck 17
reset 29

даже на мегу 48 в 28 mlf у меня такие ноги не получились, там 13-15,25

P.S. админы какойже убогий этот редактор, я вставляю текст с блокнота с переносом строки, а он тут форматируется в новый абзац.
Добавите в висивинг кнопку преобразовать все переносы в строки в новый абзац и все новые энтеры в перенос строки

Duncan
Offline
Зарегистрирован: 27.09.2020

прошу прощения, описался, все чипы 328p. (поправил текст)

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

забудьте про мою плату..

мне бы для начала одной Наной прочитать фьюзы или флеш другой точно такой же Наны...

а уже потом буду думать про свой чип.

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

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

74LS00
Offline
Зарегистрирован: 11.04.2016

Есть же готовый STK500v2 by Petka, только там кварц экзотический, а так вполне стандартный рабочий програматор.
Думал о низкоскоростном варианте, потомучто кварцы есть от stk500, но не так часто с этим ковыряюсь чтоб ещё один собирать.
Исходники есть, но учитывая что там кварц задаёт частоту порта, на другой будет трудно переделать. Хотя не помню может можно под стандартный сделать.

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

Komandir, в продаваемых китайцами чипах зашит ckdiv8, они чем попадя не прошиваются, о lpt stk200 можно сразу забыть. Собирал для одной поделки, думал обойдусь и забуду о этих МК, но он так и не пригодился, не с одним чипом не работает, везде этот бит зашит. Так и пришлось потом искать что собирать на куче накупленых мег

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

Для высоковольтного программатора вообще без разницы какие фьюзы и лок биты зашиты - сотрёт и выставить всё в дефолт.

74LS00
Offline
Зарегистрирован: 11.04.2016

Так в том и проблема что кроме древнего stk500 который не найти и нового дорогущего и ненадёжного stk600, вроде как нет PICkit который их шьёт, только самому собирать, а он не простой  и детали редкие, поэтому и собирают доктора

Jeka_M
Jeka_M аватар
Offline
Зарегистрирован: 06.07.2014

74LS00 пишет:

в продаваемых китайцами чипах зашит ckdiv8

Во всех чипах с завода зашит фьюз CKDIV8 (в итоге тактовая 8МГц /8 = 1МГц), китайцы тут не при чём. Микроконтроллер легко прошивается с помощью USBasp и установленного джампера JP3 на нём (JP3 как раз и предназначен для прошивки МК с низкой тактовой <1МГц).

Duncan
Offline
Зарегистрирован: 27.09.2020

Я вот только так и не понял, куда копать в заливке бута однй Наной в другую..

обе кстати на кварце 16мгц

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

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

В одну, с которой нет проблем, залить скетч ArduinoISP, подцепить к проблемной и прошивать её...

Jeka_M
Jeka_M аватар
Offline
Зарегистрирован: 06.07.2014

Duncan купи нормальный программатор USBasp и не мучайся... И соединяй нормальными проводами, а не китайскими Dupont.

Duncan
Offline
Зарегистрирован: 27.09.2020

Komandir пишет:

В одну, с которой нет проблем, залить скетч ArduinoISP, подцепить к проблемной и прошивать её...

они обе работающие.. цель - одной прочесть хоть что-то в другой..

я пока тупо не могу увидеть ничего через этот самый ISP...

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

Покажите ПОЛНЫЙ лог загрузки ?!

74LS00
Offline
Зарегистрирован: 11.04.2016
Я предложил вариант, не создавайте себе путаницу. Если хотите всю память МК без загрузчика, надо обзавестись програматором. Из предложеного тут китайского USBasp, он на usb чипе которые сами по себе дороже, зато простой.
 
Ну а если нет времени, берём паяльним и лепим из того что есть, из uart делается программатор и прошивается мега в програматор
потом переключается обратно в rx tx.
Если завалялась ft232 то вообще хорошо, просто надо спец дудку, но шить из под ардуино не получится, там такого программатора нет. Покупать специально ft232 не нужно, проблем будет море, там защита от левака, за 6 евро оригинал покупать не всякий захочет.
 
А вот как сделать программатор из меги не скажу, может и есть готовые решения, но кроме STK500v2 by Petka ничего не знаю, в нём редкий кварц. В оригинале STK500 тоже стоит uart и редкий старый контролер 8535, тогда ещё просто не было usb, в добавок там тоже редкий кварц и ещё регистр.
 
Ну а вообще погуглил тут минуту и хабр сразу выдал ссылку https://www.fischl.de/usbasp/
Не знаю насколько это рабочее и какие МК поддерживает, но это програматор на обычной меге с виртуальным usb, uart вообще ненужен.
 
Берём нану, отпаиваем rx tx от МК.
Подпаиваем 3 проводка от ch340 к МК как в первой ссылке.
берём батник тамже, может не заработать, но команды там есть.
Прошиваются фьюзы по байту или сразу если уверен.
Прошивается флеш, ждём минут 20.
Отпаиваем налепленые 3 проводка нафик, и выкидываем ch340 тоже.
Паяем 2 проводка от usb гнезда к МК, и програматор готов.
Управится можно за час.
 
есть одна проблема, придётся паять, а не кнопки тыкать
 
Хотя как я понял у автора задумка написать именно свой программатор, оправдано если он хочет сделать портативный без компа, потомучто у AVR с этим реально напряг
Duncan
Offline
Зарегистрирован: 27.09.2020

Komandir пишет:

Покажите ПОЛНЫЙ лог загрузки ?!

C:\Program Files (x86)\Arduino\hardware\tools\avr/bin/avrdude -CC:\Program Files (x86)\Arduino\hardware\tools\avr/etc/avrdude.conf -v -patmega328p -cstk500v1 -PCOM8 -b19200 -e -Ulock:w:0x3F:m -Uefuse:w:0xFD:m -Uhfuse:w:0xDA:m -Ulfuse:w:0xFF:m 

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                    : COM8
         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 = 0x000000 (retrying)

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

avrdude: Device signature = 0x000000 (retrying)

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

avrdude: Device signature = 0x000000
avrdude: Yikes!  Invalid device signature.
         Double check connections and try again, or use -F to override
         this check.


avrdude done.  Thank you.

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

 

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

А программатор то какой выбран в IDE ???

Duncan
Offline
Зарегистрирован: 27.09.2020

Komandir пишет:

А программатор то какой выбран в IDE ???

Arduino as ISP

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

Осталось увидеть хорошее фото подключения.

74LS00
Offline
Зарегистрирован: 11.04.2016

Без понятия что такое stk500v1, но обычный stk500 обрезок не понимается дудкой как надо, хотя под него всего одна прошивка, а вот stk500v2 работает.

Так может у вас загрузчик убит.

Начнём с простого, у вас драйвера то стоят на тот uart который на этой нано припаян и порт правильный?
Да и вообще он рабочий, моргает там что при прошивке? Я както с pl2303 приладить не мог, в терминал данные шли, а програматор не видело, оказалось старый драйвер.

Jeka_M, оно и похоже попадалово от атмела чтоб их отладочные платы покупали и снимали этот бит. В первых ревизиях даташита была схема lpt и контролеры без бита шились, а в новых уже эту схему вырезали, "покупайте stk500, нефик бесплатно шить". А сейчас в интернете копипастят с умным видом эти lpt схемы которые не работают

"C:\Program Files (x86)\Arduino\hardware\tools\avr/bin/avrdude" -C"C:\Program Files (x86)\Arduino\hardware\tools\avr/etc/avrdude.conf" -v -patmega328p -cstk500v1 -PCOM8 -b19200 -v F

в теории должно показать больше инфы

Duncan
Offline
Зарегистрирован: 27.09.2020

так... давайте еще раз:

у меня две АБСОЛЮТНО одинаковые и РАБОЧИЕ Arduino Nano V3 16MHz (CH340). Обе прекрасно заливаются скетчами по USB.

задача - ХОТЯБЫ увидеть программируемую нанку, например прочитав фьюзы.

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

Вот нам и надо увидеть как вы их соединили ! Если платы рабочие, то косяк на 99% в соединении ...

74LS00
Offline
Зарегистрирован: 11.04.2016

Увидеть в чём? Arduino не имеет средств для чтения МК, она только программирует, в ней никак ничего не увидеть больше чем лог верификации.

Мне кажется проблема стара https://www.drive2.ru/c/485776607730991538/

Ну и ждём фотки, вопрос всё также непонятен 

Duncan
Offline
Зарегистрирован: 27.09.2020

74LS00 пишет:

Увидеть в чём? Arduino не имеет средств для чтения МК, она только программирует, в ней никак ничего не увидеть больше чем лог верификации.

Мне кажется проблема стара https://www.drive2.ru/c/485776607730991538/

Ну и ждём фотки, вопрос всё также непонятен 

эээ что значит "она только программирует"?...

вообще-то, прежде, чем писать, она читает Device signature, читает фьюзы,

вот это в любом случае должно работать -U lfuse:r:-:i -U hfuse:r:-:i

что вы хотите увидеть на фото?.. 6 5-см проводов от одной наны к другой?.. не на макетке, пайка.
поверьте, там все абсолютно правильно и нормальным проводом. перепаивал в разных комбинациях раз 5 или 7.
USB кабель тоже не дешевый, толстый, короткий, с гасителем.

по ссылке на драйве, да, примерно тоже самое, но решения человек так и не нашел.