2023年9月25日月曜日

STLINK-V3MINIEのVCCピンは電力供給しない


背景

以前コピー品STLinkV2を改造してリセットを有効にしました。
改造しなくても本家からSTLINK-V3MINIEという小さいSTLinkが発売されているので、STLinkV2と同様に使えると思い買ってみました。

ピンソケットをはんだ付けして形はコピー品STLinkV2に似せれましたが、VCCピンは電圧検知のみで電気が出てこないと分かりました。
しかしながら、それ以外は詰まりながらも期待通りに動かせたので、取り組んだ内容を記事に残します。

使ったもの

  • STLINK-V3MINIE
    STLink V3の小型品です。
    digikeymouserで買えます。
  • 2x5ピンソケット + はんだ + はんだごて
    V3MINEにピンソケットをはんだづけします。
  • テープ
    V3MINIEに巻き付けてケース代わりにしました。
  • 書込対象のSTマイコン
    今回はSTM32L4に対して書込を試しました。
    これの写真は出てきません。
  • ジャンパワイヤ
    書込対象とSTLinkを繋ぎます。
  • platformioをインストールしたPC
    STLinkモードでプログラムを書き込みます。

ピンソケットを取り付け

STLINK-V3 MINIEの端のパターンは2mmピッチですが、5列なので2.54mmピッチのピンソケットの両端を内側に曲げれば問題なく両面をはんだ付けできます。




VCCは電圧検知用の入力ピンで電気は供給しない

STLinkV2と異なる点です。
この仕様のためプログラム書込には外部電源が必要です。
V3MINIE上のマイコンSTM32F723への電力を供給するDCDCコンバーターの出力をVCCに繋げばSTLinkV2と同仕様にできそうですが、まだ試していません。

データやりとりピンはTMS

データをやりとりするピンはTDOでもTDIでもなく、TMSです。
V3MINIEのユーザーマニュアルにTMSピンは「T_JTMS/T_SWDIO 」のことだと明記されており、STLinkV2のデータ通信線のSWDIOがTMSピンだと分かります。


マニュアルを見てピンの役割を確認するまで、別のピン(TDO)がデータ通信用のピンだと誤認識して時間を取られました。

コネクタはUSB typeC

今どき仕様で嬉しいです。


ケースが無いのがやや不安

以前基板むき出しのUSB基板を使っていて12Vに接触してしまいPCのUSBポートを1つ壊した身としては、保護層が欲しいところです。
自分はテープを巻いて使っています。


STLinkV2とのピン互換表

これらのピンを割り当ててSTLinkV2の電気を供給できない版の書込機として利用可能です。

STLinkV2 V3MINIE 注意点
GNDGND特になし
3.3VVCC電圧検知のみで電気は供給されない
SWCLKCLK特になし
SWDIOTMSTDOやTDIではない
RSTRSTコピー品STLinkV2は動作しないものが多い


platformioの書込はSTLinkV2と同様にstlinkモードで利用可能

platformioのupload_protocol(標準はmbed)をstlinkにすると、STLINK-V3MINIE経由でプログラムをアップロードできます。
[env:l432-on-board]
platform = ststm32
board = nucleo_l432kc
framework = arduino
upload_protocol = stlink

おわり

STLINK-V3MINIEでplatformioのstlinkモードでプログラムを書き込めました。
VCCが電圧検知のみで外部電源が必要なのが自分の用途では残念ですが、コピー品STLinkV2を改造しなくてもリセットピンが有効なstlinkを確保できて良かったです。

参考

STLINK-V3MINIE user manual (PDF)
https://asukiaaa.blogspot.com/2023/04/stm32-low-power-with-stlink-connect-under-reset.html

0 件のコメント :