Problem beim Proggen von ATmega644PU

Flash Verify Errof

  • 1
  • 2
  • Page 1 of 2
Gerrit
 
Avatar
 
Subject:

Problem beim Proggen von ATmega644PU

 · 
Posted: 14.12.2014 - 16:47  ·  #1
Moinsen!

Ich hab da grade ein Problem mit der Programmierung eines ATMega644P.

Der Controler ist noch unbenutzt (frisch aus der Verpackung)

Wenn ich jetzt das Programm in den Controler schreiben will kommt die Meldung:

Flash: Verify Error @ $0000

Ein Device-Errase über den Programmer hat nichts gebracht. Die Adresse des Verify-Errors ändert sich auch wenn ich zuvor das Flash aus dem Controler eingelesen habe.

Üüüpsss - und seit grade eben verweigert sich das Teil zur Gänze (Falsche Device-ID (000000), ATMega644p erwartet).

Hab den Programmer grad eben nochmal mit einem anderen Projekt und Controler (Atmega32) getestet - da arbeitet er einwandfrei. Am Programmer liegts also nicht. Ich hab den 644er auch in einer anderen Hardware getestet (Minimalsystem) - gleiches Verhalten. Platine/Schaltung ist es also auch nicht.

Hat jemand da vielleich eine Idee, was da hakt.

Viele Grüße

Gerrit


P.S.:

Hier sind die entsprechenden Fuse-Bits:


Code
Define_Fuses
//  Override_Fuses;
  NoteBook   = A;
  COMport    = USB;
  LockBits0 = [];
  FuseBits0  = [CKSEL0, CKSEL2, CKSEL3, SUT0, CKDIV8];
  FuseBits1  = [SPIEN];
  FuseBits2  = [];
  ProgMode   = SPI;
Gunter
Administrator
Avatar
Gender:
Location: Frankfurt Main / Germany
Posts: 1697
Registered: 02 / 2003
Subject:

Re: Problem beim Proggen von ATmega644PU

 · 
Posted: 14.12.2014 - 19:30  ·  #2
Hi Gerrit,
verify error @$0000 heisst zu 99,999% Takt zu hoch, Kabel zu lang, Belastung der Programmierpins zu hoch.
Also irgenwie ist keine (keine saubere) Kommunikation möglich.
Wenn sich die Adresse $0000 immer wieder ändert: immer "SPI Takt zu hoch"
Ergänze zunächst

Define Fuses
...
SPIclk = 1000000; // optional SPI programming speed

Dann den Chip nur löschen.
Dann bei den Fuses mehrmals hintereinander "Refresh" (=read Fuses). Das muss stabil gelesen werden.
Dann setz deine Fuses dort selber und lies die wieder ein.
Dann SPIclk auskommentieren

Gruß
Gunter
rh
Administrator
Avatar
Gender:
Location: Germany
Age: 24
Homepage: e-lab.de
Posts: 5558
Registered: 03 / 2002
Subject:

Re: Problem beim Proggen von ATmega644PU

 · 
Posted: 14.12.2014 - 20:15  ·  #3
Hi,

und vor allem das CKDIV8 ist da gefährlich, ergibt ext. Clock/8 !!!

rolf

Edit Ergänzung Gunter:
und der AVRco weiss davon nichts und geht zur Berechnung des SPI-Takt von dem hohen
Prozessor Takt aus. D.h.: plant man die CKDIV8 zu aktivieren darf man nur die daraus
resultierende Frequenz als ProcClock angeben.
Gerrit
 
Avatar
 
Subject:

Re: Problem beim Proggen von ATmega644PU

 · 
Posted: 15.12.2014 - 19:26  ·  #4
Moin Rolf,
moin Gunter!

Danke für die Antwort, werde ich im Laufe der Nacht mal probieren.

Was mich allerdings wundert ist, daß ein ATmega32 in der gleichen Hardware, in der zuvor der 644er gesteckt hat, wunderbar programmiert werden kann (natürlich mit einem anderen Projekt).

