Programmierung Xmega u. Dragon

Gast #3214087
Lesenswert?

Hi Leute,

hab heute etwas sehr merkwürdiges gehabt. Ich versuche mit einem Dragon 
meinen Xmega zu programmieren. Die Betonung liegt auf versucht;-)

Es lässt sich die ID und alle Fuses einwandfrei auslesen. Achja genau, 
ich programmiere mit JTAG, der 128er geht ja nicht mit PDI.

Wenn ich ihn im Debugmodus laufen lasse, geht es auch einwandfrei.
Nur wenn ich das Programm einfach draufprogrammieren will, hat er beim 
Abgleich Fehler. Also entweder ist alles mit 0xFF oder  0x00 
volgeschrieben. Nur einmal hat er den FEhler nicht an der ersten 
Speicherstelle gemeldet, sondern erst nach ein paar Tausend.

Hat da jemand ne Idee?
Moderator Persönliche Seite #3214301
Lesenswert?

Florian_unbekannto schrieb:
> Frequenz am Dragon kann man nicht verstellen.oder?

Selbstverständlich kann man. Allerdings ist es eher andersrum: zum
reinen Programmieren darf man relativ schnell sein (was das Kabel
so hergibt, mehr als etwa 10 cm sollte man beim Dragon vermeiden),
während man beim Debuggen unter F_CPU/4 bleiben muss.

Ansonsten kannst du noch eine serielle Terminierung des Kabels
ausprobieren: jeweils an der Signalquelle einen 100-Ω-Widerstand
reinlöten. U. U. hilft es auch schon, das erstmal nur bei TCK zu
probieren.
Gast #3214393
Lesenswert?

Florian_unbekannto schrieb:
> Frequenz am Dragon kann man nicht
> verstellen.oder?

Ich kann mich dunkel entsinnen, dass es im 4er Studio jedenfalls ging... 
Welche Software nutzt Du? Atmel Studio? Version?
Aber bei 10cm Leitungslänge sollte es eigentlich nicht an der 
Geschwindigkeit liegen.

> Läuft das über verschiedene Leitungen? Debuggen und programmieren?

Bei den Xmega mit JTAG oder PDI nicht.

Zum Thema Dragon gibt's bekannte Probleme beim aktuellen Studio und PDI, 
da Du aber JTAG nutzt, trifft das wohl auch nicht zu.
Gast #3214476
Lesenswert?

Hi,

also ich nutze die neueste Firmware und Studio 6.
Habe die Leitung nochmal um gut 5 cm gekürzt. Daran kann es nict liegen. 
Mit dem gleichen Programmer und Kabel kann ich auch einen anderen Xmega 
128a1 einwandfrei programmieren.
Die Clock und andere Signale sehen auf dem Oszi jetzt auch nicht zu 
Kacke aus...
Habe nur den nackten Xmega und die Blockkondensatoren drauf und 
dtrotzdem will eer nicht. Resetleitung habe ich hauch schon mit/ohne 
Pullup und Kondensator probiert.

Allerdings habe ich jetzt das Problem bzw die Beobachtung gemacht, dass 
zwar der Debugger angeht, aber an den IOs nichts passiert, was 
eigentlich laut programm passieren sollte. zb PortA an oder so.

Belegung habe ich auch schon tausendmal gecheckt.

Kann der kaputt sein, obwohl ich die DeviceID lesen kann?
Moderator Persönliche Seite #3215115
Lesenswert?

Florian_unbekannto schrieb:
> was sind diese terminierungswiderstände?

Längswiderstände in der Leitung (du musst also eine Ader des Kabels
auftrennen dafür), möglichst nahe an der Signalquelle.

Florian_unbekannto schrieb:
> Kann der kaputt sein, obwohl ich die DeviceID lesen kann?

Das ist allerdings unwahrscheinlich.  Zumindest den Flash auslesen
müsstest du auf jeden Fall noch können.  Was höchstens kaputt gehen
kann wäre die internen Programmierspannungserzeugung, dann ließe
sich einfach gar nichts mehr löschen oder programmieren.
Gast #3215244
Lesenswert?

Hi,

habe jetzt den 100 ohm in die tck leitung reingebaut.Hat leider nichts 
gebracht. Ich habe noch eine zweite Platine geschickt bekommen. Habe das 
alles nochmal aufgebaut. Da geht es. Gleiches Layout alles gleich.

Kann einfach nicht sein....

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