Forum: Mikrocontroller und Digitale Elektronik STM32 Programmer Empfehlung


von Sigi S. (sermon)


Lesenswert?

Hallo,

ich könnte einen separaten STLink programmer kaufen, oder ein Nucleo 
Board mit abtrennbarem STLink.

Was würdet Ihr empfehlen?
Wenn Nucleo Board, welches konkret?
Die Informationen erschlagen mich, benötige Schubs in die richtige 
Richtung😄

Ich habe ja das Problem, das sich mittlerweile 2 Blackpill nur sehr 
sporadisch in den Bootloader Modus schalten lassen.
Hatte ein neues gekauft, weil ich an einen Defekt glaubte…


Vielleicht hilft ja ein Programmer aus dem Dilemma?!





Danke

: Bearbeitet durch User
von Walter T. (nicolas)


Lesenswert?

Der Schubs lautet: Die Programmieradapter sind so billig, dass man sich 
nicht mit einem zufrieden geben muss.

Du hast ein Problem mit einem konkreten Board? Nimm einen externen 
Programmer. ST-Link V2, ST-Link V3 oder J-Link. Nimm ein Original. 
Nichts nervt bei der Fehlersuche mehr, als ein unbekannter Prüfadapter.

Du willst ein Eval-Board? Nimm ein Nucleo oder ein Discovery.

: Bearbeitet durch User
von A. F. (artur-f) Benutzerseite


Lesenswert?

Ich würde dir einen ST-Link V2 empfehlen.  Ich programmiere in Atollic 
TrueStudio einen stm32 in ein paar Sekunden, in dem ich unter External 
Tools eine batch Datei verknüpft habe, welche den uC über command-line 
programmiert.
Finde ich sehr bequem, geht leider nicht mit ST-Link V3....

von Klaus W. (mfgkw)


Lesenswert?

Ja, ich würde auch zumindest einen externen empfehlen (stlink-v2 
Original von STM).

Bei den Nucleo-32 ist der stlink nicht abtrennbar, erst bei Nucleo-64.
Deshalb würde ich im Zweifelsfall zumindest ein 64er nehmen.
Da kann man den Adapter übrigens auch für andere Boards nutzen, ohne ihn 
abzubrechen.

Wobei die doch so billig sind, dass man sich auch 2 leisten kann.
(Auf der embedded in Nürnberg habe ich im Lauf der Jahre ein ganzes 
Sortiment bekommen.)

Welches Nucleo du nimmst, ist letztlich egal solange du keine bestimmten 
Ansprüche hast.
Ein paar GPIO zum Wackeln haben sie alle.

: Bearbeitet durch User
von Bauform B. (bauformb)


Lesenswert?

Sigi S. schrieb:
> Ich habe ja das Problem, das sich mittlerweile 2 Blackpill nur sehr
> sporadisch in den Bootloader Modus schalten lassen.
> Hatte ein neues gekauft, weil ich an einen Defekt glaubte…

Du könntest eine Pille zum Programmer umbauen:

https://stm32world.com/wiki/Black_Magic_Probe

Der entscheidende Nachteil von den kommerziellen Programmern: die 
verstehen sich nur mit ganz bestimmten Chips, ganz besonders der STLink. 
Wenn du deinen neuesten uC programmieren willst, geht das nur mit einem 
Firmware Update. Mit so einem Umbau/Selbstbau kannst du zur Not die 
fehlenden Daten selbst ergänzen.

von J. S. (jojos)


Lesenswert?

wenn es nur STM32 sein sollen, dann den STLinkV3(Mini). Der kostet ca. 
15 € und es gibt Adapter als Breakoutboard um die weiteren 
Schnittstellen wie UART, CAN, SPI, I2C zu nutzen. Dazu gibt es eine 
Bridge-Library und auch verschiedene Projekte auf Github. Ein externer 
Programmer ist kleiner und praktischer als immer ein Nucleo 
umzukonfigureren.
Der V3 ist sehr schnell durch Fullspeed USB und hat einen entsprechend 
fetteren µC drauf. Damit ist der Zukunftsicherer, bei den V2 Versionen 
ist der Speicher schon knapp. Batchprogrammierung geht über ein CLI Tool 
auch, aber ich habe gestern über 100 H7 programmiert und das geht sehr 
schnell, auch mit dem GUI Tool. Connect, Download, Disconnect. Download 
dauert ca. 1s bei 100 kb, das umstecken dauert viel länger.
Und bei neueren Nucleo und Discovery Boards sind auch schon die V3 
drauf, also warum noch mit den alten zufrieden geben? Abtrennbar sind 
die auch da auch nicht mehr, was sowieso nie gut war weil dann die 
Takterzeugung von den Nucleos weg war und verschiedene winzige Jumper 
umgelötet werden mussten.
Nucleo Board kaufen: das was noch lieferbar ist, auch die werden immer 
knapper. Anfangen nicht unbedingt mit F7 oder H7, die sind schon 
deutlich komplexer.

