Forum: Mikrocontroller und Digitale Elektronik ATXMEGA: Fuses, PDI und der AVR Dragon: BUG?


von meckerziege (Gast)


Lesenswert?

Hi,

ich stehe aktuell vor einem ziemlich großen Problem: Ich habe hier ein 
Board mit ATxmega16A4U, welchen ich per PDI mit einem AVR Dragon 
programmiere.

Nach Fertigstellung der Platine wollte ich die Fuses setzen, aber es ist 
wohl etwas schief gelaufen. Er lässt sich nicht mehr per Avrstudio oder 
Avrdude ansprechen. Weder auslesen, noch löschen oder programmieren. Der 
Fehler trat direkt nach dem Setzen der Fuses auf. Da ich allerdings 
schon mehrere Jahre mit AVRs arbeite und bisher noch KEINEN verfust 
habe, bezweifle ich, dass ich viel falsch gemacht habe.

Folgende Settings habe ich konfiguriert:
WDWP: 8CLK
WDP: 1KCLK
BOOTRST: BOOTLDR
BODPD: DISABLED
BODACT: CONTINUOUS
SUT: 64MS
WDLOCK: ENABLED
EESAVE: ENABLED
BODLVL: 3V0

Der Reset ist auch aktiv, dieses Bit habe ich nicht verändert. Auch die 
anderen nicht genannten, sind noch auf dem Default wert.

Am Board:
Versorgungsspannung: 3.3V (Multimeter sagt: 3.29V, AVR Studio sagt 3.3V, 
passt also)

Sowohl AVR Studio als auch Dragonfirmware ist auf dem aktuellen Stand.

Folgender Fehler erscheint:
----------------------------------------
Info
----------------------------------------
Unable to enter programming mode.

Please verify device selection, interface settings, target power and 
connections to the target device. Look in the details section for more 
information.

  Details  -----------
Timestamp:  2015-06-12 22:44:20.183
Severity:    INFO
ComponentId:  20000
StatusCode:  0

Got error setting up PDI mode: Device is not supported in this emulator 
mode. Debugger command setParameter failed.

Unable to enter programming mode. Verify device selection, interface 
settings, target power and connections to the target device.

----------------------------------------


Ich befürchte, dass die Einstellung für SUT ein Problem ist: Da dauerts 
nochmal 64ms bis der Chip aus dem Reset kommt. Ich habe diese 
Einstellung gewählt, das es durchaus kurz dauert, bis die 
Versorgungsspannung voll anliegt (Weit entferntes Netzteil, dahinter ein 
DCDC auf dem Board). Zurzeit bekommt die Schaltung die 
Versorgungsspannung direkt aus einem Labornetzteil, daran liegts also 
schonmal nicht.

Hat jemand ähnliche Erfahrung gemacht? Oder gibts sogar eine Lösung? 
Ansonsten muss der Chip eben runter, was recht viel Aufwand wäre (Gerät 
zerlegen etc.).

von meckerziege (Gast)


Lesenswert?

Problem gefunden: Es ist ein netter Doppelbug. Eine Erhöhung der 
Versorgungsspannung auf 3.5V hat das Problem behoben.


1. Problem: Reichelt verkauft offenbar keine ATxmega16A4U sondern 
ATxmega16A4
(siehe: "Technische Daten -> Modellbezeichnung: ATxmega16A4U-AU", aber 
Chipaufdruck: "ATxmega16A4 AU"). Dann hab ich wohl doch die alte Version 
erwischt...

2. Problem: Auch im AVR Studio wird nicht korrekt zwischen beiden Typen 
unterschieden. Die Level beim Brown-Out Detector sind bei A4 und A4U 
nämlich verschieden: Bei der höchsten auswählbaren Spannung kommt dann 
anstatt den gewünschten 3,0V eine Spannung von 3,4V raus. Und damit ist 
der Chip bei 3,3V erstmal aus.

Na ein toller Abend... ;-)

von meckerziege (Gast)


Lesenswert?

Beide Bugs werden behoben:


Antwort Reichelt:
Fehler auf der Webseite, es ist tatsächlich immer der A4 und nicht der 
A4U. Der A4U ist leider nicht erhältlich.

Antwort Atmel:

> This issue is logged as bug and it will be corrected in the future
> releases of Atmel Studio whose schedule we do not have

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.