
こんにちは、Habr!
この記事では、ST-Link V2をST-Link V2.1に変更する方法を説明します。
おそらくそれはニュースではないかもしれませんが、インターネットでこのトピックに関する特別な情報を見つけることができませんでした。
誰が気にする-私は猫をお願いします。
まえがき
余計なワイヤーにうんざりしているのはたまたま起こった。
少し考えた後、NucleoとDiscoveryボードでは、ST-LinkがSWDとVCP(Virtual Com Port)を組み合わせていることを思い出しました。
最初に思いついたのは、これらのボードのうち最も安いボードを購入し、保護をバイパスしてファームウェアをダンプし、中国のプログラマーでそれを埋めるか、新しいボードを作成することでした。
しかし、彼らは、すでに拡張されたブートローダーを備えたGitHubへのリンクを私に促し、最終的には何が起こったのかがわかりました。
仕事を始める
修正は、Windowsのソフトウェアバージョンでのみ実行できます。クロスプラットフォームソフトウェアバージョンは、デバイスの更新を拒否します!
いくつかの修正オプションがあり、チップが適切でない場合(十分なメモリがない場合)、それらの一部を作成できません。
たとえば、STM32 + MSD + VCPの変更は、チップがSTM32F1xxCBxxの場合にのみ実行できますが、STM32 + VCPを提供するSTM32 + Audioのアナログを持っています(原則として、これが必要です)。
あなたが必要になります:
-はんだごて。
-ことわざを持つマルチメーター。
-Windowsを搭載したPC(Wineを使用できますが、試していません);
-
必要なソフトウェアとブートローダーでアーカイブします (PASS:QWK2tn + fM.EdjX6z)。
-中国のクローンST-Link V2。
-USB-UARTアダプターまたは2番目のST-Link。
私たちは明らかにします...
ファームウェア
USB-UART(もう少し複雑)または2番目のST-Linkの2つの方法があります。
USB UART
1)ダイヤルで、
BOOT0に接続されている抵抗を見つけます。
BOOT0に接続されているこの抵抗器の側から
3.3vにジャンパーを
作成し
ます 。
PA9(TX)はLEDまたはその隣の抵抗に接続できるため、呼び出します。
UARTを
PA9 (
TX )および
PA10 (
RX )にはんだ付けします。
私はこのようにしました:

食品もはんだ付けします。
STM32フラッシュローダーデモンストレーターを使用して、Protected-2-1-Bootloader.binブートローダーを
フラッシュします。
点滅後、ジャンパー
PA9と
PA10をはんだ付けします(
SWOを出力する場合は
PA10をそのままにします)。
ST-Link
ボードには4つの接点があり、場合によっては既にマークされていますが、2つ目の
ST-Linkによってはんだ付けされている
PA13 (
SWDIO )および
PA14 (
SWCLK )に関して呼び出されます。

食品もはんだ付けします。
アーカイブからSTM32 ST-LINK Utility V4.3をインストールし、書き込み保護を解除して、Protected-2-1-Bootloader.binブートローダーをフラッシュします。
STM32 ST-LINKユーティリティプログラムで保護を解除するには、[
ターゲット ]
> [オプションバイト ]をクリックし、[
読み取り保護 ]を[
無効 ]に切り替えて[
適用 ]をクリックします。
ST-Link V2.1への更新
ファームウェアの後、フラッシュされたST-Link(すでにほぼV2.1)をPCに接続します。
STM32 ST-LINK Utility V4.3プログラムで、 ST-LINK> Firmware updateをクリックします。
[
デバイス接続]をクリックし
ます。可能な変更のリストが表示されます。

必要な変更を選択します。私の場合は
STM32 + MSD + VCPで 、
はい>>>>をクリックします。
更新が完了するのを待っています...

利益!
最後の部分
SWIMとRSTはそのような変更の後は機能しないため、それらを切断しました。
また、重複する5Vと3.3Vも切り取ります。
4つの空きピンが判明します。
それらで私はチップに配線をはんだ付けします:
PA10-> SWO
PB0-> NRST
PA3-> RX
PA2-> TXすべてをメインコネクタ、残りの空きピンに持ってきます。
結果はそのようなピン配置でした:

はんだ付け後にボードを洗浄することを忘れないでください!
その結果、PCでは、デバイスは次のように定義されます。


仮想フラッシュドライブのボリュームが何なのかわかりません(この場合、F103C8はST-Link V2.1に接続されていました)。
ファームウェアファイルをアップロードすると、プログラマはプログラムなしでチップをフラッシュします。
VCPの確認:

ご清聴ありがとうございました!
コピーするときは、ソースへのリンクを残すようお願いします。
質問がある場合は、できる限りコメントでご連絡ください-お手伝いします。