ATMega2560: Verify Fehler bei Flashen eines Hex-Files > 128 kByte

#4279030
Lesenswert?

Hallo Forum,

ich habe hier schon sehr viel mitgelesen und gelernt, herzlichen Dank!

Jetzt möchte ich auf einen ATMega2560 mehr als 128 kByte Programm 
flashen (mit Audio-Daten). Ich habe verstanden, daß ich __flash oder 
__memx verwenden muß und habe damit die 64 kByte Hürde genommen.

1
static const unsigned long pcm0_length=32766;
2
 
3
static const __memx unsigned char pcm0_samples[] ={
4
139,146,141,143,144,145,142,138,137,136,137,137,136,
5
...
6
};
7

8
static const unsigned long pcm1_length=32766;
9

10
static const __memx unsigned char pcm1_samples[] ={
11
137,133,147,
12
...
13
};
14
...

Ich compiliere und linke mit Eclipse unter Linux, weil der GCC des 
Windows AVR Studio __flash und __memx noch nicht kennt.

Wenn ich mehr als 128 kByte flashen will, scheitert das verify:

avrdude:   verification error, first mismatch at byte 0x0000
avrstudio: Verify stoppt mit Timeout

Hat jemand einen Tipp für mich?


Hartmut
Gast #4279366
Lesenswert?

Hartmut S. schrieb:
> Ich compiliere und linke mit Eclipse unter Linux, weil der GCC des
> Windows AVR Studio __flash und __memx noch nicht kennt.

Da heisst das Makro ja auch PROGMEM oder so, um Daten ins Flash zu 
schreiben.

AVRdude sollte das können, da es auch von der Arduino-IDE zum 
Beschreiben und verifizieren der großen ATmegas verwendet wird.
#4279601
Lesenswert?

Hallo,

das verwendete avrdude 6.0.1 ist unverdächtig, weil es ja mit dem AVR 
Studio auch klemmt und das Windows AVR Studio genutzt doch zum Flashen 
nicht avrdude ?!?

PROGMEM hatte ich auch schon versucht, gleicher Effekt. PROGMEM ist, 
wenn ich das richtig verstanden habe, eine ältere Methode für den 
Zugriff auf mehr als 64 kByte, __flash und __memx sind moderner.

Jetzt habe ich meinen alten Eigenbau-Parallelport-Bit-Banging Adapter 
als STK200 mit avrdude benutzt, und es funktioniert!

Also liegt es an meinem "DIAMEX USB ISP-Programmer Stick".

Ich werde mal bei DIAMEX anfragen.


Hartmut

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