PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Atmega 1284 lässt sich nicht flashen



demmy
13.12.2015, 22:57
Hi zusammen,

ich habe wie der Titel schon sagt ein seltsames Problem.
Ich habe hier zwei neue Atmega1284 liegen die sich beide nicht flashen lassen.
Die Fuses sind richtig eingestellt, die Chip-Id lässt sich ebenfalls auslesen, nur jedes mal wenn ich versuche ein Hex-File zu flashen bekomme ich beim verifizieren die Fehlermeldung "Chip differs at bytes address: 00000".

Ich kann den Flash auslesen und da steht was komplett anderes drin, also ich gehe davon aus das beim flashen überhaupt nichts in den Flashspeicher geschrieben wurde.

Ich habe es versucht per ISP direkt in der Schaltung und die IC's direkt in den Programmer zu stecken!

Sind die Dinger einfach nur kaputt oder gibt's da noch was das ich übersehen habe?

Bisher hat das flashen immer mit allen µC funktioniert.

Ich stehe gerade etwas auf dem Schlauch und hoffe Ihr könnt mir helfen?

Viele Grüße

oberallgeier
13.12.2015, 23:44
.. neue A.. liegen die sich beide nicht flashen lassen ..Kommt mir irgendwie bekannt vor, wird aber vermutlich bei Dir nicht der gleiche Grund sein. Mir ist es ne Weile ähnlich gegangen - ich konnte manchmal "heile" Controller ums v.....n nicht flashen. Bei mir lag der Grund am Programmer (pololu USBAVRprogrammer) bei dem ein PIC mit ner sagenhaft guten Software werkelt. Leider kann man in der Config des Programmers die Höhe der Mindestversorgungsspannung einstellen, bei der (noch) programmiert wird . . . wenn die tatsächliche Spannung, aus welchen Gründen, dann geringer ist, wird einfach nicht geflasht.

Fazit/Tip:
Mal Versorgungsspannung prüfen, natürlich auch die Programmierfrequenz - ein Viertel der Taktrate . . .

demmy
14.12.2015, 18:15
Hi,

also bisher haben sich immer alle avr's einwandfrei programmieren lassen.
Die Versorgungsspannung hab ich gemessen die passt.
Das komische ist eben, das sie sich nicht einmal programmieren lassen wenn ich sie in den Programer stecke, aber alles andere geht.
Also das heißt wohl in die Tonne mit den Dingern.
Oder habt Ihr noch ne andere Idee was das sein kann?

shedepe
15.12.2015, 13:02
Was für einen Programmer verwendest du ? Und auf was hast du die Fuses eingestellt ?

demmy
17.12.2015, 19:03
Hi,
also ich habe einen myavr MKII Programmer.
Ich weiß das ist kein Profiteil, aber bisher hatte ich noch nie ein Problem und ich konnte alle avrs programmieren.
Die Fuses habe ich so eingestellt:

31044

shedepe
18.12.2015, 11:59
Mhh ohne jetzt ins Datenblatt geschaut zu haben. Es gibt einige Atmel Controller die nicht über ISP sondern über PDI (oder ein komische Mischung) programmiert werden.
Ansonsten wäre mein Vorschlag (ich glaube der Atmega1284 ist ein ziemlich neuer Chip) schau doch mal ob du für deinen Programmer und deine PC Software ein Update findest.

oberallgeier
18.12.2015, 13:31
.. ohne jetzt ins Datenblatt geschaut .. Controller die nicht über ISP sondern über PDI .. Atmega1284 ist ein ziemlich neuer Chip ..Mein ältestes Datenblatt vom 1284er ist von Jan 2010, das neueste von Jan 2015. Seit 2010 flashe ich die 1284er ohne jegliche Probleme per ISP (siehe oben) (https://www.roboternetz.de/community/threads/68418-Atmega-1284-l%C3%A4sst-sich-nicht-flashen?p=621970&viewfull=1#post621970). Von fabrikfrisch mit 8MHz-intern-CKDIV8 bis 20 MHz bei Ext. Crystal Osc. 8.0- . ISP-Frequ. von 4 kHz bis 2 MHz.

demmy
18.12.2015, 18:38
Heißt das also das die 1284er vor 2010 nur mit PDI zu flashen waren?
Kann ich an dem µC irgendwie erkennen von wann der ist?

Hubert.G
18.12.2015, 19:05
Der 1284P wird über MISO, MOSI und SCK geflasht, keine Sonderbelegung.
Quarz ist richtig dran?

demmy
18.12.2015, 19:58
ja, davon gehe ich aus.

sonst könnte ich doch auch keine fuses oder die chip-id auslesen oder?

Hubert.G
18.12.2015, 20:18
ja, davon gehe ich aus.

sonst könnte ich doch auch keine fuses oder die chip-id auslesen oder?

Sollte so sein.
Spannung sicher stabil bei 5V, nicht das BOD beim schreiben zuschlägt.
Sonst sehe ich keinen Fehler, das aber gleich 2 defekt sind kann ich nicht ganz glauben.