Forum: Mikrocontroller und Digitale Elektronik XMEGA stoppt nach Abziehen der ICE


von Christoph M. (chrito)


Lesenswert?

Hallo Leute,

bin etwas ratlos. Habe hier einen Atxmega64a3u. Mit Atmel ICE 
funktioniert alles problemlos, ziehe ich die ICE ab, dann stoppt das 
Programm nach einigen Sekunden. Bei Neustart ohne Programmer läuft es 
kurz an, bleibt dann wieder hängen.

Spannung ist sauber, PDI-Anschluss nach Standard, und auch Fuses (BOD 
mit 2,4V o.ä. bringt nichts).

Hat zufällig jemand einen Tipp? Ein Pullup muss ja an den Reset nicht 
dran, oder doch?! Danke!

Christoph

von Curby23523 N. (Gast)


Lesenswert?

Eventuell Watchdog deaktivieren bzw. in der Main Loop immer wieder 
reseten?

von Jens D. (jens) Benutzerseite


Lesenswert?

Printf in Benutzung?
Wenn printf über jtag geschoben wird und der Fifo voll ist blockiert der 
Controller.
Zumindest ist das je nach Einstellung beim Cortex je nach dem der Fall

von Jim M. (turboj)


Lesenswert?

Fehlerhafte GND Verbindung könnte auch ein Grund sein, der Debugger 
liegt ja normalerweise auf PE.

von Curby23523 N. (Gast)


Lesenswert?

Christoph M. schrieb:
> Ein Pullup muss ja an den Reset nicht
> dran, oder doch?! Danke!

So weit ich weiß schon, habe ich immer so gemacht. Das ist auch beim 
Xmega nicht anders und der ist nicht integriert glaube ich.

von Bastian W. (jackfrost)


Lesenswert?

Hi,

ich hab bei meinen xMega Platinen auch immer einen Pullup an Reset dran.

Kannst dir ja einfach einen 4k7 Widerstand an zwei Drähte mit zwei 
Printbuchsen löten und denn dann an den PDI Anschluss stecken.

Dann siehst du ganz schnell ob es daran lag.

Hängt es immer nach der "gleichen" Zeit ?

Hast du die Möglichkeiten über eingebaute LEDs zu debuggen, so das sie 
sehen kannst wo der xMega ohne den ICE hängt ?

Gruß JackFrost

von Timmy (Gast)


Lesenswert?

Ich habe schon ein Duzend Designs mit xmega erstellt, auch direkt mit 
Schaltregler nebenan, wo ich schon dachte, das wird Probleme geben. 
Bisher hat mir der xmega noch nie Ärger gemacht. Wie lang ist denn deine 
Zuleitung zum Reset-Pin? Bei meinen Designs sinds immer nur einige mm 
bis max. 1 cm. Wenn du allerdings aus irgendwelchen Gründen eine lange 
Antenne baust, dessen Pegel bei einem abgezogenen ICE nur noch durch den 
internen PullUp gehalten wird, würde ich mal einen 100nF dransetzen.

von Timmy (Gast)


Lesenswert?

Ein C bringt übrigens 1000 mal mehr als ein niederohmiger PullUp. Der 
Grund sollte eigentlich klar sein.

Beitrag #5263797 wurde von einem Moderator gelöscht.
Beitrag #5263826 wurde von einem Moderator gelöscht.
Beitrag #5263828 wurde von einem Moderator gelöscht.
von Hugo (Gast)


Lesenswert?

Timmy schrieb:
> Ein C bringt übrigens 1000 mal mehr als ein niederohmiger PullUp.
> Der
> Grund sollte eigentlich klar sein.

Dann viel Spaß beim Flashen. Wenn der Programmer das "C" umladen, also 
den Reset toggeln will. Da wirst Du dumm schauen. Der Grund sollte 
eigentlich klar sein...

Beitrag #5263835 wurde von einem Moderator gelöscht.
Beitrag #5263836 wurde von einem Moderator gelöscht.
von Timmy (Gast)


Lesenswert?

Wenn der Programmer zu schwach ist, dann soll er halt einen kleineren C 
nehmen. Immernoch besser als die paar pF, die sonst da wären. Mein 
Chinaprogrammer packt das.

von Andreas B. (bitverdreher)


Lesenswert?

Timmy schrieb:
> Wenn der Programmer zu schwach ist, dann soll er halt einen kleineren C
> nehmen. Immernoch besser als die paar pF, die sonst da wären. Mein
> Chinaprogrammer packt das.

Glück gehabt. Schön für Dich.

von Christoph M. (chrito)


Lesenswert?

Ok, hab den Fehler gefunden:
Es liegt doch nicht an der ICE, manchmal schmiert er auch damit ab. Es 
ist ein Fehler im Programm, wodurch der Controller in einer Schleife 
hängen bleibt.

Danke für eure Tipps!
VG

von Curby23523 N. (Gast)


Lesenswert?

Christoph M. schrieb:
> Ok, hab den Fehler gefunden:
> Es liegt doch nicht an der ICE, manchmal schmiert er auch damit ab. Es
> ist ein Fehler im Programm, wodurch der Controller in einer Schleife
> hängen bleibt.
>
> Danke für eure Tipps!
> VG

Und wie hast du das gefunden?

von Christoph M. (chrito)


Lesenswert?

Nils N. schrieb:
> Christoph M. schrieb:
>> Ok, hab den Fehler gefunden:
>> Es liegt doch nicht an der ICE, manchmal schmiert er auch damit ab. Es
>> ist ein Fehler im Programm, wodurch der Controller in einer Schleife
>> hängen bleibt.
>>
>> Danke für eure Tipps!
>> VG
>
> Und wie hast du das gefunden?
War ja dann der Debugger dran, dann hab ich auf Pause gedrückt und 
gesehen, dass er in der Schleife festhing. Also ein Programmfehler, ich 
Dummerchen :)

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.