AliExpressにてSTM32F103のマイコンボードを購入した
届いたらMCUが偽物(コピー品)だった。
STM32CubeIDEで書き込もうとするとエラーが出て書き込めなかった。
低画質ですみません(なんとかCKSの文字が見て取れる[中科芯杯(CKS)社のクローンらしい])
このページで解決すること
CKS社のF103のチップにSTM32CubeIDEで書き込めるようにする。(ST-LINK/V2-1にて)
問題と原因
デバッグ時エラーがでる。書き込めない。
書き込み時、MCUのIDが正規品では0x1ba01477だがコピー品は0x2ba01477であることが原因。
(エラーは出るがコンソールに0x1ba01477などの文字が出ないこともある。[デバッグプローブをST-LINK GDBを選択している場合])
手順
1. STM32F1への書き込みの設定ファイル"stm32f1x.cfg"を編集する
2. デバッグ時、"stm32f1x.cfg"を利用する設定を行う(○○_Debug.cfgの編集とデバッグの設定変更)
環境
・STM32CubeIDE(日本語化済み)
・日本語化してるので、初期インストール時と項目名が異なります。すみません
・ST-LINK/V2-1(NUCLEO-F303RE)
・CKS32F103C8T6互換マイコンボード(AliExpressにて購入)
手順1 STM32F1への書き込みの設定ファイル"stm32f1x.cfg"を編集する
STM32F1への書き込みの設定ファイルであるため、STM32CubeIDEに1つ存在しています(後で説明するファイルはプロジェクトごとに存在)
私の場合は、
"C:\ST\STM32CubeIDE_1.1.0\STM32CubeIDE\plugins\com.st.stm32cube.ide.mcu.debug_1.1.0.201910101207\resources\openocd\st_scripts\target\stm32f1x.cfg"
に存在していました。
このファイルをわかりやすい名前に変更し、同じフォルダ内にコピーします(たとえばcs32f1x.cfg)。
この複製したファイル内の文字の
set _CPUTAPID 0x1ba01477を
set _CPUTAPID 0x2ba01477にテキストエディタで変更します(全1か所中1か所)
手順2 デバッグ時、"stm32f1x.cfg"を利用する設定を行う("○○_Debug.cfg"の編集とデバッグの設定変更)
"○○_Debug.cfg"は
私の場合は、
"C:\Users\ユーザ名\STM32CubeIDE\workspace_test\test_Lchika\test_Lchika デバッグCS.cfg"
に存在していました。
今回はtest_Lchikaというプロジェクトを対象としています。またIDEを日本語化している場合、ファイル名の"Debug"が"デバッグ"になります(どちらでも問題ないはず)。
このファイルをわかりやすい名前に変更し、同じフォルダ内にコピーします(たとえば"test_Lchika デバッグCS.cfg")。
この複製したファイル内の文字の
source [find target/stm32f1x.cfg]を
source [find target/cs32f1x.cfg]にテキストエディタで変更します(全1か所中1か所)
手順3 STM32CubeIDEのデバッグの設定の変更
実行-デバッグの構成を開く。
対処のデバッグ項目が存在しない場合、STM32 Cortex-m C/C++ APPをダブルクリックすると作成される。
デバッグの項目のデバッグプローブを"ST-LINK OpenOCD"を選択する。
Configration Scriptにてユーザ定義を選択し、ファイルを手順2で作成したファイルを選択する。
デバッグを押す
以上です
実際にLチカが動作することは確認しました。(写真ナイケド
接続したピンは、3.3、GND、SWDIO、SWCLK、NRST
はまったこと
・OpenOCDではソフトウェアリセットができなさそうなので、NRST(リセットピン)を接続しなければならない。
さいごに
この方法ではデバッグは可能だが、SWVなどのトレースはできなくなる。
プロジェクトを作成するたびに、手順2以降を実行しなければならない。
中華なので、壊れているのか、接続ミスなのか、わからないのが大変だった(CubeIDEでのエラー内容で検索しても見つからなかった)
STM32F103自体は安いのにADCが2つも入っていて(コンバータが2つ搭載)いい感じです
参考にしたサイト
SW4STM32を利用した場合の書き込みについて↓
・電子工作専科 TOP > 開発環境構築 > STM32 > CS32
https://denshikousakusenka.jimdofree.com/%E9%96%8B%E7%99%BA%E7%92%B0%E5%A2%83%E6%A7%8B%E7%AF%89/stm32/cs32/
中国製のSTM32クローンチップについて↓
・Cerevo Tech blog [20日目] 100%オリジナルで高品質新しいSTM32F103完全に交換自由な船積み
https://tech-blog.cerevo.com/archives/8539/