Avrdude chip signatur Atmega644P

Gast #2913106
Lesenswert?

Hi Leute

Wollte gerade bei einem Atmega644P die Fuses setzen da kommt diese 
Meldung:
1
avrdude.exe: warning: cannot set sck period. please check for usbasp firmware update.
2
avrdude.exe: AVR device initialized and ready to accept instructions
3

4
Reading | ################################################## | 100% 0.01s
5

6
avrdude.exe: Device signature = 0x1e960a
7
avrdude.exe: Expected signature for ATMEGA644 is 1E 96 09
8
             Double check chip, or use -F to override this check.
9

10
avrdude.exe done.  Thank you.

Ich benutze:

-Windows 7
-avrdude (wie man sieht)
-AVR8 Burn-O-Mat v2

Hat jemand einen tipp?

chrys
Gast #2913130
Lesenswert?

Die Meldung ist völlig i.O.
Du verwendest einen ATMega644P mit der Signatur 0x1e960a.
Mit deinem Burn-O-Mat willst du aber einen ATMega644 programmieren mit 
der Signatur 0x1e9609.
Burn-O-Mat kenne ich nicht. AVRDude allein verwenden und in dem 
Config-File das Signature-Bite ändern.
Gast #2913133
Lesenswert?

Ok und wie stell ich das genau an? Ich weiss ich stell mich blöd an aber 
benutze normalerweise ubuntu zum basteln ... nur weiss ich nicht wie man 
im Linux die Fuses schreibt.
Wie geht das in der Windows Konsole?
Gast #2913213
Lesenswert?

Im XML steht aber nirgends die Signatur

Code für 644:
1
<AVR name="m644" caption="ATmega644">
2
  <Fuse name="UNUSED_E7" bit="7" fuseByte="efuse" default="1" desc="unused" mode="expert" /> 
3
  <Fuse name="UNUSED_E6" bit="6" fuseByte="efuse" default="1" desc="unused" mode="expert" /> 
4
  <Fuse name="UNUSED_E5" bit="5" fuseByte="efuse" default="1" desc="unused" mode="expert" /> 
5
  <Fuse name="UNUSED_E4" bit="4" fuseByte="efuse" default="1" desc="unused" mode="expert" /> 
6
  <Fuse name="UNUSED_E3" bit="3" fuseByte="efuse" default="1" desc="unused" mode="expert" /> 
7
  <Fuse name="BODLEVEL2" bit="2" fuseByte="efuse" default="1" desc="Brown out detector trigger level" /> 
8
  <Fuse name="BODLEVEL1" bit="1" fuseByte="efuse" default="1" desc="Brown out detector trigger level" /> 
9
  <Fuse name="BODLEVEL0" bit="0" fuseByte="efuse" default="1" desc="Brown out detector trigger level" /> 
10
  <Fuse name="OCDEN" bit="7" fuseByte="hfuse" default="1" desc="Enable OCD (on chip debug)" mode="expert" /> 
11
  <Fuse name="JTAGEN" bit="6" fuseByte="hfuse" default="0" desc="Enable JTAG" mode="expert" /> 
12
  <Fuse name="SPIEN" bit="5" fuseByte="hfuse" default="0" desc="Enable Serial Program and Data Downloading" mode="expert" /> 
13
  <Fuse name="WDTON" bit="4" fuseByte="hfuse" default="1" desc="Watchdog timer always on" /> 
14
  <Fuse name="EESAVE" bit="3" fuseByte="hfuse" default="1" desc="EEPROM memory is preserved through the Chip Erase" /> 
15
  <Fuse name="BOOTSZ1" bit="2" fuseByte="hfuse" default="0" desc="Select Boot Size (see Table 82 for details)" /> 
16
  <Fuse name="BOOTSZ0" bit="1" fuseByte="hfuse" default="0" desc="Select Boot Size (see Table 82 for details)" /> 
17
  <Fuse name="BOOTRST" bit="0" fuseByte="hfuse" default="1" desc="Select Reset Vector" /> 
18
  <Fuse name="CKDIV8" bit="7" fuseByte="lfuse" default="0" desc="Devide clock by 8" /> 
19
  <Fuse name="CKOUT" bit="6" fuseByte="lfuse" default="1" desc="Clock output" /> 
