2019年04月27日

STM32CubeIDE

先日、STからSTM32CubeIDEという純正の開発環境が発表されました。
今回はSTM32CubeIDEを紹介させて頂きます。


今までSTM32の開発環境はSW4STM32、TrueStudioといったパートナー企業が開発したIDEを使用することが一般的でした。
STM32マイコンをワンストップで開発できるようにCubeMXにTrueStudioを統合したSTM32CubeIDEが開発されました。


cubeide1.jpg


SW4STM32、TrueStudioと比べると、
CubeMXで設定して生成したプロジェクトを開発環境にインポートする手間が減っています。

早速、ダウンロードして試食してみました。



cubeide2.jpg

起動するとワークスペース選択画面がでます。
デフォルトのままで「Launch」をクリックします。

cubeide3.jpg

起動するとプロジェクトの新規作成、or 開くボタンが表示されます。

今回は最初なので新規作成から行いました。
「Start new STM32 Project」をクリックします。

cubeide4.jpg

CbeMX同様にマイコン選択画面が表示されます。
今回は手持ちのSTM32F401Nucleoを選択しました。

cubeide5.jpg

続いてプロジェクト設定画面が表示されます。
ここでC,C++で記述するのかといった設定ができます。
プロジェクト名のみ設定して「Next」をクリック。

cubeide6.jpg

コード生成に際して、CubeMXのファームバージョン等の選択画面が表示されます。
デフォルトのままで「Finish」をクリック。


cubeide7.jpg

ピンアサイン、クロック、ペリフェラル設定の画面が表示されます。
一通り設定を行ったあとはコード生成を行います。


cubeide8.jpg

Project→Generate Codeをクリックしてコードを生成します。
CubeMXがすでにインストールされている場合、CubeMXのファームパッケージのディレクトリから自動で読み込まれるようです。
CubeMXのファームパッケージがない場合や古い場合は自動でダウンロードが開始されます。


cubeide9.jpg
コードが生成された後はCtrl+Bでプロジェクトのビルドをします。
デフォルトではデバッグ用のelfファイルのみ生成されます。
必要に応じてプロジェクトウインドウのプロジェクト名を右クリックして、プロパティからbin or hexファイルを生成するように設定します。
Alt+Enterでもプロパティを表示できます。

cubeide10.jpg

C/C++ Build→Settings→MCU Post Build outputsから「Convert to binary file/ Intel Hex file」にチェックを入れます。
これでビルドするとbinファイルが生成され、STLink UtilityやCube Programmer等から書き込みできます。


またデバッグ等を行う場合もこれまでのSW4STM32やTrue studio同様です。

cubeide11.jpg

Debug Configurationからデバッグ設定を行います。

cubeide12.jpg

Search Projectからelfファイルを選択してDebugボタンを押すことでオンラインデバッグが可能です。

SW4STM32やTrueStudioの開発環境にCubeMXのプラグインを予め導入したものがSTM32CubeIDEという感じです。

cubeide13.jpg

TrueStudioの機能かもしませんがビルド後にメモリの空きスペースが表示される機能は便利だと思いました。
今回のSTM32CubeIDE発表に伴い、残念ながらSW4STM32、TrueStudioの開発環境はNRND、つまり新規開発には非推奨になっています。
今後はSTM32CubeIDEがメインになるようです。
デフォルトでbin、hexが生成されない設定や通常の書き込みボタンやツールがないようなので初心者には少し戸惑う点があると思いました。

sw4stm32.jpg


SW4STM32ではデフォルトでbinが生成され、上記のような書き込みボタンがありました。
これからの発展に期待しましょう。
posted by Crescent at 00:00| Comment(0) | 電子工作 | このブログの読者になる | 更新情報をチェックする
この記事へのコメント
コメントを書く
お名前:

メールアドレス:

ホームページアドレス:

コメント:

※ブログオーナーが承認したコメントのみ表示されます。