Forum: Mikrocontroller und Digitale Elektronik Xmega PDI: Fuses schreibbar, Prog&Debug failed


von Firehawk (Gast)


Lesenswert?

Hallo zusammen.

Ich habe eine neue Schaltung auf Basis des Xmega32e5, welche sich nicht 
wie gewünscht über PDI programmieren oder debuggen lässt.

Ich nutze AtmelStudio 6 in der neusten Version und als debugger verwende 
ich sowohl einen "Atmel ICE" als auch einen "JtagIce 3"...beide 
funktionieren problemlos mit einer anderen Schaltung(Xmega256A3U) bei 
gleicher PDI-Bestückung.

Zur Hardware:
- PDI und RST sind mit 150Ohm in Serie mit dem PDI-Header verbunden
- RST hat einen PullUp von 3,3kOhm und einen Kerko mit 10nF gegen Masse
- Spannungsversorgung(3,3V) und PDI-Ruhepegel(RST=High/PDI=Low) sehen 
auf dem Oszi gut aus
- Auf Kurzschlüsse und falsche Bestückung geprüft

Fuses können gebrannt, gelesen und verifiziert werden, allerdings 
schlägt das Programmieren oder Debuggen des Quellcodes fehl(siehe 
Anhang).

Bei der Fehlersuche habe ich den Rst-Kerko entfernt und hiermit eine 
Programmierung ermöglichen können...die LED blinkt so wie sie soll.
Das Debugging schlägt allerdings immernoch mit einer neuen Meldung 
fehl(siehe Anhang).
Auch das entfernen des RST-PullUp bracht keine Besserung.

Nun bin ich ratlos und hoffe auf eure Hilfe.

Gruß
Firehawk

von Firehawk (Gast)


Angehängte Dateien:

Lesenswert?

Die Anhänge ;)

von Arduinoquäler (Gast)


Lesenswert?

Die 150Ohm könnten (trotz des weggefallenen Kondensators) noch
zu viel sein da dort sicherlich mit hohen Taktraten gearbeitet
wird.

Ein Längswiderstand ist imer eine gute Idee gegen Überlastung,
hier muss er vielleicht kleiner (10...33Ohm) ausfallen.

Massebezug des PDI Connectors zum Prozessor gut?
Kurze Debug-Leitungen auf dem Board?

von Firehawk (Gast)


Lesenswert?

Arduinoquäler schrieb:
> Die 150Ohm könnten (trotz des weggefallenen Kondensators) noch
> zu viel sein da dort sicherlich mit hohen Taktraten gearbeitet
> wird.

Firehawk schrieb:
> funktionieren problemlos mit einer anderen Schaltung(Xmega256A3U) bei
> gleicher PDI-Bestückung.

Ich werde die Serienwiderstände verkleinern und dann berichten.
Die PDI-Taktrate habe ich bis runter auf 32kHz angepasst...erfolglos.
Aber warum sollte es mit einem Xmega256A3u(bis ca. 500kHz) funktionieren 
und mit einem Xmega32E5 nicht?

Arduinoquäler schrieb:
> Massebezug des PDI Connectors zum Prozessor gut?
> Kurze Debug-Leitungen auf dem Board?

Die PDI-Leitungen sind <15mm bis zum PDI-Connector.
Masseleitung vom Debugger zur MCU-Masse <1 Ohm.

von Firehawk (Gast)


Lesenswert?

"Fehler" gefunden:
Wie im Anhang zu sehen ist die "SUT"-Fuse auf 64ms eingestellt.
Stelle ich dies zurück auf 0ms funktioniert das Brennen und Debugging 
problemlos.
Auf Platinen mit dem xmega256A3U funktioniert es auch mit SUT=64ms.

Vielen Dank Arduinoquäler für deine Beteiligung!

Gruß
Firehawk

von Arduinoquäler (Gast)


Lesenswert?

Firehawk schrieb:
> Stelle ich dies zurück auf 0ms funktioniert das Brennen und Debugging
> problemlos.

Da muss einer erst mal draufkommen .....

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.