von Sigi S. (sermon)


Lesenswert?

Ist der hier geeignet

STLINK-V3MODS

und sofort lieferbar?

Ich habe bisher keine Bezugsquelle gefunden..

von J. S. (jojos)


Lesenswert?

Vor wenigen Tagen gab es den V3MINI noch bei Reichelt.
https://www.welectron.com/Waveshare-17521-STLINK-V3MINI
Ist auch gut mit Adapterkabeln.

Und nochmal mein Gehäuse Link, da ist auch ein Breakoutboard verlinkt:
https://www.thingiverse.com/thing:5101077

Zur Verwirrung gibt es jetzt noch einen V3MINIE, also er sich solche 
Bezeichnungen ausdenkt…

: Bearbeitet durch User
von Matthias S. (Firma: matzetronics) (mschoeldgen)


Lesenswert?

Ich benutze immer ein defektes VL Discovery, bei dem ich mal einen UART 
Pin des STM32F100 zerstört habe. Aber der ST-Link funktioniert und liess 
sich letztens sogar upgraden und kost' fast gar nix. ST hat aber im 
Store keines auf Lager.
Das STM32F0DISCOVERY ist auch billig, sollte das gleiche Ergebnis 
bringen und ist verfügbar.

von Stefan F. (Gast)


Lesenswert?

Die chinesischen ST-Link v2 Sticks kann man auch ohne Probleme updaten.

Leider haben sie (für STM32) keinen Reset Ausgang. Du musst daher 
eventuell den Boot0 Jumper auf HIGH setzen, damit die SWD Schnittstelle 
aktiv bleibt und ohne hard-reset nutzbar ist.

Wenn ein originaler ST-Link gerade nicht zu haben ist, tut es zur Not 
auch so ein Stick.

von W.S. (Gast)


Lesenswert?

Sigi S. schrieb:
> ich könnte einen separaten STLink programmer kaufen, oder ein Nucleo
> Board mit abtrennbarem STLink.
>
> Was würdet Ihr empfehlen?

Könntest du dich mit dem Gedanken anfreunden, dir eine eigene 
Leiterplatte zu entwerfen und bei dieser die Programmierschnitstellen 
gleich und ordentlich vorzusehen? Also sowohl Bootlader (sofern der µC, 
den du vorsiehst, einen hat) als auch JTAG, SWD und so? Dann hast du es 
genau SO, wie du es haben willst.

W.S.

von Sigi S. (sermon)


Lesenswert?

Hallo,


habe mir jetzt af Euern Anraten hin einen ST-Link V2 (Clone/20€) 
gekauft.
Der erscheint brav und stail unter UDB Geräte als STM32 STLink.