20
  <Fuse name="SUT1" bit="5" fuseByte="lfuse" default="1" desc="Select start-up time" /> 
21
  <Fuse name="SUT0" bit="4" fuseByte="lfuse" default="0" desc="Select start-up time" /> 
22
  <Fuse name="CKSEL3" bit="3" fuseByte="lfuse" default="0" desc="Select Clock source" /> 
23
  <Fuse name="CKSEL2" bit="2" fuseByte="lfuse" default="0" desc="Select Clock source" /> 
24
  <Fuse name="CKSEL1" bit="1" fuseByte="lfuse" default="1" desc="Select Clock source" /> 
25
  <Fuse name="CKSEL0" bit="0" fuseByte="lfuse" default="0" desc="Select Clock source" /> 
26
- <BrownOutDetection>
27
  <Fuse name="BODLEVEL2" /> 
28
  <Fuse name="BODLEVEL1" /> 
29
  <Fuse name="BODLEVEL0" /> 
30
  <Setting caption="disabled" Fuse1="1" Fuse2="1" Fuse3="1" /> 
31
  <Setting caption="1.8V (1.7V - 2.0V)" Fuse1="1" Fuse2="1" Fuse3="0" /> 
32
  <Setting caption="2.7V (2.5V - 2.9V)" Fuse1="1" Fuse2="0" Fuse3="1" /> 
33
  <Setting caption="4.3V (4.1V - 4.5V)" Fuse1="1" Fuse2="0" Fuse3="0" /> 
34
  </BrownOutDetection>
35
  <OscillatorOptions Type="ATmega48" /> 
36
  </AVR>
Gast #2918401
Lesenswert?

Hallo zusammen,

vielleicht kann mir (totaler Laie in Sachen Prozessor flashen) jemand 
weiterhelfen....

bei mir kommt beim Setzen der Fuses mit avrdude die folgende Meldung:

C:\avrdude\avrdude -c ponyser -p m644p -P com1 -u -U lfuse:w:0xD7:m -F

avrdude: AVR device not responding
avrdude: initialization failed, rc=-1
avrdude: AVR device initialized and ready to accept instructions
avrdude: Device signature = 0x000000
avrdude: Yikes! invalid device signature
avrdude: Expected signature for ATMEGA644P is 1E 96 0A

avrdude done.

Danke Alex
Gast #2918713
Lesenswert?

Guten Morgen,

Programer - das Teil hat ne Ponyprog-Schnittstelle.

Keine Spannung am AVR: diese Möglichkeit habe ich auch schon in Erwägung 
gezogen. Aber an welchen Pins kann ich das nachmessen? Multimeter hab 
ich zur Verfügung.

Danke für eure Hilfe.

Alex
#2934711
Lesenswert?

chrysator schrieb:
> Ok und wie stell ich das genau an? Ich weiss ich stell mich blöd an aber
> benutze normalerweise ubuntu zum basteln ... nur weiss ich nicht wie man
> im Linux die Fuses schreibt.

Unter Linux kann man die Fuses zum Beispiel so setzen:
1
avrdude -p m644p -c avr910 -P /dev/ttyUSB0 -U hfuse:w:0x99:m
2
avrdude -p m644p -c avr910 -P /dev/ttyUSB0 -U lfuse:w:0x62:m
Statt avr910 deinen Programmer einsetzen. Und dann natuerlich die Fuses 
im Datenblatt nachschauen (Kapitel Memory Programming) und die korrekten 
Hexadezimalwerte (statt 0x99 und 0x62) entsprechend einsetzen.

Oder mit Verwendung eines Makefiles so:
1
make fusesetzen
Ich habe letzthin mal eine Homepage eingerichtet wo das alles 
beschrieben ist:
http://www.rolfp.ch/elektronik/avr/#makefiles

Alex schrieb:
> habe mal an den Prozessor-Pins gegen Gnd gemessen. An einigen liegen 5V
> an einigen weniger und an ein paar gar keine Spannung an.

Die 5V muessen an den Pins VCC und AVCC anliegen. Die entsprechenden 
Pin-Nummern findet man im Datenblatt. Wichtig ist auch noch dass beide 
GND-Pins wirklich mit Gnd verbunden sind.


Rolf

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