STM32G0x専用テンプレート発売

LL API利用のSTM32G0x専用テンプレートを、2019年6月1日発売開始します。

STマイクロエレクトロニクス(以下STM)2018年12月新発売のSTM32G0xデバイスは、高性能・低電力なCortex-M0+と70nm新プロセス動作速度向上により、STM32G0x単独で従来汎用STM32F0/F1をカバーする性能と超低電力動作、低価格が特徴です。

このSTM32G0x専用LL (Low-Layer) API利用テンプレートが、今回1,000円(税込)で発売するSTM32G0x専用テンプレートです。

※従来から販売中のSTM32Fxテンプレートは、HAL API利用の汎用テンプレートです。

STM32G4シリーズ追加、全5種となったSTM32 Mainstream MCUs

2019年5月28日、超高性能汎用STM32G4xが発表されました。これでSTM汎用MCUは全5種となりました。一覧が下図です。

STM32汎用MCUラインナップ
STM32汎用MCUラインナップ(出典:STM32 Mainsterm MCUsに加筆)

STM32G0x専用テンプレートは、軽量・高速・エキスパート向きLL APIを利用します。STM32G0x性能をフル発揮するアプリケーションのプロトタイプ開発に最適です。

※STM32G0xや専用テンプレートの本ブログ関連投稿は、下欄タグ🏷:STM32G0x、または、専用テンプレートをクリックしてください。

STM32G0x専用テンプレート適用例2種、API比較評価用2種

LL APIとHAL APIの比較評価のため、汎用テンプレートをSTM32G0xへポーティングしたHAL APIテンプレートも添付します。同一アプリケーションでのLLとHALのリソース使用量、ユーザ記述量、API可読性などを具体的に評価・分析できます。全て評価ボード:Nucleo-G071RB上で動作確認済みです。

STM32G0x専用テンプレート適用例
STM32G0x専用テンプレート適用例

SimpleTemplateは、最も簡単なテンプレート適用例で、基本的なSTM32G071RB周辺回路とテンプレート動作が理解できます。AdcTemplateは、全STM32G0xシリーズ共通周辺回路:2.5Msps 12ビットADC制御をSimpleTemplateに追加し、全てのSTM32G0xプロトタイプ開発の起点となるテンプレートです。

SimpleTemplate、AdcTemplateともにLL APIを利用したSTM32G0x専用テンプレートと、汎用テンプレートをSTM32G0xへポーティングしたHAL APIテンプレートを提供します。

STM32G0x専用テンプレート適用例は、評価ボードのGPIOやLED、LPUART通信など必須の複数STM公式サンプルプロジェクトが実装済みで、すぐにプロトタイプ開発着手ができるLL API利用アプリケーションプロジェクトです。

※HAL版はAPI比較評価用です。2019年5月末時点のコード生成ツールSTM32CubeMX(v5.2.1)とSTM32G0 FW(v1.2.0)は、LL APIでのみSTM32G0x性能をフルに引き出すことができます。

※STM32MCU間でアプリケーション移植・流用性を最大限に保証するHAL APIを利用したソフトウェア開発を希望される方は、STM32Fxテンプレートの購入をご検討ください。

付属説明資料でLL APIアプリケーション開発着手時の障害解消

STM32G0x専用テンプレート付属説明資料のもくじを示します。

STM32G0x専用テンプレート付属説明資料もくじ
STM32G0x専用テンプレート付属説明資料もくじ

説明資料P1~P3は、STM32G0x専用テンプレートサイトから無料ダウンロード可能です。全14ページの詳細な説明により、LL APIが理解でき、STM32G0xデバイス専用アプリケーションのプロトタイプ開発着手時の様々な障害を取り除き、スピード開発するのに専用テンプレートは最適です。

STM32G0x専用テンプレートは、コチラの手順でご購入可能です。よろしくお願いいたします。

*  *  *

STM32CubeMX v5.2.1改版時の注意点

2019年5月24日、STM32CubeMXがv5.2.1へ改版されました。インストール時の注意点を示します。

STM32CubeMX v5.2.1改版
STM32CubeMX v5.2.1改版

STM32CubeMX v5.2.1ダウンロードは、Install Nowクリックのみです。但しダウンロード後、一旦STM32CubeMXを終了し、再起動時は、下記のように管理者と してインストールを実行する必要がありますので注意してください。

STM32CubeMX v5.2.1.Update
STM32CubeMX v5.2.1.Update。インストールは管理者として実行する必要がある。

STM32G0x専用テンプレート開発全体像俯瞰