Leider erkennt der STM32CubeProgramme ihn nicht;-(

War der Kauf für den Eimer ?

von J. S. (jojos)


Lesenswert?

tja, das ist sehr viel Bastelei. Die Clones verwenden mittlerweile sehr 
viele veschiedene F1 Controller, aber seltenst oder nie den F103RB. Und 
der ist nötig mit den 128 kB Flash für den org. Bootloader und die 2.1 
Updates. Der 2.0 ist veraltet und damit neuere Serien zu flashen wie 
L/G/H ist ein Glücksspiel.
Man kann jetzt auch versuchen BMP da drauf zu flashen, aber auch das 
läuft nicht mit dem CubeProgrammer. Man kann den in der IDE oder der 
Kommandozeile benuzten, muss man sich mit beschäfftigen.
Dann kann man noch ältere Flashtools probieren.
Plug and Play wäre es mit dem V3 gewesen. Ein Original für 16...25 €.

von Gunnar F. (gufi36)


Lesenswert?

ich hatte die Woche bei vielen Distributoren gesucht: ST-Link/V2 nicht 
verfügbar.
Die Preise (der nicht verfügbaren!) auch schon deutlich erhöht! Bin 
gespannt wie das weitergeht....

von Sigi S. (sermon)


Lesenswert?

J. S. schrieb:
> Ein Original für 16...25 €.

Fuc...

Ja, aber wo?


Über den ST Link FW updater konnet ich eine aktuelle FW brennen.
Wir aber immer noch nicht in "CUBE" erkannt.

Noch Hinweise?

von Stefan F. (Gast)


Angehängte Dateien:

Lesenswert?

Sigi S. schrieb:
> Leider erkennt der STM32CubeProgramme ihn nicht

Propbiere mal das ältere ST-Link Utility. 
http://www.st.com/en/embedded-software/stsw-link004.html
Vielleicht musst du die Firmware damit einmal updaten, damit der Cube 
Programmer ihn erkennt.

> Über den ST Link FW updater konnet ich eine aktuelle FW brennen.

Ist vielleicht gleichwertig, wer weiß .Ich würde es trotzdem mal 
versuchen.

> Wir aber immer noch nicht in "CUBE" erkannt.

Wo jetzt, im Cube Programmer oder in der Cube IDE? Das sind zwei 
grundsätzlich unterschiedliche Programme (teste beide!).

In der Cube IDE kannst du außerdem auf OpenOCD anstatt GDB wechseln. Das 
wäre wiederum eine andere Software mit der es besser klappen könnte. 
Siehe http://stefanfrings.de/stm32/cube_ide.html#flash (runter scrollen 
zur Überschrift "mit OpenOCD").

Benutzt du Linux? Dann fehlen vielleicht die im Bild gezeigten Dateien. 
Als root User hast du aber auch ohne diese Dateien Zugriff.

von J. S. (jojos)


Lesenswert?

Sigi S. schrieb:
> Ja, aber wo?

den Link hatte ich schon gepostet.
https://www.welectron.com/Waveshare-17521-STLINK-V3MINI

aber ich meine vorher stand der Status auf 'ab Lager' und 2-3 Tage 
Lieferzeit.

von Klaus S. (kseege)


Lesenswert?

Sigi S. schrieb:
> Ich habe ja das Problem, das sich mittlerweile 2 Blackpill nur sehr
> sporadisch in den Bootloader Modus schalten lassen.
> Hatte ein neues gekauft, weil ich an einen Defekt glaubte…
> Vielleicht hilft ja ein Programmer aus dem Dilemma?!

Ich kann die Logik nicht ganz nachvollziehen. Wenn ein zweites Gerät 
denselben Fehler zeigt, ist es doch eher ein interner Fehler, der noch 
nicht in den Errata-Dateien auftaucht oder ein Fehler in der externen 
Beschaltung, die von beiden Geräten gleichermaßen benutzt wird.

Wieso soll da ein Programmer helfen? Bin ich auf dem Holzweg oder 
versuchst Du, nach einem rettenden Strohhalm zu greifen, weil Dir nichts 
Besseres einfällt?

Gruß Klaus (der soundsovielte)

von Bauform B. (bauformb)


Lesenswert?

J. S. schrieb:
> den Link hatte ich schon gepostet.

Ja, aber, das ist doch auch nur wieder ein Clone? Noch dazu ein 
dreister, mit Original-STM-Fotos und -Datenblatt?

von J. S. (jojos)


Lesenswert?

Bauform B. schrieb:
> Ja, aber, das ist doch auch nur wieder ein Clone?

nein, der ist Original. Waveshare hat daraus ein Set gemacht mit einem 
eigenen Adapter vom 14 pol auf den alten Standard JTAG 20 pol. Verbinder 
sowie einigen zusätzlichen Kabeln. Damit kann man den auch mit Dupont 
Wires verwenden, besser ist aber wie auch schon geschrieben den Mini auf 
das Breakoutboard zu löten.
Waveshare gehört zu den Guten, die Entwickeln und von denen wird 
abgekupfert.

Edit:
ich bin mir da so sicher weil ich dieses Set da in 10/2021 gekauft habe, 
genau wegen des JTAG Adapters. Da gab es die noch für 19,90 €.

: Bearbeitet durch User
von Bauform B. (bauformb)


Lesenswert?

