neuer atmega328p

#7758750
Lesenswert?

Hi ich habe ein Problem mit einem neu gekauften Chip.

Ich bin recht neu in der Mikrocontroller-Welt. Ich habe mir den USBasp zugelegt und dazu die avrdude Software gesaugt und installiert, etc.. Damit konnte ich auch bereits einen mC flashen. (Den mC auf dem Arduino-Board über die ISP-Schnittstelle).

Ich habe mir den Atmega328p als alleinstehenden IC gekauft, da ist das raufspielen des Programms leider nicht mehr so glorreich geschehen. Das rüberspielen sowohl in Atmel Studio 7 oder ArduinoIDE.(fehlermeldung siehe unten)

Ich bekomme nicht einmal einen kontakt über Kommandozeile aufgebaut:

C:\Users\paul1\Documents\schule\Projekt_ATMEGA328p\Zugriff\avrdude-6.4-mingw32>avrdude -c usbasp -p m328p -t

avrdude: error: program enable: target doesn't answer. 1 avrdude: initialization failed, rc=-1 Double check connections and try again, or use -F to override this check.

avrdude done. Thank you.

Ich habe das ganze daraufhin auch mit dem -F Befehl probiert:

C:\Users\paul1\Documents\schule\Projekt_ATMEGA328p\Zugriff\avrdude-6.4-mingw32>avrdude -c usbasp -p m328p -t -F

avrdude: error: program enable: target doesn't answer. 1 avrdude: initialization failed, rc=-1 avrdude: AVR device initialized and ready to accept instructions avrdude: Device signature = 0x2e6176 avrdude: Expected signature for ATmega328P is 1E 95 0F avrdude> q

q

avrdude done. Thank you.

Meine Frage ist beim ersten Bespiel etwas besonderes zu beachten oder ist mein erster IC einfach direkt kaputt?

Vielen Dank schonmal für Antowrten....

#7758762
Lesenswert?

Hightiger schrieb:

avrdude: Device signature = 0x2e6176 avrdude: Expected signature for ATmega328P is 1E 95 0F avrdude> q

Es ist eben nicht exakt der 328P. Es gibt da noch den PA und PB und weiß der Fuchs, was noch alles. eXtreme Burner AVR ist eine an einen Hex Editor angelehnte Brennsoftware. Die schlägt nach der Fehlermeldung wenigstens noch "ignore" vor, so das man trotzdem flashen kann, wenn die Device ID nicht die erwartete ist.

#7758771
Lesenswert?

Sebastian R. schrieb:

Wie sieht es mit Clock und den Fuses dazu aus?

Wie die fuses aktuell aussehen bin ich nicht in der Lage zu sehen. Wieder diese Fehlermeldung:

C:...\avrdude-6.4-mingw32>avrdude -c usbasp -p m328p -U lfuse:r:lfuse.txt:b -U hfuse:r:hfuse.txt:b -U efuse:r:efuse.txt:b

avrdude: error: program enable: target doesn't answer. 1 avrdude: initialization failed, rc=-1 Double check connections and try again, or use -F to override this check.

avrdude done. Thank you.

Durch das CKDIV-Bit sollte die erste Programmierung der Clock-Fuses mit <1MHz SPI-Clock erfolgen

ist das eins der drei ich im code oben auslesen oder spreche ich das noch einmal anders an?

#7758775
Lesenswert?

Hallo,

ich habe in der avrdude.conf praktisch rückwärts gesucht. Die Signatur 1E 95 0F gibt es für ATA6614Q ATmega328P LGT8F328P

Aber die Signatur 0x2e6176 gibt es nicht. Gesucht nach 0x2e 0x61 0x76.

Wo hast du den ATmega her?

Mach einmal nur Option -v. Was gibt dir avrdude aus?

Moderator #7758792
Lesenswert?

Die Signature-Bytes der von Atmel/Microchip hergestellten MCUs beginnen immer mit 1E. Die der Clones vermutlich ebenso, sonst wären es keine Clones.

Entweder ist ein Clone-Hersteller doch so ehrlich und verwendet seine eigenen Signature-Bytes (was ich mir nicht so recht vorstellen kann), oder es gibt Fehler bei der Kommunikation.

Sind die gelesenen Bytes bei wiederholten Versuchen immer gleich?

#7758800
Lesenswert?

Veit D. schrieb:

Aber die Signatur 0x2e6176 gibt es nicht. Gesucht nach 0x2e 0x61 0x76.

Wo hast du den ATmega her?

Aliexpress natürlich!

Mach einmal nur Option -v. Was gibt dir avrdude aus?

C:...\avrdude-6.4-mingw32>avrdude -c usbasp -p m328p -v

avrdude: Version 6.4 Copyright (c) Brian Dean, http://www.bdmicro.com/ Copyright (c) Joerg Wunsch

1
     System wide configuration file is "C:\Users\paul1\Documents\schule\Projekt_ATMEGA328p\Zugriff\avrdude-6.4-mingw32\avrdude.conf"