STM32G0x専用テンプレートの開発着手にあたり、汎用STM32Fxテンプレート開発から2017年9月のテンプレート発売までをざっと振り返り、今回の専用開発との差分になりそうな箇所を示しSTM32G0x専用テンプレート開発全体像を俯瞰、力を入れる投稿予定を示します。

汎用STM32Fxテンプレート開発History

汎用STM32Fxテンプレート開発時の主な投稿と内容
年月日 投稿タイトル 主な内容
2017年5 STM32マイコンIDE構築 SW4STM32の構築
2017年6 STM32CubeMXの使い方 HAL APIの選定理由と利用法
STM32CubeMX生成ファイルのユーザ追記箇所 HAL利用時のユーザ追記箇所
2017年8 評価ボードの利用ピン指針 Baseboardとの接続指針
2017年9 STM32Fxテンプレート発売 汎用STM32Fxテンプレート発売

2017年5月当時は、4種ある無償IDEの中からマルチOS(Windows/MacOS/Linux)対応、仏/AC6社のSW4STM32を使いました。2017年末、無償IDE TrueSTUDIO提供のスウェーデン/Atollic社がSTマイクロエレクトロニクス(以下STM)に買収され、公式にはTrueSTUDIOがSTM32マイコンの純正無償IDEに昇格(!?)したようです😅。

関連投稿:STM32のStep-by-Step Guideの、気になる点1:TrueSTUDIO参照

STM32G0x専用テンプレート開発IDE:TrueSTUDIO

そこで、STM32G0x専用テンプレート開発には、TrueSTUDIO無償版(Windows/Linux対応、MacOSなし)を使います。現在SW4STM32を使っている方にも判り易いようにTrueSTUDIOとの差分を説明する予定です。

但し、筆者はSW4STM32利用中の開発者が、あえてTrueSTUDIOに変更する必要は、今のところ少ないと考えています。ソフトウェア開発の主役は、STM純正コード生成ツールSTM32CubeMXだからです。最新STM32CubeMXを使えば、IDE差は少ないと今は思っています。

勿論、TrueSTUDIOの買収昇格時点でBetterなのは当然だと思います。専用テンプレート開発を通じBetterよりもSW4STM32からTrueSTUDIOへ変更するMust条件が判れば、本ブログでお知らせします。

Tips:STMの日本語資料強化の一環なのか、TrueSTUDIOはEclipseベースIDEなのにインストーラは日本語対応、メニューも日本語になっています(下図参照)。但し、C\ユーザ名\Atollic\TrueSTUDIO for STM32 9.3.0\Manuals\Generalにある重要マニュアル5種は全て英文です。例えば、SW4STM32プロジェクトのTrueSTUDIOインポート方法や注意点は、User GuideのP75~に英文で詳しく説明されています。

日本語対応のTrueSTUDIOメニュー
日本語対応のTrueSTUDIOメニュー

STM32CubeMX:LL API(Application Programing Interface)利用

STM32G0x専用テンプレートは、汎用STM32Fxテンプレート開発で使ったHAL(Hardware Abstraction Layer)APIに変わりLL(Low Layer)APIを使います。LL利用により、STM32CubeMX生成ファイルの初期化コードやユーザ追記箇所がHALとは異なります。LL APIの利用は、専用テンプレートの肝ですので、ブログで詳しく説明します。

IoTサービス例:2.5Msps12ビットADC必須+α

汎用STM32Fxテンプレートは、Baseboardと評価ボードを接続し、基本動作完成形のBaseboardテンプレートを開発しました。STM32G0x専用テンプレートは、Arduinoコネクタに何らかのIoTサービスを示すシールドを接続する予定です。しかし、最悪の場合、汎用と同じBaseboard接続にする可能性もあります。

ただし、特に2.5Mspsの12ビットADCは、3タイプある全STM32G0xデバイスに実装済みで、IoTサービス必須機能ですので、このADCを活かしたIoTサービスは実装必須にします。その他のIoTサービスに関しては、今後決めます。

2.5Msps12ビットADC (RM0444より)
2.5Msps12ビットADC (出典:RM0444)

STM32G0x専用テンプレート発売:2019/3Q~

汎用STM32Fxテンプレートは、5か月の期間で開発しました。STM32G0x専用テンプレートは、HALよりもLL API利用難易度が高いことを考慮すると、最低でも同じ開発期間が必要だと思います。

STM32G0x専用テンプレート開発全体像俯瞰の結果

以上、STM32G0x専用テンプレート開発の全体像を俯瞰しました。
SW4STM32からTrueSTUDIO IDEへの変更必要性、STM32CubeMX のLL API利用法、全STM32G0xデバイス実装済みでIoTサービス必須機能2.5Msps12ビットADC使用法、これらを読者の方々が理解できよう力を入れて投稿記事を作成します。