3
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

STM32 VS Code Extensionを導入する(Windows10)

Last updated at Posted at 2023-04-11

『VSCode for STM32 extension』 ver1.0.0 が正式リリースされた

今までSTM32cubeIDEを使用していたのだが、VSCodeでの拡張が公式リリースされたのでどんなものか確かめてみる。
以前まではPlatformIOなどさらに別の拡張機能を導入しなければ整わなかった開発環境がこれで一気に楽になったらいいな。

ちなみに前提条件として、

  • Windows10でのインストール
  • STM32CubeMXがインストール済み

であること

拡張機能からインストール

  • 拡張機能:マーケットプレースから『STM32 VS Code Extention』を検索してインストール
    タブに追加されているかを確認。
    スクリーンショット 2023-04-11 121023.png

必要な拡張機能はこれでおしまい。

試しにLチカをやってみる

VSCode→STM32CubeMX

  • 『Create a new application project』を選択するとSTM32CubeMXが起動する。
    スクリーンショット 2023-04-11 121845.png
    今手元にあるのはNucleo-G031K8なので、今回はこれを使う。

  • 『ACCESS TO BOARD SELECTOR』を選択
    スクリーンショット 2023-04-11 122316.png

  • 使用するボードを選択して、『Start Project』を選択。(ペリフェラルはデフォルトモードで進めます。)
    スクリーンショット 2023-04-11 122426.png

ペリフェラルをデフォルトモードで設定した場合、特に変更する部分はない。

  • 『Project Manager』タブを選んで、『Project Name』に好きなプロジェクト名を、『Project Location』にワークスペースとなる場所を選ぶ。
  • 『Toolchain/IDE』はSTM32CubeIDEを選択
  • 『GENERATE CODE』を選択するとコードが生成され、『Project Location』で指定した場所にテンプレートが作成される。
    スクリーンショット 2023-04-11 123428.png

これでSTM32CubeMXはおしまい。

STM32CubeMX→VSCode

VScodeに戻る

  • 『Importa local project』を選択
    スクリーンショット 2023-04-11 124221.png

  • 先ほど『Project Location』で指定した場所に『.cproject』が生成されているので選択する。

  • Core/Src/main.cを開いて、以下を変更

Core/Src/main.c
  while (1)
  {
    /* USER CODE END WHILE */

    /* USER CODE BEGIN 3 */
    HAL_GPIO_TogglePin(LD3_GPIO_Port, LD3_Pin);
    HAL_Delay(500);
  }
  /* USER CODE END 3 */
  • 変更後、『Build』を選択し、問題がないか確認する。
    スクリーンショット 2023-04-11 130704.png

※問題があるときはちゃんと報告してくれる。(『;』忘れ)
スクリーンショット 2023-04-11 130602.png
スクリーンショット 2023-04-11 130512.png

デバッグ開始

  • STM32とPCが接続されていることを確認し、『実行とデバッグ』を選択し、三角マークを選択するとデバッグが始まる
    スクリーンショット 2023-04-11 131247.png

  • 途中一時停止した場合は続行ボタンを選択
    スクリーンショット 2023-04-11 131534.png

  • LEDがチカチカし始めたら成功です。

  • 終了する際は四角ボタンを選択すると止まります。

ウオッチ式

  • main.cで記述したHAL_Delay(500);の前にブレークポイントを設定
    スクリーンショット 2023-04-11 131938.png

  • ウオッチ式に『LD3_GPIO_Port』と入力
    スクリーンショット 2023-04-11 132029.png

  • この状態でデバッグを開始すると設定したブレークポイントで一時停止する。

  • 続行ボタンを押すとウオッチ式の『IDR』と『ODR』が変化する様子が観察できます。
    スクリーンショット 2023-04-11 132332.png
    スクリーンショット 2023-04-11 132432.png

Ninjaについて

  • 別環境ではビルドもしくはデバッグ時に[cmake] CMake Error: Error: generator : Ninjaとエラーメッセージが出ました。
  • 用は『Ninja』というものが見当たらないらしいので、Ninjaをダウンロード(Windows10なので『ninja-win.zip』を選択)して解凍してください。
    ※私は『Program Files』内に新規でフォルダを作成して、その中に解凍しました。
  • その後、Pathを通すためにコントロールパネルから、
    システムとセキュリティ>システム>システムの詳細設定>環境変数>システム環境変数>Pathを選択し、
    『編集』からNinjaの解凍先をフルパスで追加指定してください。
  • 私はこれで動きました。

終わりに

  • 他にもいろいろなことができるようですが、私自身もよくわからず使っています。
  • 公式がコミュニティーサイトを開設しているので困ったときはそちらを頼る方が確実だと思います。
3
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?