STM32F4を弄る(3) Cube環境でひとまずLチカ

STM32

こん○○は、よふかしわーくすの、よふかしさんです
3回目はBlack Pillと呼ばれるWeAct製かそれ系のSTM32F411を使ってCube環境でLチカやってみます

マイコン弄りはハードウェアマニュアルやデータシートを見るのが基本…なんですが
ちょっとしたことをしたいだけなのに、そんなの見てる時間ねぇ…
って場合もあるかと思います(というか、ほとんどがそう?)
ゴリゴリにやるのでない場合、Cube環境を使うと意外と簡単にイケちゃうので
今回はそんな手抜きな進行をやってみたいと思います

今回使用している開発環境は、
CubeMX:Version 6.13.0
CubeIDE:Version 1.17.0
で解説していきます


CubeMXの設定

まずは、CubeMXの使い方から

CubeMXを起動して、
File→New Project

Commercial Part Numberのところに探したい型番を入れて(今回はF411と入力)
MCUsMPUs List…のところで、STM32F411CEU6を選択

スイッチサイエンスさんのページの回路図にはSTM32F4X1CXU6って書いてあります
WeAct純正の情報が載ってそうなこの辺りを見ても合ってます
実際に載っているチップ上のプリントを確認するのが確実かと思います
なかなか見づらいと思うので、スマホ等で撮影して、拡大表示するのがオヌヌメです


クロック設定

この基板には外部についている水晶発振器があるので、その設定をしていきます

とりあえずCubeMXのマイコン型番を設定して起動しただけで、何も設定されていない画面

このBlack Pillは回路図によると、2つの水晶発振器がついてるので、まずはそれを設定
Pinout & Configuration→Categories、RCCを選択
High Speed Clock (HSE)を、Crystal/Ceramic Resonator、に設定
Low Speed Clock (LSE)を、Crystal/Ceramic Resonator、に設定

Clock Configurationのタブを選択して
HSEを25MHzに設定
LSEを32.768kHzに設定


LED出力ピンの設定

LED出力ピンを設定していきます

この基板だとPC13ポートにLEDがついてます
Pinout & Configurationタブに戻って、PC13ピンを左クリック
GPIO_Outputを選択

PC13を右クリックすると下記のメニューが出るので
Enter User Labelを選択して…

今回はひとまず、LEDと入力

この後に扱うコードで、PC13をLEDという名称で扱える様になりました


初期コード生成

これまでのクロック設定、PC13のGPIO設定を反映した初期コードを生成していきます

Project Managerタブに移動
Project NameやProject Locationを任意に設定
 →今回はProject Nameを「STM32F411_BlackPill_01」に設定

Toolchain/IDEはSTM32CubeIDEを選択
あとは右上のGENERATE CODEをクリックすれば完了です


Projectを開く

CubeMXで生成したProjectを開いてCubeIDEで開いて、ソースコード変更の準備をしていきます

まずCubeIDEを開く
CubeMXで生成した際に、Open Projectを選択してもよいです

CubeIDEを先に起動しておいて後から開くのであれば、
Open Projects from File System…を選択

先ほどCubeMXで作成したProjectを選択してFinishを選択

CubeIDEでProjectが開けました
左のメニューバーのRestoreを開くとProject Explorerが開きます


コード編集

実際にLチカコードを書いていきます

Project Explorerから、ツリーを、
Project名→Core→main.cと辿って、ダブルクリックで開く
こんな感じで、CubeIDE上でソース編集ができます

下記の様にコードを記述
なんちゃらBEGINなんちゃらと、なんちゃらENDなんちゃら、の間に記述しないと
CubeMXで再度コード出力した際に上書きされて消えてしまうので注意

  /* Infinite loop */
  /* USER CODE BEGIN WHILE */
  while (1)
  {
    /* USER CODE END WHILE */

    /* USER CODE BEGIN 3 */
	HAL_GPIO_TogglePin(LED_GPIO_Port, LED_Pin);
	
	HAL_Delay(500);
  }
  /* USER CODE END 3 */


BuildとFlash

BuildとFlashを実行します

先の画面のメニューバーの下のアイコン軍の中の再生ボタンっぽいアイコンをクリック
またはメニューバーのRun→Runでも同じです
初回は下記画面が出ますがOKをクリック

Download verified successfully
Sutting down…
Exit.
と表示されて正常に動作すればOK

こんな感じで光れば成功です


終わりに

基本的なLチカをCube環境でやってみました
次も基板単体でできる実装をやっていきたいと思います

公開日時:2024/12/17 22:22:39

コメント

タイトルとURLをコピーしました