
Hallo Habr!
In diesem Artikel werde ich Ihnen erklären, wie Sie ST-Link V2 auf ST-Link V2.1 ändern können.
Vielleicht sind es für einige keine Neuigkeiten, aber ich habe im Internet keine speziellen Informationen zu diesem Thema gefunden.
Wen kümmert es - ich bitte um eine Katze.
Vorwort
Es ist einfach so passiert, dass ich die zusätzlichen Drähte satt habe.
Nachdem ich ein wenig nachgedacht hatte, fiel mir ein, dass ST-Link auf Nucleo- und Discovery-Boards SWD und VCP (Virtual Com Port) kombiniert.
Das erste, was mir in den Sinn kam, war, das billigste dieser Boards zu kaufen, die Firmware unter Umgehung des Schutzes zu entleeren und den Programmierer aus China auszufüllen oder ein neues Board zu züchten.
Sie forderten mich jedoch auf, einen Link zu GitHub mit einem bereits erweiterten Bootloader zu erstellen. Am Ende stellte sich heraus, was passiert war.
An die Arbeit gehen
Änderungen können nur an der Softwareversion für Windows vorgenommen werden. Die plattformübergreifende Softwareversion weigert sich, das Gerät zu aktualisieren!
Es gibt verschiedene Änderungsoptionen, von denen einige nicht vorgenommen werden können, wenn der Chip nicht geeignet ist (es ist nicht genügend Speicher vorhanden).
Zum Beispiel kann die Modifikation von STM32 + MSD + VCP nur durchgeführt werden, wenn der Chip STM32F1xxCBxx ist, jedoch ein Analogon von STM32 + Audio hat, das STM32 + VCP ergibt (im Prinzip, was wir brauchen).
Sie benötigen:
- Lötkolben;
- Multimeter mit einem Sprichwort;
- PC mit Windows (kann durch Wine kommen, habe es nicht versucht);
-
Archivieren Sie mit der erforderlichen Software und dem Bootloader (PASS: QWK2tn + fM.EdjX6z).
- Chinesischer Klon ST-Link V2;
- USB-UART-Adapter oder ein zweiter ST-Link.
Wir enthüllen ...
Boards und Chips sind alle unterschiedlich Firmware
Es gibt zwei Möglichkeiten - USB-UART (etwas komplizierter) oder den zweiten ST-Link.
USB UART
1) Am Zifferblatt finden wir den Widerstand, der an
BOOT0 angeschlossen ist .
Wir machen einen Jumper von der Seite dieses Widerstands, der mit
BOOT0 an
3,3 V angeschlossen ist .
PA9 (TX) kann an die LED oder den Widerstand daneben angeschlossen werden, also nennen wir es.
Löten Sie
UART an
PA9 (
TX ) und
PA10 (
RX ).
Ich habe es so gemacht:

Wir löten auch Lebensmittel.
Flashen des Bootloaders Protected-2-1-Bootloader.bin mit dem
STM32 Flash Loader-Demonstrator .
Löten Sie nach dem Blinken den Jumper
PA9 und
PA10 (lassen Sie
PA10, wenn Sie
SWO ausgeben
möchten ).
ST-Link
Auf den Platinen befinden sich 4 Pins, in einigen Fällen sind sie bereits markiert, andernfalls werden sie in Bezug auf
PA13 (
SWDIO ) und
PA14 (
SWCLK )
aufgerufen , die vom zweiten
ST-Link gelötet werden.

Wir löten auch Lebensmittel.
Wir installieren das STM32 ST-LINK Utility V4.3 aus dem Archiv, entfernen den Schreibschutz und flashen den Bootloader Protected-2-1-Bootloader.bin.
Um den Schutz im
STM32 ST-LINK-Dienstprogramm zu entfernen, klicken Sie auf
Ziel> Optionsbytes , schalten
Sie Ausleseschutz auf
Deaktiviert und klicken Sie auf
Übernehmen .
Update auf ST-Link V2.1
Nach der Firmware verbinden wir den genähten ST-Link (schon fast V2.1) mit dem PC.
Klicken Sie im
STM32 ST-LINK Utility V4.3-Programm auf
ST-LINK> Firmware-Aktualisierung .
Klicken Sie auf
Geräteverbindung - wir erhalten eine Liste möglicher Änderungen:

Wir wählen die
gewünschte Modifikation aus, in meinem Fall
STM32 + MSD + VCP , klicken Sie auf
Ja >>>> .
Wir warten auf den Abschluss des Updates ...

Gewinn!
Der letzte Teil
Da SWIM und RST nach einer solchen Änderung nicht funktionieren, habe ich sie abgeschnitten.
Ich habe auch die doppelten 5V und 3.3V abgeschnitten.
Es stellt sich heraus, 4 freie Stifte.
Auf sie löte ich die Verkabelung mit dem Chip:
PA10 -> SWO
PB0 -> NRST
PA3 -> RX
PA2 -> TXIch gebe alles an den Hauptanschluss aus, an die verbleibenden freien Pins.
Das Ergebnis war eine solche Pinbelegung:

Vergessen Sie nicht, die Platine nach dem Löten zu waschen!
Infolgedessen wird das Gerät im PC wie folgt definiert:


Ich habe keine Ahnung, wie groß ein virtuelles Flash-Laufwerk ist (in diesem Fall war F103C8 mit ST-Link V2.1 verbunden).
Wenn Sie eine Firmware-Datei hochladen, flasht der Programmierer den Chip ohne Programme.
VCP überprüfen:

Vielen Dank für Ihre Aufmerksamkeit!
Bitte hinterlassen Sie beim Kopieren einen Link zur Quelle.
Bei Fragen wenden Sie sich bitte in den Kommentaren, so gut ich kann - ich werde helfen.