モノのインターネット (IoT) は、家電製品や時計など、従来はインターネット接続機能を備えていなかった無数のデバイスにインターネット接続機能を追加することを約束します。来たるIoT革命は、医療機器、産業プロセス制御、自動車などの分野に変化をもたらすでしょう。
多くの場合、接続性を追加するには、以前は「ダム」だったデバイスにマイクロコントローラとそれに付随するソフトウェア インフラストラクチャ全体を追加することになります。マイクロコントローラには、アプリケーション コード自体だけでなく、リアルタイム オペレーティング システム (RTOS)、低レベルのデバイス ドライバ、TCP/IPスタック、暗号化や認証などのセキュリティ機能、およびその他の多数のモジュールが含まれています。より広範なソフトウェア エコシステムには、コンパイラ、エディター、デバッガー、エミュレーション ツールなどのさまざまな開発ツールが含まれます。
図1: Internet of Everythingがあなたのお気に入りの製品にもうすぐ登場 (出典: Texas Instruments)
従来、これらの開発ツールは、マイクロコントローラ サプライヤーのソフトウェアと独立したプロバイダーのソフトウェアの組み合わせから提供されていました。このアプローチでは最大限の柔軟性が得られますが、相互運用性と統合の問題が発生するリスクが伴います。さらに、デバイス ドライバーなどの多くの低レベル機能は、選択した特定のマイクロコントローラー用にゼロから作成する必要がある場合があります。このような問題は、アプリケーション コードの最初の行が書き込まれる前であっても、開発時間を費やす可能性があり、エンド ユーザーの目から見て製品の差別化にはつながりません。
ソフトウェア開発はすでに製品サイクルに大きく貢献しています。競争の激しいIoT環境においては、不必要な開発時間を追加することが成功と失敗の違いとなる可能性があります。
これを認識し、顧客に負担の少ない開発サイクルを提供し、市場投入までの時間を最小限に抑えたい(そして、偶然にも、自社の収益化までの時間を短縮したい)という思いから、マイクロコントローラ製造業者はエンドツーエンドのソフトウェア開発ツールの開発に多額の投資を行っています。彼らが投資している2つの方法は、社内のソフトウェア チームの強化と、独立系ソフトウェア企業への投資または買収です。
すべての開発ソフトウェアをハードウェア サプライヤーから調達することで、選択したマイクロコントローラに合わせて開発環境を最適化できます。さらに、マイクロコントローラ ベンダーは、デバイス アーキテクチャに関する深い知識を活用して、I/Oドライバーなどの低レベル機能や、グラフィックス エンジン、暗号化、認証などのハードウェアとの緊密なやり取りを必要とするアルゴリズム用のテスト済みのコードを提供することができます。
Microchip社のMPLAB Xプログラミング プラットフォームは、PC (Windows、Mac OS、またはLinux) 上で実行され、Microchipデバイス用のアプリケーションの開発を迅速化します。MPLAB Xは、Microchipのすべてのマイクロコントローラおよびデジタル信号コントローラと互換性があり、新しく再設計され、OracleのオープンソースNetBeans IDEをベースにしています。
MPLAB Xは同じコンパイラの複数のバージョンをサポートしており、ユーザーは各プロジェクトに異なるコンパイラを割り当てることができます。さらに、複数の同時デバッガーのサポートにより、エンジニアは単一のMPLAB Xインストールを使用して複数のターゲットを同時にデバッグできるようになります。
Microchip社は、IDE製品に加えて、自社製品用のRTOSや、Bluetooth、デジタル フィルター、CODECおよび圧縮アルゴリズム、AES、対称暗号化、IPv4/v6 TCP/IPスタックなどのアプリケーション用のソフトウェアも提供しています。
FreescaleのCode Warrior (CW) 製品ファミリには、8ビットのS08/RS08および16ビットのS12(X) ファミリ、Kinetis ARMベースの µC、32ビットのQorivvaおよびColdFire、DSPファミリなど、同社のすべてのマイクロコントローラとDSPが含まれます。Code Warriorスイートには、統合開発環境 (IDE)、フル機能のデバッガー、シミュレーター、コンパイラ出力を微調整するビルド ツール、パフォーマンス分析ツールなど、さまざまな機能が含まれています。
CWスイートには、ますます強力な機能セットと許容されるコード サイズを備えたベーシック、標準、プロフェッショナル バージョンが用意されています。また、ネットワーク アプリケーション専用のCWスイート セットもあります。これらは複数のアーキテクチャをサポートし、SerDes検証やパケット分析などのネットワークに重点を置いた一連のツールを追加します。
どれが最も適しているかを判断するために、期間限定で評価版を無料でダウンロードできます。完全に機能する特別版も利用可能です。これらも同様に無料でダウンロードできますが、コード サイズに制限があります。制限のないファミリーは、サブスクリプションまたは永久ライセンスを通じて購入できます。
CrossCore Embedded Studioは、Analog Devices BlackfinおよびSHARCプロセッサ ファミリ向けのIDEです。Windows上で実行されるEclipseベースのIDEは、C/C++ およびアセンブリ言語の編集、コード生成、デバッグ サポートを提供します。
CrossCore Embedded Studioは、BlackfinおよびSHARC開発者に、ドライバー、サービス、アルゴリズム ソフトウェア モジュール用の統合アドイン サポートも提供します。これらには、オンチップおよびオフチップ周辺機器のドライバー サポート、イーサネットおよびUSBのスタック、RTOS、ファイル システムが含まれます。
製品の評価に役立てていただくために、90日間の無料ダウンロードをご利用いただけます。シングルユーザー ライセンスから、指定された企業ネットワーク上で無制限のユーザーを許可する企業ライセンスまで、さまざまな購入オプションが提供されています。
AtmelのStudio 6は、C/C++ またはアセンブリ コードで記述されたARM Cortex-MおよびAtmel AVRマイクロコントローラ ベースのアプリケーションを開発およびデバッグするための統合開発プラットフォーム (IDP) です。最新バージョンのStudio 6.2には、データおよび割り込みトレース、改善されたRTOS統合、最適化されたコードのデバッグ機能の向上などの高度なデバッグ機能が含まれています。料金も無料です。
Studio 6のコンポーネントには、ビジュアル アシストC/C++ コード補完ツールを備えた統合エディター、デバッガー、パフォーマンス テスト アプリケーション、フルチップ シミュレーション、およびすべてのAtmelインサーキット プログラマーへのインターフェイスを備えたインシステム プログラミングが含まれます。
IDPは、1,600個のARMおよびAVRプロジェクト例を含む無料のソース コード ライブラリであるAtmel Software Framework (ASF) と統合されています。ASFは、プロジェクトに必要な低レベルの設計の大部分を最小限に抑える、すぐに使用できるコードへのアクセスを提供することで、設計者が開発サイクルを短縮するのに役立ちます。同社はまた、エンジニアが組み込み設計を安全に共有し、同僚とプロジェクトの進捗状況を追跡できるクラウドベースの共同作業スペースであるAtmel Spacesも提供しています。
マイクロコントローラベンダーは、自社製品に加えて、さまざまなアプリケーションのコードを認証することで開発者を支援しています。たとえば、Texas InstrumentsのSafeTI機能安全ソフトウェア開発プロセスは、ISO 26262およびIEC 61508準拠のソフトウェア コンポーネントをASIL DおよびSIL 3レベルの安全度で開発するのに適していると認定されています。
同社はまた、機能安全システムに特化したツール、ソフトウェア、コンサルティング サービスを提供し、SafeTIコンポーネントをサポートするSafeTIパートナーのリストも管理しています。