Forum: Mikrocontroller und Digitale Elektronik Teure Debugger Vorteile


von Robert (Gast)


Lesenswert?

Hallo,

ich wollte mal fragen, was man für Vorteile davon hat, wenn man sich 
z.B. JTAG  SWD Debugger für mehrere Hundert  Tausend Euro kauft, wie 
sie manche Hersteller anbieten und was die Vorteile davon sind, einfach 
einen billigen STLink z.B. zu nutzen bzw. JTAG über FT2232?

Danke

von Niklas G. (erlkoenig) Benutzerseite


Lesenswert?

Debugger wie z.B. der Segger JLink sind schneller und stabiler und 
unterstützen fast alle ARM-Prozessoren. Außerdem gibt es Modelle die 
über Ethernet funktionieren und Tracing unterstützen. Die 
ST-Link-Software ist/war notorisch verbuggt und teilweise kaum nutzbar, 
hat sich aber etwas gebessert. Für Hobby kann der ST-Link ausreichend 
sein, aber wenn man viel/professionell damit arbeitet verschwendet man 
damit zu viel Zeit...

: Bearbeitet durch User
von Noch eine Meinung (Gast)


Lesenswert?

Ausrede für Manager.

"Wenn das Projekt sogar mit professionellem Equipment, Schulungen und 
Support in die Hose gegangen ist - was wäre dann erst passiert, hätten 
wir China-Glump gekauft?"

Ein ehemaliger Marktführer hatte mal den Werbespruch: Es wurde noch 
keiner entlassen, weil er IBM gekauft hat.

von Frank K. (fchk)


Lesenswert?

Robert schrieb:

> ich wollte mal fragen, was man für Vorteile davon hat, wenn man sich
> z.B. JTAG  SWD Debugger für mehrere Hundert  Tausend Euro kauft, wie
> sie manche Hersteller anbieten und was die Vorteile davon sind, einfach
> einen billigen STLink z.B. zu nutzen bzw. JTAG über FT2232?

1. Interfaces: FTDI-Bridges können erstmal nur JTAG. Um SWD unterstützen 
zu können, brauchen die extra Hardware, oft in Form eines CPLDs/FPGAs 
(Beispiel: TI XDS100V2/v3) oder mit extra Gattern (Olimex 
JTAG-SWD-Adapter). Dann gibts da noch cJTAG und andere Spielarten, und 
jenseits von ARM gibts noch weitere Feinheiten.

2. Trace Support für die ETM Trace Cell, die im fast allen Cortex Cores 
mit drin ist.

3. Software-Support: Wenn Du eine bestimmte IDE verwenden willst, wird 
die nur eine eng begrenzte Anzahl von Adaptern unterstützen. Und wenn 
nur A, B und C unterstützt wird und Du nur D hast, hast Du eben Pech 
gehabt.

4. Spannungsbereich: 3.3V ist Standard, aber wenn Dein Prozessor mit 
1.8V oder mit 5V läuft, dann muss der Adapter entsprechende Levelshifter 
eingebaut haben.

5. PC-Verbindung: Die billigen haben machmal nur USB Full Speed. USB 
High Speed sollte eigentlich Standard sein, Ethernet ist 
aufpreispflichtig.

6. galvanische Trennung: manchmal erforderlich, Extra

fchk

von Jim M. (turboj)


Lesenswert?

Frank K. schrieb:
> 1. Interfaces: FTDI-Bridges können erstmal nur JTAG. Um SWD unterstützen
> zu können, brauchen die extra Hardware

... oder einen 400 Ohm (bis 1k) Widerstand. Ja, OpenOCD unterstützt das 
für einige FTDI Chips. ;-)

Ich persönlich würde aber JLink empfehlen, weil man dann Segger RTT 
benutzen kann. Sehr hilfreich beim Debuggen.

von Ahnungslos (Gast)


Lesenswert?

Und das auch noch extrem resourcenschonend!

von Bauform B. (bauformb)


Lesenswert?

Wo auf der Skala von Unbenutzbar bis Unbezahlbar würdet ihr denn die 
Black Magic Probe einsortieren?

von Johannes S. (Gast)


Lesenswert?

Wenn man low cost hw benutzt wie Bluepill oder die STLink clones hat man 
ein super Preis-Leistungsverhältnis. Aber zb auch die 3.3 V 
Einschränkung.
Das org BMP hat einen Buffer und passt sich der VTarget an, kostet aber 
auch gleich ein vielfaches.
Durch die einfache Konfiguration ist BMP meine Lieblingsprobe.

