【STM32備忘録】Nucleo基板のST-LINKで別のNucleo基板に書き込む
はじめに
ST-LINKが分離されたF446RE基板を手に入れたので、これに書き込みを行う手順を覚え書きとして残しておく
参考文献
「nucleo stlink」で調べると色々と出て来た。
配線
書き込みは余っていたNucleo-F302R8のST-LINKを使用する。前準備としてNucleo-F302R8のCN2のジャンパは2つとも外す。
配線は下記のように行った。
F302R8 | F446RE | ケーブルの色 |
---|---|---|
CN4-1 : VDD_TARGET | CN6-04 : +3.3V | Red |
CN4-2 : SWCLK | CN7-15 : PA14 | Green |
CN4-3 : GND | CN6-06 : GND | Black |
CN4-4 : SWDIO | CN7-13 : PA13 | Yellow |
CN4-5 : NRST | CN6-03 : NRST | Blue |
CN6-5 : +5V | CN6-08 : VIN | Orange |
CN4のピン番号は下記のよう感じ、CN4-6は使用していない。
配線の全体感としては下記のような感じ。F446REへの電源供給はF302R8の+5Vから行っている。
プロジェクトの作成
いつもは「Board Selector」の方からプロジェクトを作成していたが、今回は「MCU/MPU Selector」の方から作成してみる。違いとしては「Board Selector」の方から作成するとNucleoとして動かすための最低限の機能が自動設定されるが「MCU/MPU Selector」では何も設定されていないプロジェクトが作成される。
Step1. 今回はSTM32F446REを使用する
Step2. 「Project Name」はお好み、「Target Language」もお好み。自分はC++で書くことがあるのでC++を選んでいる。
Step3. 下記のようにプロジェクトは何も設定されていない状態で作成される
Step4. とりあえずデバッグ用にLEDを光らせるためのポート出力を設定
Step5. Labelも設定しておく
Step6. ST-LINKからデバッグできるように「Serial Wire」を選択
Step7. クロックの設定は初期状態だと下記のようになっていた。ここはお好みで変更し、設定を保存してGenerate Codeする。
書き込み
Step0. プログラムが書き込めているか分かるように簡単なLチカプログラムを作成
Step1. 三角マークをクリック。
Step2. 下記画面が出ると思うので「デバッガ」タブを選択し、下記画面にあるように設定を行って「OK」を押すと書き込み開始。
Step3. 下記画面が出たら書き込み成功
おわりに
今回はNucleo基板のST-LINKで別のNucleo基板に書き込む方法について書きました。この方法を使えばたぶんチップ単体に対しても書き込めるんだと思っている。