Forum: Mikrocontroller und Digitale Elektronik Keine Verbindung zu Mikrocontroller über JTAG (AT32UC3C1512C)


von ??? ?. (wookiee)


Lesenswert?

Hallo,


ich verwende in meinem Projekt einen AT32UC3C1512C 32-Bitter von Atmel.
Leider bekomme ich mit meinem AVR Dragon von AVR Studio 6 folgende 
Meldung


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

Unable to enter programming mode.

Please verify device selection, interface settings, target power and 
connections to the target device.

Timestamp:  2013-10-22 16:17:03.558
Severity:    INFO
ComponentId:  20000
StatusCode:  0

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


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

Ich trage mal zusammen, was ich bereits weiß/probiert habe...

Gecheckt habe ich schon so ziemlich alles.
Spannungsversorgung des Controllers passt, korrekt eingelötet ist er, 
JTAG ist richtig beschaltet.
An dem Controller hängen lediglich ein PHY, drei Taster, und zwei LEDs.
Ich habe heut den ganzen Tag recherchiert, hänge aber immer noch an dem 
Problem. Das einzige, was ich auslesen kann ist die Targetspannung 
meiner Platine. Keine Fuses, keine Device-ID, kein Erase und 
Programmieren möglich.

Man findet zwar das gleiche Problem, allerdings war dort oft eine 
falsche ISP Programmierfrequenz Schuld.
Der UC3C1 unterstützt aber nur JTAG und aWire.

Im Online Manual des Dragon habe ich folgendes rausgezogen:

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

JTAG interface

On some Atmel AVR UC3 devices the JTAG port is not enabled by default. 
When using these devices it is essential to connect the RESET line so 
that the AVR Dragon can enable the JTAG interface.

Any stabilising capacitor connected to the RESET pin must be 
disconnected when using aWire since it will interfere with correct 
operation of the interface. A weak external pullup on this line is 
recommended.

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

Allerdings habe ich nirgendwo gefunden, welche Controller unter die 
"some" fallen.
Kann es sein, dass die JTAG Schnittstelle beim C1 by default deaktiviert 
ist, und ich deswegen keine Verbindung bekomme?

Im Datenblatt des C1 habe ich dann noch folgendes gefunden:

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

3.4.1 JTAG pins
The JTAG is enabled if TCK is low while the RESET_N pin is released. The 
TCK, TMS, and TDI
pins have pull-up resistors when JTAG is enabled. The TCK pin always 
have pull-up enabled
during reset. The TDO pin is an output, driven at VDDIO1, and has no 
pull-up resistor. The
JTAG pins can be used as GPIO pins and muxed with peripherals when the 
JTAG is disabled.
Please refer to Section 3.2.4 for the JTAG port connections.

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

Kann ich manuell versuchen TCK auf GND zu pullen, während ich die 
Resetleitung ebenfalls auf GND pulle und dann loslasse.


Ich habe hier noch ein UC3A3 XPlained Board. Das funktioniert ohne 
Probleme über JTAG mit dem Dragon und Studio 6.

Vorschläge, was ich versuchen kann?

von Ohh (Gast)


Lesenswert?

> Vorschläge, was ich versuchen kann?

Verbinde die Reset-Leitung? ;-)

von ??? ?. (wookiee)


Lesenswert?

Ist selbstverständlich verbunden. :(

von SeriousSam (Gast)


Lesenswert?

Messe mit einem scope und vergleiche mit dem xplained....

von SeriousSam (Gast)


Lesenswert?

Hast du gecheckt dass der Oszillator richtig arbeitet?

von ??? ?. (wookiee)


Lesenswert?

SeriousSam schrieb:
> Messe mit einem scope und vergleiche mit dem xplained....

Was genau soll ich vergleichen?

SeriousSam schrieb:
> Hast du gecheckt dass der Oszillator richtig arbeitet?

Ja, mit einem Osziloskop gecheckt. Pegel und Frequenz passen.

von Ohh (Gast)


Lesenswert?

Pierre ?. schrieb:
> Ist selbstverständlich verbunden. :(

Der Chip ist laut Text nicht im JTAG-Mode und braucht die Reset-Leitung 
um in diesen zu wechseln. Du solltest das aber in deinem Programmer 
angeben, damit der die Sequenz fährt.

von SeriousSam (Gast)


Lesenswert?

Pierre ?. schrieb:
> SeriousSam schrieb:
>> Messe mit einem scope und vergleiche mit dem xplained....
>
> Was genau soll ich vergleichen?
>
> SeriousSam schrieb:
>> Hast du gecheckt dass der Oszillator richtig arbeitet?
>
> Ja, mit einem Osziloskop gecheckt. Pegel und Frequenz passen.

Du hast ein Setup, das funktioniert. Du schaust Dir an, wie 
beispielsweise das Auslesen der Chipid auf dem Scope aussieht. Das ist 
die Referenz. Dann probierst du das gleiche mit Deinem Board und wirst 
sehen, dass ab einer bestimmten Stelle Unterschiede vorhanden sind. 
Vielleicht sind es andere Pegel, vielleicht fehlt was auf einer 
Leitung..... usw.

von ??? ?. (wookiee)


Lesenswert?

Update:

Alle guten Dinge sind nicht immer drei. Nach dem vierten Mal habe ich 
festgestellt, dass es tatsächlich ein Kontaktproblem der Resetleitung 
gab. Danke für den entscheidenden Hinweis.

Der Controller wird nun erkannt, und ich kann ihn auch programmieren, 
allerdings tut er nichts.

Ich habe versucht diverse Pins zu schalten, jedoch funktioniert das 
nicht.
Bei manchen Pins messe ich komische Pegel wie 0,3V oder 1,58V.

Getestete Pins wurden als Ausgang definiert und dann gesetzt...
Auch Beispielcodes aus der Atmel Software Framework zeigen das gleiche 
Bild...

Ich habe die Vermutung, dass eventuell ein Versorgungspin/Referenzpin 
ebenfalls ein Kontaktproblem hat.

Ist leider ein TQFP100 Gehäuse und mit dem Auge sieht man da nicht viel.
Muss wohl die Tage nochmal ans Unimikroskop...


Könnte das der Grund für die komischen Pegel sein?

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.