mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Atmega128 lesen geht, brennen nicht / ISP


Autor: Michael J. (michael_brk)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Hallo liebe uC-Gemeinde,
ich komme nicht weiter und finde keine Ideen
(weder im Netz noch in meinem Kopf :-) )

Habe ein neues Board gemacht mit einem Atmega128 drauf und will ihn über 
ISP programmieren. Ich benutze das Atmel Studio 7.0 (Updates scheints 
momentan keine zu geben).
Programmer: Diamex ISP (funktioniert mit anderem Atmega128!)

Ich kann beim neuen Atmega128 damit problemlos die Fuses lesen, den 
Speicher auslesen (ist halt leer, bekomme die Device-Info (z.B. Signatur 
0x1E9702) usw.

Sobald ich aber etwas schreiben will, gehts net. Bekomme Fehlermeldung:

"Unexpected signature 0x00000102 (expected 0x001e9702).
Unable to enter programming mode. Verify device selection, interface 
settings, target power, security bit, and connections to the target 
device."

- Versorgungspannung geprüft (4,7V aus Programmer an allen VCC-Pins.
- Reset geprüft, wird beim Brennversuch nach Masse gezogen
- Verbindungen von ISP zum Atmega gerprüft
- Alle GND-Anschlüsse geprüft
- Auch mit kleinerem Clock keine Änderung

Amsonsten hängt noch nichts am Atmega dran. (RTC DS3231 nur auch am 
Reset und I2C-Bus). Auf dem Board ist sonst nur der Atmega mit den 
100nF-Cs, den 10k-Rs (Reset) und 16MHz-Quarz mit jeweils 22pF.

Der Programmer sollte gehen. Wenn ich ein anderes Board (z.B. Atmega128 
von Alvidi) dran hänge, geht alles.

Was könnte sein? Was kann ich noch prüfen?
Oder sehe den Wald vor Bäumen nicht?

Danke für Ideen!

Gruß

Autor: Oliver S. (oliverso)
Datum:

Bewertung
-2 lesenswert
nicht lesenswert
Echt ein ATMega128, das Original aus der Jungsteinzeit?

Weil die Jungsteinzeit kompatibel mit der Altsteinzeit sein wollte, mimt 
der im Auslieferungszustand einen Mega103. Da solltest du nochmals auf 
die Fuses und die Einstellungen deines Programmers schauen.

Oliver

: Bearbeitet durch User
Autor: Michael J. (michael_brk)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@Oliver: Ja das M103C hätte ich gern geändert aber da hackts beim 
brennen.

Löschen des Memories scheint übrigens auch zu gehen. Das Atmel Studio 
bringt Erfolgsmeldung.

Nur die Fuses lassen sich nicht brennen und ein Programm eben auch 
nicht. Da kommt dann die Fehlermeldung.

Autor: S. Landolt (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> Löschen des Memories scheint übrigens auch zu gehen.
Ist damit 'chip-erase' gemeint? Wenn nein, dieses ausführen.

Autor: Michael J. (michael_brk)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@Landolt: Ja das geht. Hab ich auch schon 2 - 3 dreimal gemacht aber 
bringt keine Abhilfe. Sobald ich die Fuses brennen will oder ein 
Prgramm, gehts net. Komisch.

Autor: S. Landolt (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> Sobald ich die Fuses brennen will oder ein Prgramm, gehts net.
Das sieht eben nach gesetzten Lockbits aus, und diese lassen sich nur 
per 'chip-erase' zurücksetzen. Die Signatur allerdings muss immer lesbar 
sein, insofern ist mir das Verhalten des ATmega128 nicht ganz klar.

Autor: Ingo Tarzan (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Michael J. schrieb:
> - Versorgungspannung geprüft (4,7V aus Programmer an allen VCC-Pins.

Versorge ihn doch spasseshalber mal von aussen
mit "echten" 5 Volt. Also nicht vom Programmer.

Michael J. schrieb:
> Auf dem Board ist sonst nur der Atmega mit den
> 100nF-Cs, den 10k-Rs (Reset) und 16MHz-Quarz mit jeweils 22pF.

Ich sehe nur die leeren Flecken wo was drauf gehört.

Autor: Michael J. (michael_brk)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@Ingo: Das Foto ist noch "alt". Wollte damit nur zeigen, daß es ein 
"sauberer" Aufbau ist. Man weiß ja, was manche so zurechtlöten :-)

Ich mach gleich mal ne eigene VCC dran und berichte.

Gruß

Autor: Ingo Tarzan (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Michael J. schrieb:
> Wollte damit nur zeigen, daß es ein
> "sauberer" Aufbau ist.

Leider ist das bezüglich Prozessor nicht zu erkennen. Mach
doch mal ein grosses Foto, vielleicht Lötfehler?

Michael J. schrieb:
> RTC DS3231 nur auch am Reset und I2C-Bus

Pullups nicht vergessen, ein floatender Bus kann schwingen
bzw viel Strom brauchen. Kann ....

Autor: Michael J. (michael_brk)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Nein auch eine eine eigene Stromversorgung (5V) bringt keine Änderung.

Lesen z.B. der Fuses geht:

"Starting operation read registers
Reading register EXTENDED...OK
Reading register HIGH...OK
Reading register LOW...OK
Read registers...OK"

Löschen des Memories: "Erasing device... OK"

aber brennen der Fuses (egal wie die eingestellt sind):

"Timestamp:  2018-04-12 17:10:33.002
Severity:  ERROR
ComponentId:  20100
StatusCode:  131101
ModuleName:  TCF (TCF command: Device:startSession failed.)

Unexpected signature 0x00000102 (expected 0x001e9702)."

Autor: Michael J. (michael_brk)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Pullups (10K) sind dran.

Autor: S. Landolt (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
"Reading ... OK" - na prima, aber was steht denn in den diversen 
Fusebytes drin?

(Ich muss allerdings zugeben, dass ich rein gar nichts hier habe, keinen 
ATmega128, keinen Diamex, nicht mal das Studio 7)

Autor: S. Landolt (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
PS:
Und natürlich ist von besonderem Interesse der Inhalt des 
Lock-Bit-Bytes.

Autor: Michael J. (michael_brk)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Hier mein Aufbau (ist nur ein Probeaufbau) und die Fuses gelesen.
Selbstverständlich steht da noch der Unsinn mit dem M103 drin.
Um das zu ändern müsste das schreiben gehen.

Autor: Michael J. (michael_brk)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Achja ... Lockbits

Sollte doch alles gehen oder?

Bei einem Alvidi den ich hier habe sieht alles genauso aus meine ich und 
den kann ich ohne Probleme brennen.

: Bearbeitet durch User
Autor: Ingo Tarzan (Gast)
Datum:

Bewertung
1 lesenswert
nicht lesenswert
Michael J. schrieb:
> Hier mein Aufbau (ist nur ein Probeaufbau)

Ja danke schaut gut aus :)

Autor: S. Landolt (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Da wurde aber doch schon einmal geschrieben, das Fuse-High-Byte steht 
auf 0x91, Auslieferungszustand ist jedoch 0x99. Merkwürdig.

Autor: Pete K. (pete77)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ist evtl. Deine ISP Frequenz zu hoch?

Autor: Michael J. (michael_brk)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@Landolt: bei dem neuen Atmega steht auch 0x91 drin.

Was mir zwischenzeitlich aufgefallen ist:

Wenn ich beim flashen "Erase device before programming" ausschalte, kann 
ich zumindest den Flash brennen, also ein Programm laden.

Nur die Fuses gehen nicht. Da kommt immer noch die Fehlermeldung.

Autor: Michael J. (michael_brk)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@Pete: hab ich schon mal probeweise runtergesetzt und alle möglichen 
ausprobiert. Ohne Erfolg.

Autor: Pete K. (pete77)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Du hast Atmega128A im Programmer eingestellt, bekommst aber als 
Device-ID ein Atmega128 zurückgemeldet??

Autor: Michael J. (michael_brk)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Das scheint egal zu sein. Hab schon ohne A probiert.
Beim Alvidi ist das auch egal ob A oder nicht A, da gehts auch immer.
Hab gerade wieder nochmal ohne A probiert, ändert sich aber nichts.

: Bearbeitet durch User
Autor: S. Landolt (Gast)
Datum:

Bewertung
1 lesenswert
nicht lesenswert
Es interessiert nur die Signatur, die ist beide Male 1E 97 02.

Autor: Michael J. (michael_brk)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Genau und so wie ich das verstehe, bekommt er irgendwoher eine falsche, 
diese "0x00000102".

"Unexpected signature 0x00000102 (expected 0x001e9702)."

Aber woher? Irgendwas ist falsch.

Autor: S. Landolt (Gast)
Datum:

Bewertung
1 lesenswert
nicht lesenswert
Ist die Reset-Verbindung in Ordnung? Könnte es sein, dass der DS3231 
Unsinn auf diese Leitung gibt?

Autor: Rudolph R. (rudolph)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Michael J. schrieb:
> und 16MHz-Quarz mit jeweils 22pF.

Ist jetzt nichts zum Problem, aber wenn Du den Takt genau brauchst ist 
das ziemlich sicher nicht korrekt.
Die HC49/U-S Quarze die mir bisher so untergekommen sind hatten 
mehrmeheitlich ein Cl von 32pF oder 30pF, aber nicht 12pF, da wären 
2x56pF passender.

Autor: Michael J. (michael_brk)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi liebe Leute,

Fall offensichtlich gelöst.
Habe mal eine zweite Platine bstückt aber nur den Atmega128 mit Quarz, 
Widerstände und C's und siehe da, alles geht ohne Probleme!

Es ist wohl tatsächlich so wie "Landolt" sagt, das der RTC DS3231 
irgendein komisches Zeug auf der Resetleitung macht und die Signatur 
"verbiegt".
Daran muß ich nochmal arbeiten.

Vielen Dank für alle Hinweise!

Schönes Wochenende und Gruß an alle!

Mike

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.