Also: Danke nochmal für die Tips, ich probiers aus und gebe mal Rückmeldung

Viele Grüße

Gerrit
Gunter
Administrator
Avatar
Gender:
Location: Frankfurt Main / Germany
Posts: 1697
Registered: 02 / 2003
Subject:

Re: Problem beim Proggen von ATmega644PU

 · 
Posted: 15.12.2014 - 21:00  ·  #5
Hi,
der Mega32 hat keine CKDIV8

Gunter
Gerrit
 
Avatar
 
Subject:

Re: Problem beim Proggen von ATmega644PU

 · 
Posted: 15.12.2014 - 22:23  ·  #6
Moin Gunter!

Stimmt, hat er nicht. Aber zumindest konnte ich durch den Versuch die Hardware an sich (PIN-Last etc.) ausschließen :D - das hatte ich aber eigentlich auch erwartet da mir Freund Oskar nicht auffälliges zeigte.

Ich hatte bei dem 644er - Projekt die Flags im Großen und Ganzen so gelassen wie vom Assistenten vorgegeben.

Da mir das alles keine Ruhe gelassen hat habe ich dann grade eben mal versucht Eure Tips umzusetzen. Allerdings scheint's jetzt den 644er gekillt zu haben. Bekomme immer die Meldung "falsche Device-ID (000000)". Leider habe ich im Moment keinen zweiten 644er da - muß ich erst bestellen (ich wäre ja sogar zum großen C in Hamburg gefahren - obwohl ich das "C" eigentlich meide - aber die haben den ja nicht in DIL-Ausführung...) ;)

Viele Grüße

Gerrit

Gerrit
Gunter
Administrator
Avatar
Gender:
Location: Frankfurt Main / Germany
Posts: 1697
Registered: 02 / 2003
Subject:

Re: Problem beim Proggen von ATmega644PU

 · 
Posted: 15.12.2014 - 22:52  ·  #7
vermutlich versehentlich auf "external clock" gesetzt!
Wenn du einen Quarzoszillator mit 1 oder 2 MHz oder so hast, speise mal einen externen Takt an Pin XTAL1 ein.
Damit konnten viele schon die Fuses ihrer CPU wieder korrigieren. Wenn allerdiens SPIEN gelöscht ist, wird's komplizierter.

und Prozessoren kauft man (bei den Preisen) immer ein paar auf Reserve !!!

edit:
und wenn er "verfust" ist, wird der der Grund deutlich, dass ich immer empfehle:
zuerst nur die Fuses LESEN. Wenn das schon nicht sauber geht ist jeder Versuch zu
Programmieren gefährlich -> du weisst dann nicht, was im Controller ankommt.
Gerrit
 
Avatar
 
Subject:

Re: Problem beim Proggen von ATmega644PU

 · 
Posted: 15.12.2014 - 23:08  ·  #8
Moin Gunter!

'Nen 1Mhz Oszi hätte ich da. Müßte mir ne kleine Platine dazu machen - da komme ich aber erst morgen zu, muß heute erst noch etwas proggen (soll ja Butter auf's Brot kommen... ;) )

Den Tip mit dem Auslesen der Fuses vor dem Schreiben sollte (und werde) ich zukünftig doch besser beherzigen.

Und ja, Du hast Recht, bei den heuten Preisen sollte man die µC immer gleich mehrfach kaufen (meinen Butter- und Brot µC mega32 hab ich immer reichlich da). Hier hab ich halt mal wieder am verkehrten Ende gespart da ich nur mal was ausprobieren wollte...

Viele Grüße

Gerrit
  • 1
  • 2
  • Page 1 of 2
Selected quotes for multi-quoting:   0

Registered users in this topic

Currently no registered users in this section

The statistic shows who was online during the last 5 minutes. Updated every 90 seconds.
MySQL Queries: 15 · Cache Hits: 14   137   151 · Page-Gen-Time: 0.02455s · Memory Usage: 2 MB · GZIP: on · Viewport: SMXL-HiDPI