プロジェクトを作ってみよう その1
前回、無事に環境を作り終わったと思うのでプロジェクトを作りましょう。
プロジェクト作成
まずプロジェクトをテンプレから作るのでSTM32CubeMXを開きます。

今回はNUCLEO-F446REを使うので囲ってるボタン↑からプロジェクト作成画面を呼び出します。

ちょっと待つとこんなの↑が出てくるはずなので赤で囲ったテキストボックスにNUCLEO-F446REとぶち込みましょう。
青で囲ったトコではないので注意。

絞り込まれると右下にNUCLEO-F446REが出てくるので、これをクリック(①)した後、「Start Project」を押して(②)下さい。
なんか出ますが取り敢えずYes押しといて下さい。デフォルト設定が適用されるので楽になります。
プロジェクト編集
しばらく待つとなんか出てきます。

コイツがピン編集画面ですが、まず先に赤で囲ったトコを押してクロック編集画面に移ります。

まず①を180に変更し、そのままEnterを押すか②を押すかをすると他の部分をいい感じに設定してくれます。便利。
③でピン設定画面に戻ります。

まず機能一覧をA to Zにして(①)、TIM3を選択(②)します。

TIM3、タイマー3の設定が開きます。
タイマーは、一定間隔で処理したりn回入力された時に処理したりするための機能です。
赤で囲ったチャンネル1・3・4の設定を変更(①)します。
PWM Generation CH*を選びます。Output Compare 〜やPWM Generation No Outputではないので注意。
変更したら右のピンのPA6・PB0・PB1に割り当てられますが、今回はそれぞれPC6・PC8・PC9に割り当てたいのでCtrlキーを押しながらD&Dして(②)下さい。
次に、TIM2を選択(③)します。

TIM2、タイマー2の設定が開きます。
赤で囲ったチャンネル1の設定を変更(①)します。
こちらもPWM Generation CH1を選びます。他のを選ばないよう注意。
変更したら右のピンのPA0に割り当てられますが、例によってPB8に割り当てたいのでCtrlキーを押しながらD&Dして(②)下さい。
また、そのままでは信号が1/65536になってしまうため最大値を65535へ設定(③)します。

次に、USART3を選択(①)します。
USART・UARTとは、基板同士で通信するための機能です。
USARTはUARTの上位互換らしいです。が、UARTとしてしか筆者は使ったことがないのでよー分からんです。
ModeでAsynchronousを選択(②)します。これでUARTとして機能します。
NVIC Settingsを選択(③)してチェックを入れます(④)。
これで受信処理を書けます。
(2025/09/17追記ここから)

ピンの割り当てを変えます。初期状態で下の方に割り当てられてるUSART3のピンたちを上の方に持っていきます。
場所は示しましたが、まぁCtrl+ドラッグで移動してれば勝手にハイライトしてくれるので迷うことはないでしょう。
(2025/09/17追記ここまで)
(2025/09/08追記ここから)
完全にGPIO出力ピンの設定忘れてましたねぇ…(アホ)

PA6・7・11とPB12(赤丸で囲ったピンたち)をクリックしてGPIO_Outputを選んでください。
(2025/09/08追記ここまで)
これで今回必要なピン設定は終わりました。⑤からプロジェクト設定画面に移ります。

ここではプロジェクトの生成方法などを設定します。
まずプロジェクト名を設定(①)します。講習用のプロジェクトなんで自分で分かりゃなんでもいいです。
次にプロジェクトの場所を設定(②)します。右のBrowseから選択したりパスをコピペしたりして設定します。
例えば/home/foobar/Documentsとした場合/home/foobar/Documents/(プロジェクト名)以下に生成され、
C:\Users\foobar\Documentsとした場合C:\Users\foobar\Documents\(プロジェクト名)以下に生成されます。
(↓↓↓↓↓ここ重要↓↓↓↓↓)
この時、OneDrive・Google Driveなどのクラウドストレージは選ばない方が身のためです。(同期周りでトラブりがち)
あと、OneDriveもそうだけど、特にWindows勢は日本語が含まれるパスには置かないで下さい。(Shift_JISは悪)
(↑↑↑↑↑ここ重要↑↑↑↑↑)
プロジェクトの生成場所の設定が終わったので、生成するファイル共の種類を設定(③)します。
今回はCMakeを使うのでCMakeに設定します。
ここまで終わったら④から次の設定に移ります。

こっちは実際に生成されるコードに関する設定です。
まず、ファイルを分割し編集しやすく(①)します。
次に、使ってないピンの電源供給を止めて省エネにします(②)。
以上で全てのプロジェクト設定が終わった…はずなので右上のボタン(③)を押してコードを生成します。
なんかYes/No聞いてくる時はYesと答えて下さい。ファームウェアの更新です。
次回予告
今回で必要なプロジェクトは無事に作成し終わりました。
次回はCLionでプロジェクトを開くために必要な初期設定をしていきます。