Texas Instruments)MSP432(Cortex-M4F/48MHz)評価ボード:MSP-EXP432P401R LaunchPadを使ってオープンプラットフォーム開発環境:Energia IDEの使い方を示します。Energia IDEは、簡単に言うとマイコン版Arduino IDE。Windows/Mac OS/UnixのマルチOS動作で、TIマイコンMSP430やC32xxなど、7種MCUのLaunchPad評価ボードをサポート中です。
IoT MCUの高度なセキュリティ実装を考えると、MCU開発者でもArduino IDEの使い方を知っておくのは有用だと前回投稿しました。
MSP-EXP432P401R LaunchPadを例にEnergia IDEの使い方を解説します。
Energia IDE
Energia IDEの使い方は、Arduino IDEと同じです。Single Board Computer開発で用いられるArduino IDEと同じ方法でTIマイコンのソフトウェア開発ができます。
Energia IDEインストール手順が以下です(と言っても、解凍だけで動作します)。
- Energia Downloadサイトから対応OSバージョンをダウンロードし解凍。Windows版では、解凍先フォルダがEnergia IDEの動作環境ですので、安心して試せます👍。
- 解凍先フォルダのenergia.exeクリックでEnergia IDEが起動します。デフォルトボードは、右下表示のMSP-EXP430F5529LPです。
- ツール>ボードマネージャでEnergia MSP432 EMT RED boards by Energiaをインストールします。
ネットワーク環境に依存しますが、この手順2完了に少し時間がかかります。※REDは、基板の版数:Rev 2.0 を示します。MSP-EXP432P401R LaunchPadには、BLACK:Rev 1.0もありますので注意してください。詳しくは、User’s Guide:SLAU597Fを参照してください。
- ボードマネージャでRED LaunchPad w/ msp432p401r EMT(48MHz)を選択。次に、評価ボードをPCに接続し、ツール>使用シリアルポートを選択(2ポートあってもどちらでも可)。書込装置はmspdebugを選択。
以上で、MSP-EXP432P401R LaunchPad のEnergia IDE環境セットアップが完了です。
MSP-EXP432P401R LaunchPadのスケッチ動作
- スケッチ例>内蔵のスケッチ例から、例えば、Basics>Fadeを選び、マイコンボードに書き込む:➡クリックでコンパイル実行と評価ボードへの書込みが完了し、動作します。スケッチ例とは、サンプルアプリケーションのことです。他にも様々なスケッチ例があり、➡クリックのみで簡単にMSP432P401R評価ボードスケッチ例の動作確認ができます。
※ボード書き込み時にエラーが発生する場合は、サイトのGuideからEnergia Driver Packageをダウンロードし、管理者権限でインストールすると解決します。スケッチ例のソースコードは、上図のように可読性が高く、初期設定:setup()と無限ループ:loop()の2つから構成されています。
現状は、セキュリティ関連のスケッチ例はありません。しかし、セキュリティは、全てのIoT MCUに必須で共通機能ですので、そのうち提供される可能性はあると思います。色々な周辺回路や機能をすぐに動作確認できるスケッチ例は、プロトタイプ開発に有効です。
Energia IDEプログラミング
サイトのReferenceに、functions/variables/structureの3部構成のAPI説明書があります。各APIをクリックすると、初心者でも解り易い解説とEnergia IDEで試せるサンプルコードがあります。コード中のピン番号は、Pin Mapsで評価ボード毎に示されています。
このプログラミングに関する資料の解り易さが、Energia IDE(=Arduino IDE)の特徴です。デバイスで出来ることを直感的にすぐにプログラミングする情報としては、これら2サイト情報だけで十分です。
Cortex-M4カテゴリにTI)MSP432採用
本ブログのCortex-M4カテゴリへ、MCUとしてTexas Instruments)MSP432(Cortex-M4F/48MHz)を追加します。開発環境は、本稿のEnergia IDEとTI純正無償Code Composer Studio(CCS)、3つ目にCCS cloudを使う予定です。CCS cloudは、次回解説します。
本ブログで、シェア上位5社MCUベンダとその主要MCUを全てカバーできたことになります(関連投稿:ARM Cortex-M4ベンダと評価ボードの2章)。
CMSISを使ってCortex-M4 MCUで開発したソフトウェアは、Cortex-M0/M0+/M3への流用も可能です(関連投稿:NXP MCUXpresso SDKから見るARMコアMCU開発動向)。
プロトタイプ開発は、高性能で開発リクスが少なく、様々なセキュリティ機能を試せるCortex-M4で行い、製品化時にコストメリットを活かすCortex-M0/M0+/M3を使うなどの方法や検討もありえるでしょう。
他のCortex-M4 MCUとしては、NXP)LPC54114(Cortex-M4/M0+)、STM)STM32G473RE(Cortex-M4)、Cypress)PSoC63(Cortex-M4/M0+)などをCortex-M4カテゴリへ追加予定です。