Forum: Mikrocontroller und Digitale Elektronik ST-Link/V2 Mass Storage Emulation?


von Bauform B. (bauformb)


Lesenswert?

Hat schon mal jemand mit einem ST-Link/V2 per Mass Storage Emulation und 
SWD einen STM32 geflasht? Also
 - ohne Bootloader
 - ohne Treiber
 - ohne libusb
 - ohne IDE oder Flash-Programm
 - ohne Windows
Das verstehe ich nämlich unter Mass Storage Emulation, der ST-Link sieht 
aus wie eine USB-Platte. Aber wie kann das funktionieren, die STM32 
haben doch alle unterschiedliche Register? Der ST-Link müsste ja alle 
Chips kennen und das würde heißen, dass man neue Chips nicht flashen 
kann.

Außerdem muss man leeres und bereits programmiertes Flash unterscheiden. 
Wie geht das mit einer virtuellen Platte?

von Harry L. (mysth)


Lesenswert?

Das geht mit jedem ST-Link V2.1, und der steckt auf allen nucleo-Boards.

von Johannes S. (Gast)


Lesenswert?

Bauform B. schrieb:
> Aber wie kann das funktionieren, die STM32
> haben doch alle unterschiedliche Register?

Das muss doch den Programmieradapter nicht jucken, der STLink kennt 
seine Pappenheimer und weiss wie er den Flash beschreiben kann, das 
reicht. Und über welchen USB Stream die Daten kommen ist dann auch egal, 
wenn er MSD implementiert reicht er eben die Binärdatei weiter.

von Bauform B. (bauformb)


Lesenswert?

Johannes S. schrieb:
> Das muss doch den Programmieradapter nicht jucken, der STLink kennt
> seine Pappenheimer und weiss wie er den Flash beschreiben kann

Ich dachte, Programmieradapter = STLink? Braucht man noch ein zweites 
Gerät? es wird immer undurchsichtiger :( Ich wollte eigentlich genau nur 
diesen 
https://www.digikey.de/product-detail/de/stmicroelectronics/ST-LINK-V2-ISOL/497-15961-ND/4357213 
benutzen?

von Milbanus (Gast)


Lesenswert?

> Ich dachte, Programmieradapter = STLink?

Ja.

> Braucht man noch ein zweites Gerät?

Nein.

> es wird immer undurchsichtiger :( Ich> wollte eigentlich genau nur
> diesen > https://www.digikey.de/product-detail/de/stmicroelectronics/ST-
> LINK-V2-ISOL/497-15961-ND/4357213 benutzen?

Ok.

von Bauform B. (bauformb)


Lesenswert?

Danke für die tröstenden Worte. Es funktioniert anscheinend wirklich so, 
dass der ST-Link ein Firmware-Update für jeden neuen Chip braucht. Von 
daher sollte es also ohne Spezial-Software auf dem PC funktionieren, 
sehr schön.

Zumindest verstehe ich die Release Notes RN0093 so. Wo und wann man neue 
Firmware bekommt oder wie sie heißt steht da (natürlich) nicht drin. 
Welche Chips unterstützt werden scheint auch geheim zu sein. Bei Segger 
gibt es zwar eine Liste mit den Chips, aber wer weiß, wie da die Updates 
funktionieren. Außerdem kann Segger keine Mass Storage Emulation, auch 
nicht für 798 Euro.

Die isolierten Links brauchen Strom aus dem Target, aber wieviel? Na 
gut, dann wird eben der ganze PC isoliert, wozu gibt es UTP-Kabel. Unter 
den Umständen ist der billigste ST-Link gerade richtig, wenigstens war 
er billig wenn er meinen Chip nicht kennt.

Keine Begeisterung.

von Stefan F. (Gast)


Lesenswert?

Bauform B. schrieb:
> Wo und wann man neue
> Firmware bekommt oder wie sie heißt steht da (natürlich) nicht drin.

Mit dem Cube Programmer.

> Die isolierten Links brauchen Strom aus dem Target, aber wieviel?

100mA reichen, es sind real etwas weniger.

> Dann wird eben der ganze PC isoliert.

Ich nutze zwischen PC und meinem Elektronik gedöns einen USB Isolator* 
und einen USB-Hub. Wenn da viel dran hängt, schließe ich auch das 
Netzteil vom USB Hub an.

Mit dieser Kombination ist nicht nur der Programmieradapter isoliert, 
sondern auch der Logic Analysator und der USB-UART und meine Arduino 
Boards.

*) So einen: https://de.aliexpress.com/item/4000095610398.html, manche 
Händler bieten sie mit Gehäuse oder Schrumpfschauch-Umhüllung an - schön 
ordentlich mit Ausschnitt für die DIP Schalter. Kann ich nur empfehlen.

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.