von Heiner (Gast)


Lesenswert?

Ich nutze einen Debugger von Lauterbach. Die SW stammt gefühlt noch aus 
DOS Zeiten. Sieht nicht toll aus, aber man kann sie individuell Anpassen 
wie man Lust und Laune hat. Eigene Schaltflächen, Makros, Befehle. 
Selbst das Layout der Oberfläche. Steht einem alles frei.

Die Anzahl der unterstützten Controller ist gigantisch. Der Support 
erste Klasse. Der Debugger selbst hat eine irre Perfpormance. JATG mit 
50 cm Kabelpeitsche dazwischen, egal läuft bei 20 MHz. Hunderte 
Breakpoints, klar kein Problem. Ach du willst zu dem nur Springen, wenn 
die Variable den Wert hat, du vorher durch diesen Zweig gelaufen bist 
und heute Donnerstag ist? Klar auch kein Problem. Du willst zwei 
verschiedene Controller gleichzeitig Debuggen, na aber sicher doch.

Das kann der Debugger vom Nucleo Board nicht.

von ryven (Gast)


Lesenswert?

Lauterbach zb rufst du an und bekommst in deutsch Hilfe.
Da der Kopf bei den Debuger auch die Liezen enthält behält man das 
Grundgerät und kann dann so ziemlich alles debugen was 1 von 0 
unterscheiden kann.
Die einfachen ohne Hardwartraces Unterstützung gehen preislich.
Die großen sind privat nicht bezahlbar. Und den 4 Gb Tracespeicher auf 
dem Debuger hast uU extrem schnell voll.

Auch schön ist halt Multicore debugen, oder Datenbreakpoints.

Von den Spannungen gehen die glaub bei 1,5 V los bis 5 V hoch.

von Dominik S. (dasd)


Lesenswert?

Heiner schrieb:
> Debugger von Lauterbach

Wir hier auch. Nichts geht über gutes Werkzeug ;)

von Olaf (Gast)


Lesenswert?

> Die Anzahl der unterstützten Controller ist gigantisch.

Das ist einer der Hauptgruende warum gute Debugger (und Eprommer) so 
teuer sind.

Schaut als Beispiel mal hier:

https://processors.wiki.ti.com/index.php/ICEPICK

JTAG ist nicht gleich JTAG. Das muss immer passend implementiert werden.

> 50 cm Kabelpeitsche dazwischen, egal läuft bei 20 MHz. Hunderte
> Breakpoints, klar kein Problem. Ach du willst zu dem nur Springen, wenn
> die Variable den Wert hat, du vorher durch diesen Zweig gelaufen bist
> und heute Donnerstag ist? Klar auch kein Problem.

Das geht mit dem gdb auch. Also dann z.B auch dem jLink. Man muss nur 
mal die Anleitung lesen.

> Klar auch kein Problem. Du willst zwei
> verschiedene Controller gleichzeitig Debuggen, na aber sicher doch.

Yep. Oder auch zwei gleiche Debugger an einem PC verwenden. Kommt ja 
auch manchmal vor wenn man Schnittstellen programmiert.

Das wichtigste aber, es muss ZUVERLAESSIG sein. Wenn ich auf Fehlersuche 
bin das ist keine schrullige Kiste akzeptabel wo ich mich frage ob das 
Problem nicht vielleicht auch am Debugger liegen koennte!

Und dann gibt es manchmal noch so Extremfaelle. Wenn der Debugger mit in 
den Klimaschrank muss. .-)

Olaf

von Johannes S. (Gast)


Lesenswert?

Olaf schrieb:
> Yep. Oder auch zwei gleiche Debugger an einem PC verwenden. Kommt ja
> auch manchmal vor wenn man Schnittstellen programmiert.

Das geht mit den low cost BMP aber auch, die erzeugen ja verschiedene 
Schnittstellen und arbeiten autark.

von Uwe B. (Firma: TU Darmstadt) (uwebonnes)


Lesenswert?

Johannes S. schrieb:
> Wenn man low cost hw benutzt wie Bluepill oder die STLink clones hat man
> ein super Preis-Leistungsverhältnis. Aber zb auch die 3.3 V
> Einschränkung.
> Das org BMP hat einen Buffer und passt sich der VTarget an, kostet aber
> auch gleich ein vielfaches.
> Durch die einfache Konfiguration ist BMP meine Lieblingsprobe.

BMP kann auch tracing , siehe orbuculum

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.