J. S. schrieb:
> Bauform B. schrieb:
>> Ja, aber, das ist doch auch nur wieder ein Clone?
>
> nein, der ist Original. Waveshare hat daraus ein Set gemacht

OK, das erklärt auch das Foto, danke!

von J. S. (jojos)


Lesenswert?

Klaus S. schrieb:
> Ich kann die Logik nicht ganz nachvollziehen.

da ist allerdings auch etwas dran. Diese Boards bekommt man aufgeweckt 
mit Boot gedrückt halten und dan Reset drücken. Ich kann mir vorstellen 
das der Code in einem WFI hängt und dann nicht mehr auf (Arduino?) 
Bootloader hört. Der eingebaute im ROM ist nicht kaputt zu kriegen, da 
kommt man immer rein.

Aber das arbeiten mit Debugger macht schon mehr Spaß :)

von Klaus S. (kseege)


Lesenswert?

J. S. schrieb:
> Aber das arbeiten mit Debugger macht schon mehr Spaß :)

Da bin ich anderer Ansicht, aber das ist aus meiner Sicht persönliche 
Geschmackssache. Ich empfinde die Arbeit mit Debuggern als PITA.
Besonders, wenn man mit Interrupts und externer Hardware zu tun hat. Und 
das habe ich immer!

Gruß Klaus (der soundsovielte)

von M.A. S. (mse2)


Lesenswert?

Klaus S. schrieb:
> Ich empfinde die Arbeit mit Debuggern als PITA.
> Besonders, wenn man mit Interrupts und externer Hardware zu tun hat. Und
> das habe ich immer!
Wie debuggst Du denn solche Systeme?

von Klaus S. (kseege)


Lesenswert?

M.A. S. schrieb:
> Wie debuggst Du denn solche Systeme?

Nennt sich: inkrementell programmieren. Machen doch alle 
Interpretersprachen so, man sieht immer gleich das Ergebnis.  Ich nehme 
es vorwiegend für C, ein kleiner Interpreter wird mitcompiliert und kann 
Unterprogramme starten und Testausgaben auf allen Schnittstellen 
ausgeben, die vorhanden sind. Das reicht nicht jedem, mir aber schon. 
Wer "trocken" vorprogrammieren muss, weil die Zielhardware noch nicht da 
ist, kann die Methode natürlich nicht nutzen.
Bin in der glücklichen Lage, dass ich immer schon die Hardware habe, 
wenn ich anfange zu programmieren.

Gruß Klaus (der soundsovielte)

von Potter (Gast)


Lesenswert?

Jetzt haben hier mindestens 20 Leute irgendwas geschrieben und ich habe 
bisher nicht einmal J-LINK gelesen.

Was ist hier los ? Alle im Tiefschlaf ?

Kauf Die den J-LINK (Studenten-Version oder s.ä.) damit hast Du so 
ziemlich alles abgeklopft (nicht nur das Zeug von ST).

Gruß Potter

von Walter T. (nicolas)


Lesenswert?

Nicht schlimm. Man kann auch mal etwas überlesen.

von Stefan F. (Gast)


Lesenswert?

Potter schrieb:
> Jetzt haben hier mindestens 20 Leute irgendwas geschrieben und ich habe
> bisher nicht einmal J-LINK gelesen.

Der wurde in der ersten Antwort empfohlen.

von Johnny B. (johnnyb)


Lesenswert?

Potter schrieb:
> Kauf Die den J-LINK (Studenten-Version oder s.ä.)

Der ist schon seit Monaten nicht verfügbar und der angezeigte 
Liefertermin wird immer weiter nach hinten geschoben.
https://www.mouser.ch/ProductDetail/Adafruit/3571?qs=YCa%2FAAYMW03SrXLinBpZFw%3D%3D

von Klaus S. (kseege)


Lesenswert?

Sigi S. schrieb:
> Was würdet Ihr empfehlen?

Ich würde empfehlen, vor dem Geldausgeben erstmal einen kostenlosen 
Programmer zu testen. Okay, fast kostenlos, einen USB-Uart brauchts, das 
ist Alles.

Sowohl Arduino als auch das Programm von W.S. können die Blackpill 
programmieren, beide kostenlos. Arduino hat zwar manchmal Macken (siehe 
meinen Beitrag "Arduino IDE überholt sich selbst"), ist aber einfach zu 
reparieren, wenn man etwas Hirnschmalz investiert.

Gruß Klaus (der soundsovielte)

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.