2

3
     Using Port                    : usb
4
     Using Programmer              : usbasp
5
     AVR Part                      : ATmega328P
6
     Chip Erase delay              : 9000 us
7
     PAGEL                         : PD7
8
     BS2                           : PC2
9
     RESET disposition             : dedicated
10
     RETRY pulse                   : SCK
11
     serial program mode           : yes
12
     parallel program mode         : yes
13
     Timeout                       : 200
14
     StabDelay                     : 100
15
     CmdexeDelay                   : 25
16
     SyncLoops                     : 32
17
     ByteDelay                     : 0
18
     PollIndex                     : 3
19
     PollValue                     : 0x53
20
     Memory Detail                 :
21

22
                              Block Poll               Page                       Polled
23
       Memory Type Mode Delay Size  Indx Paged  Size   Size #Pages MinW  MaxW   ReadBack
24
       ----------- ---- ----- ----- ---- ------ ------ ---- ------ ----- ----- ---------
25
       eeprom        65    20     4    0 no       1024    4      0  3600  3600 0xff 0xff
26
       flash         65     6   128    0 yes     32768  128    256  4500  4500 0xff 0xff
27
       lfuse          0     0     0    0 no          1    1      0  4500  4500 0x00 0x00
28
       hfuse          0     0     0    0 no          1    1      0  4500  4500 0x00 0x00
29
       efuse          0     0     0    0 no          1    1      0  4500  4500 0x00 0x00
30
       lock           0     0     0    0 no          1    1      0  4500  4500 0x00 0x00
31
       calibration    0     0     0    0 no          1    1      0     0     0 0x00 0x00
32
       signature      0     0     0    0 no          3    1      0     0     0 0x00 0x00
33

34
     Programmer Type : usbasp
35
     Description     : USBasp, http://www.fischl.de/usbasp/

avrdude: auto set sck period (because given equals null) avrdude: error: program enable: target doesn't answer. 1 avrdude: initialization failed, rc=-1 Double check connections and try again, or use -F to override this check.

avrdude done. Thank you.

#7758801
Lesenswert?

Rainer W. schrieb:

Hightiger schrieb:

sowohl mit 16000Mhz Oszilator. Wie auch ohne probiert.

16GHz wird der µC nicht schaffen. Der ATmega328 wird ab Werk mit 1MHz getaktet (8MHz RC mit 1:8 Teiler). Dann ist der AVR-Dude mit seinem Default-Clock (IMHO 4MHz) wahrscheinlich zu schnell. Setze den SPI-Takt doch mal kräftig runter (1/4 vom µC-Clock).

ja stimmt 16GHz ist wahrlich zu schnell. 16MHz meinte ich selbsteverständlich.

Du meinst über die Baudrate ( -b ) Welcher Wert ist da zu empfehlen?

#7758806
Lesenswert?

Yalu X. schrieb:

Die Signature-Bytes der von Atmel/Microchip hergestellten MCUs beginnen immer mit 1E. Die der Clones vermutlich ebenso, sonst wären es keine Clones.

Entweder ist ein Clone-Hersteller doch so ehrlich und verwendet seine eigenen Signature-Bytes (was ich mir nicht so recht vorstellen kann), oder es gibt Fehler bei der Kommunikation.

Sind die gelesenen Bytes bei wiederholten Versuchen immer gleich?

tatsächlich nicht....

ich habe es ein paarmal rumprobiert. Hier ein paar Ergebnisse. Wobei jeder auch öfter vorkam.

Device signature = 0x666c61

Device signature = 0x2e6176

Device signature = 0x656570

#7758829
Lesenswert?

Rainer W. schrieb:

Hightiger schrieb:

sowohl mit 16000Mhz Oszilator. Wie auch ohne probiert.

16GHz wird der µC nicht schaffen. Der ATmega328 wird ab Werk mit 1MHz getaktet (8MHz RC mit 1:8 Teiler). Dann ist der AVR-Dude mit seinem Default-Clock (IMHO 4MHz) wahrscheinlich zu schnell. Setze den SPI-Takt doch mal kräftig runter (1/4 vom µC-Clock).

Geil!!! SPI Taxt durch (-B 4) runtergesetzt und schon hab ich eine Antwort von dem Teil.

C:.......\avrdude-6.4-mingw32>avrdude -c usbasp -p m328p -t -B 4

avrdude: set SCK frequency to 187500 Hz avrdude: AVR device initialized and ready to accept instructions

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

avrdude: Device signature = 0x1e950f (probably lgt8fx328p) avrdude> q

q

avrdude: safemode: Fuses OK (E:FF, H:D9, L:62)

avrdude done. Thank you.

und ich sehe die Fuse Einstellung. und kann sie ändern. und die Device signature = 0x1e950f beginnt jetzt auch mit 0x1e

Vielen Dank für die Untertützung!!!

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren