お客様の素早い設計とより早い製品化を実現する、技術情報と専門知識をご紹介します。
1
接続2
ソフトウェアの入手3
ビルドと実行4
SDKサンプルの変更LPCXpresso55S16を実際に使ってみましょう。ショート・ビデオで手順を視聴するか、以下に記載された詳細な手順を参考にして、作業を進めてください。
ボードには4つのmicro-USBコネクタがあります。Full speed USB用とHigh Speed USB用に1つずつ、もう1つは電源専用、あと1つはデバッグ用です。写真に示すように、USBケーブルを「+5 V Power Only(+5 V電源のみ)」と表記されたコネクタに接続します。
Something went wrong! Please try again.
LPCXpresso55S16ボードには、ターゲットMCUが動作していることを確認するためのプログラムが搭載されています。
RGB-LEDの緑色LEDが1秒間隔で点滅した場合、アプリケーションはアクティブです。
Something went wrong! Please try again.
Something went wrong! Please try again.
このテストには次のものが必要です。
手順:
OOB_testデモのソース・コード (multi_peripherals_test project) はSDKに含まれています。
Something went wrong! Please try again.
汎用マイクロコントローラ・ソフトウェア開発キット (SDK) は無償で利用することができ、オープンソースのライセンスに基づいて、すべてのハードウェア抽象化およびペリフェラル・ドライバ・ソフトウェアのすべてのソース・コードが提供されます。
以下をクリックして、LPCXpresso55S16向けSDKの最新リリースをダウンロードします。ホストOS、ツールチェーン、および必要なコンポーネントを必ず選択してください。
オンラインのSDK Builderにアクセスして、LPCXpresso55S16用のカスタムSDKパッケージを作成することもできます。
Something went wrong! Please try again.
汎用マイクロコントローラIDEは、NXPの開発プラットフォーム・エコシステムです。エンジニアが組込みアプリケーションの開発を初期評価から最終生産まで進めるために役立つ、エンド・ツー・エンドのソリューションです。
別のツールチェーンを使用したい場合は?ツールチェーンを比較する
問題ありません。汎用マイクロコントローラSDKは、IAR、Keil、コマンドラインGCCなどの他のツールをサポートしています。
Something went wrong! Please try again.
LPCXpresso55S16をサード・パーティ製ツールで使用できるようセットアップする前に、まず、ボードのデバイス・ドライバをインストールするためにLPCScryptをインストールします。ボードのデバッグ・ファームウェアを変更するには、LPCScryptチュートリアルに従ってください。
Something went wrong! Please try again.
汎用マイクロコントローラ設定ツールは、ユーザーが汎用マイクロコントローラSDKプロジェクトを新規に作成するための設定ツールの統合スイートであり、カスタム・ボード・サポート用の初期化Cコードを生成するためのピンとクロックのツールも備えています。汎用マイクロコントローラに完全に統合されていますが、別のツールをダウンロードすることもできます。
インポートしたMCUXpresso SDKサンプル・プロジェクトで作業する際や、IDEで新規プロジェクトを作成する際のツール間の基本的なインタラクションの詳細については、この3部構成のビデオ・シリーズをご覧ください。
MCUXpresso IDEとMCUXpresso Config Toolsを使用した基本的なアプリケーション開発Something went wrong! Please try again.
多くの汎用マイクロコントローラSDKサンプル・アプリケーションでは、MCU UART経由でデータを出力します。ステップ2.3に記載のLPCScryptを使用して、必ずシリアル・ドライバをインストールしてください
ターミナル・アプリケーションの使用方法がわからない場合は、汎用マイクロコントローラIDEターミナル・チュートリアル、Tera Termチュートリアル、PuTTYチュートリアルのいずれかのチュートリアルをお試しください。
Something went wrong! Please try again.
汎用マイクロコントローラSDKには、サンプル・アプリケーション・コードが豊富に用意されています。利用可能なコードを確認するには、SDKをインストールしたフォルダのSDKボード・フォルダを参照し、「LPCXpresso55S16」を選択します。
/boards/lpcxpresso55s16
特定のサンプル・コードの詳細については、サンプルのディレクトリにあるreadme.txtファイルを開いてください。
Something went wrong! Please try again.
興味のあるデモ・アプリケーションやドライバのサンプルがいくつかあれば、それをビルドおよびデバッグする方法を知りたくなることでしょう。SDKのスタート・ガイドでは、SDKでサポートされているすべてのツールチェーンのデモを設定、ビルド、およびデバッグする方法について、わかりやすく手順に沿って解説しています。
以下のガイドを参照し、汎用マイクロコントローラIDEでサンプル・アプリケーションを開いてビルドやデバッグを行う方法を習得してください。
次の手順に従ってhello_worldサンプルを開きます。
次の手順に従ってhello_worldアプリケーションを開きます。他のサンプル・アプリケーションでは、手順がわずかに異なる場合があります。アプリケーションによってはパスのフォルダ階層が深くなるためです。
/boards////iar
hello_worldデモの例では、パスは次のようになります。
/boards/LPCXpresso55S16/demo_apps/hello_world/iar
注:ビルド・エラーが発生した場合は、正しいボードが選択されていることを確認します。プロジェクトを右クリックし、[Options(オプション)]>>[General Options(一般オプション)]>>[Target(ターゲット)]>>[Device(デバイス)]の順に進み、「LPC55S16」を選択します。このボードはIAR Embedded Workbench for Armバージョン8.50.1以上でサポートされています。
LPCXpresso55S16ボードには、工場出荷時にCMSIS-DAPデバッグ・インターフェースが搭載されています。ボードのLPC-LINK2デバッグ・アプリケーションを変更している場合は、このスタート・ガイドのステップ2.3「LPCScryptチュートリアル」をご覧ください。
MDKツールをインストールした後、デバッグ目的でデバイスを完全にサポートするには、CMSIS (Cortex® Microcontroller Software Interface Standard) デバイス・パックをインストールする必要があります。このパックには、メモリ・マップ情報、レジスタ定義、フラッシュ・プログラミング・アルゴリズムなどが含まれています。下記の手順に従って、適切なCMSISパックをインストールしてください。
次の手順に従ってhello_worldアプリケーションを開きます。他のサンプル・アプリケーションでは、手順がわずかに異なる場合があります。アプリケーションによってはパスのフォルダ階層が深くなるためです。
/boards////mdk
ワークスペース・ファイルの名前は、
/boards/LPCXpresso55S16/demo_apps/hello_world/mdk/hello_world.uvmpw
LPCXpresso55S16ボードには、工場出荷時にCMSIS-DAPデバッグ・インターフェースが搭載されています。ボードのLPC-LINK2デバッグ・アプリケーションを変更した場合は、前のセクションに記載の「LPCScryptチュートリアル」をご確認ください。
Something went wrong! Please try again.
次に、ボードを接続して、プロジェクトのデバッグに進みます。
J4
が取り外されていることを確認します詳細については、SDKフォルダにある「SDKスタート・ガイド」ドキュメントを参照してください。
/docs/Getting Started with MCUXpresso SDK for LPC55xx.pdf
Something went wrong! Please try again.
SDKには複数のサンプル、デモ、ドライバが含まれており、初めて使用する際に役立ちます。いくつかの一般的な例を以下に挙げます。
Something went wrong! Please try again.
オプションA:汎用マイクロコントローラIDEを使用してサンプル・プロジェクトのクローンを作成。
次の手順に従ってSCTimer PWMデューティ・サイクル変更サンプルを開きます。このサンプルでは、PWM信号を設定し、信号のデューティ・サイクルを定期的に更新します。
注:「ピン・ツールの使用」チュートリアルで、SCTimer出力ピンをボードのRGB LEDに変更し、LEDを「呼吸」するように点滅させる方法について説明しています
オプションB:汎用マイクロコントローラ設定ツールを使用して、サード・パーティ製IDE用に既存の汎用マイクロコントローラSDKサンプルのクローンを作成。
次の手順に従ってSCTimer PWMデューティ・サイクル変更サンプルを開きます。このサンプルでは、PWM信号を設定し、信号のデューティ・サイクルを定期的に更新します。
次に、クローンを作成するプロジェクトを選択します。ここでは、「SCTimer PWM」プロジェクトを使用します。フィルタのボックスに「sctimer」と入力してプロジェクトを絞り込み、「sctimer_pwm_with_dutycycle_change」サンプル・プロジェクトを選択します。また、プロジェクトのクローンの作成先と名前を指定することもできます。[Finish(完了)]をクリックします。
注:「ピン・ツールの使用」チュートリアルで、SCTimer出力ピンをボードのRGB LEDに変更し、LEDを「呼吸」するように点滅させる方法について説明しています
Something went wrong! Please try again.
次に、汎用マイクロコントローラ設定ツールの一部であるピン・ツールを使用し、プロジェクトに新しいGPIOピンを追加してLEDを点滅させる方法を紹介します。
注:従来は、前のステップのようにSDKプロジェクトのクローンを作成する必要がありました。
注:ヘッダーが変更されるため、クロック・ファイルも更新済みとしてタグ付けされる場合があります。
Something went wrong! Please try again.
次に、汎用マイクロコントローラ設定ツールの一部であるクロック・ツールを使用し、クロックの設定とLEDの点滅速度を変更します。
注:従来は、前のステップのようにSDKプロジェクトのクローンを作成する必要がありました。
注:ヘッダーが変更されるため、ピン・ファイルも更新済みとしてタグ付けされる場合があります。
Something went wrong! Please try again.
アプリケーションが変更されると、LPCXpresso55S16のRGBの赤色LEDが「呼吸」するようにゆっくりと点滅します。
Something went wrong! Please try again.
LPC55S16はセキュア・バイ・デザインであり、セキュアなシステム・オン・チップ (SoC) を駆動するセキュアなソフトウェアによってサポートされています。
ドキュメント | 説明 |
---|---|
AN12278 LPC55S00 IoT向けセキュリティ・ソリューション | このドキュメントでは、各LPC55Sxx MCUのセキュリティ・システムの違いと利点をわかりやすく整理して説明しています。 |
AN12324 LPC55SxxにおけるAESコーディングへのPUFおよびハッシュ暗号の使用 | ルート・キーを使用してユーザー・キーをセキュアに生成、保存、および取得する方法。 |
AN13094 TrustZone搭載LPC55Sxxシリーズ・マイクロコントローラでのFreeRTOSの使用 | TrustZone対応ARMv8-MプロセッサでのFreeRTOSの使用方法。 |
ARMv8-MおよびNXP LPC55S69-EVKを使用したTrustZone | MCUXpresso SDKサンプルとLPC55S69 EVKを使用した、ARM TrustZoneセキュリティ機能の紹介。 |
MCUXpresso IDEでTrustZoneプロジェクトをデバッグする方法 | サンプルとして「hello_world」を使用し、LPCXresso55S69ボードでのTrustZoneのデバッグについて紹介しています。 |
SDKには複数のサンプル、デモ、ドライバが含まれており、初めて使用する際に役立ちます。セキュリティと整合性に関する一般的な例を以下に挙げます。
TrustZoneの例には、hello world、secure faults(セキュリティで保護されたエラー)、secure GPIOなど、いくつかの簡単なデモがあります。
パス:
/boards/lpcxpresso55s16/trustzone_examples
NXP MCUデバイス上で起動可能な実行可能ファイルを簡単に生成およびプロビジョニングするためのGUIベースのアプリケーション。
ドキュメント/ソフトウェア/チュートリアル | 説明 |
---|---|
NXPマイクロコントローラ用の有線通信ミドルウェア | MCUXpresso SDKで提供される有線通信ライブラリとサンプルについて説明しています。 |
ConfigToolを使用してUSBプロジェクトを最初から作成する方法 | MCUXpresso Config ToolsとLPCXpresso55S69-EVKを使用したUSBプロジェクトの作成。 |
AN12728 LPC5500シリーズでCAN-FDを使用してデータを転送する方法 | CAN-FDのビット・レート切替え機能とトランスミッタの遅延補正機能を使用して、スループットを向上させ、トランスミッタの遅延によるビット・エラーをなくす方法。 |
CANopenとMCUXpressoのスタート・ガイド | MicroCANopenプロジェクトをMCUXpressoにインポートする方法 |
NXPのMCUXpresso SDKのCANopen | NXP MCUXpresso SDKに含まれるEmSA CANopenライブラリの使用方法。 |
NXP MCUXpresso SDK:Embedded WizardのGUIとEmSAのCANopen (FD) のデモ・ビデオ | NXP MCUXpresso SDKのミドルウェア・コンポーネントを示し、LPC55S16からi.MX RT1064ボードに転送されて可視化されるデータのアクセラレーションについて説明するデモ・ビデオ。 |
i.MX RT1064とLPC55を使用したCANopenおよび組込みウィザードのデモ | i.MX RT1064とLPC55S16デモ・ボードを使用した、NXP MCUXpresso SDKのさまざまなミドルウェア・コンポーネントを組み合わせたデモ。 |
SDKには複数のサンプル、デモ、ドライバが含まれており、初めて使用する際に役立ちます。有線通信に関するいくつかの一般的な例を以下に挙げます。
コマンドライン・シェル・アプリケーションの実装方法のデモ。
パス:
/boards/lpcxpresso55s16/demo_apps/shell
マスタ/スレーブ方式が含まれます。
パス:
/boards/lpcxpresso55s16/canopen_examples
SDKには、GPIO、I2C、I2S、SPI、UARTなどのドライバ・サンプルが複数含まれています。
パス:
/boards/lpc55s16/driver examples
SDKには、ホストおよびデバイスの操作に関するUSBサンプルが複数含まれています。
パス:
/boards/lpcxpresso55s16/usb_examples
ドキュメント/チュートリアル | 説明 | アプリケーション・ノートのソフトウェア |
---|---|---|
AN12805 プライベート・クラウドとのセキュアな接続の確立 | LPCXpresso55S69ボードを使用してセキュアな組込みソフトウェア・プロジェクトを作成する方法。 | ダウンロード |
LPC55S69のAmazon Web Servicesへの接続 | MCUXpressoとAmazon Alexaを使用し、AWSを介したWIFIイネーブルメントとクラウド・コネクティビティに焦点を当てたデモ。 | - |
AWS IOTおよびAlexa skillsにペリフェラルを追加する方法 | AWS IOTおよびAlexa Skillsプロジェクトにペリフェラルを追加するためのステップ・バイ・ステップ・アプローチ。 | - |
SDKには複数のサンプル、デモ、ドライバが含まれており、初めて使用する際に役立ちます。ワイヤレス・コネクティビティに関連する一般的な例を以下に挙げます。
I2Cインターフェース・チップ搭載NT3H2111_2211 NTAG I2C plusコネクテッドNFCタグの使用方法を示し、デバイスとの基本的な通信のデモを提供します。
パス:
/boards/lpcxpresso55s69/ntag_i2c_plus_examples/ntag_i2C_explorer_blink
ドキュメント | 説明 |
---|---|
NXPマイクロコントローラのオーディオ・ソフトウェア | オーディオ・ソフトウェア・テクノロジ、パートナーのオーディオ・ソリューション、および相互にサポートするデバイスに関する情報。 |
SDKには複数のサンプル、デモ、ドライバが含まれており、初めて使用する際に役立ちます。オーディオに関する一般的な例を以下に挙げます。
録音デバイスや再生デバイスを列挙するベア・メタルとFreeRTOSの例。
USBデバイス: オーディオ・ジェネレータ、オーディオ・スピーカ、複合HIDオーディオ
USBホスト:オーディオ・スピーカ
パス:
/boards/lpcxpresso55s16/usb_examples
LPC55S16のSDKには、Adafruit TFT LCDシールドを使用したグラフィック・サンプルが含まれています。
ソフトウェア | 説明 |
---|---|
NXPマイクロコントローラ用のグラフィカル・ユーザー・インターフェース |
さまざまなNXPマイクロコントローラ用のGUIオプションを紹介しています。 |
NXP LPC55S69-EVKに搭載されたAdafruit Touch LCDのオープンソースLittlevGL GUIライブラリ | 静電容量式タッチとMCUライブラリを使用したAdafruit LDCディスプレイの駆動。 |
LVGLオープンソース・グラフィックス・ライブラリ | LVGLは、直感的なグラフィカル要素、美しい視覚効果、少ないメモリ使用量で組込み型GUIを作成できる機能を備えた、無料のオープンソース組込み型グラフィック・ライブラリです。 |
GUI Guider | オープンソースのLVGLグラフィックス・ライブラリを使用して高品質のディスプレイを迅速に開発できる、NXPのユーザー・フレンドリーなグラフィカル・ユーザー・インターフェース開発ツールです。 |
NXP emWinライブラリ | NXPはSEGGER Microcontrollerの協力を得て、NXPのすべてのArm Cortex-Mマイクロコントローラで使用できる高性能のemWin組込みグラフィックス・ライブラリを、バイナリ形式で商用利用向けに無償提供しています。 |
emWinとAppWizardを使用したGUIの開発 | AppWizardのさまざまな機能を使用して、emWinベースのすぐに実行できる完結したプロジェクトを作成する方法。 |
SDKには複数のサンプル、デモ、ドライバが含まれており、初めて使用する際に役立ちます。ディスプレイとグラフィックスに関するいくつかの一般的な例を以下に挙げます。
LittlevGLのウィジェットを表示させるデモ・アプリケーション。
パス:
/boards/lpcxpresso55s16/littlevgl_examples
emWinライブラリのグラフィカル・ウィジェットのデモ。
パス:
/boards/lpcxpresso55s16/emwin_gui_demo
モータ制御は、複雑かつ高度な技術です。モータの数、モータのタイプ、モータ・ドライバがセンサ付きかセンサレスかに応じて複雑さが大きく異なり、困難な問題に陥りがちです。
NXPはすぐに使用できるモータ制御アルゴリズム(ミドルウェア)を数多く提供していますが、最初はMCUXpresso SDKに含まれているFreeMasterのサンプルを使用することをお勧めします。これらのサンプルでは、組込みソフトウェア・アプリケーションの実行時の設定および調整を可能にするユーザー・フレンドリーなリアルタイム・デバッグ・モニタおよびデータ可視化ツール、FreeMASTERランタイム・デバッグ・ツールを活用しています。
FreeMASTERは、実行中のシステムでの変数の非割込み型監視をサポートするとともに、オシロスコープに似たディスプレイに複数の変数を標準のウィジェット(ゲージやスライダーなど)またはテキスト形式のデータとして表示可能で、シンプルに使えるデータ・レコーダを実現できます。また、HTML、MATLAB®、Excelや他のスクリプト可能なフレームワーク、さらにはNode-REDのような人気の高いビジュアル・プログラミング・ツールともリンクできます。
ドキュメント | 説明 |
---|---|
FreeMASTERのハウツー | FreeMASTERツールを使用するエンジニアのためのスタート・ガイド。 |
FreeMASTER 3.0インストール・ガイド | この記事では、FreeMASTER 3.0のインストール手順について説明しています。 |
4部構成のFreeMASTERウェビナー・シリーズ | オンデマンド・トレーニングでは、FreeMASTERソフトウェアの概要、特長、機能、利用可能なサンプル、アプリケーションのユース・ケースのほか、簡単に始めるための方法について説明します。 |
SDKには複数のサンプル、デモ、ドライバが含まれており、初めて使用する際に役立ちます。モータ制御に関するいくつかの一般的なサンプルを以下に挙げます。
SCTimerとCtimerによって複数のPWM出力が示されます。
パス:
/boards/lpcxpresso55s16/driver_examples_ctimer
パス:
/boards/lpcxpresso55s16/driver_examples_sctimer
さまざまなインターフェース・オプションを利用して、変数やグラフを監視できます。
パス:
/boards/lpcxpresso55s16/freemaster_examples
アプリケーションとホストPC間のシリアル・インターフェースを実装し、該当するデバイスのネイティブ・シリアルUART通信およびCAN通信をカバーする、組込みサイドのソフトウェア・ドライバについて説明しています。
パス:
/middleware/freemaster/doc/user_guide
最新バージョンの汎用マイクロコントローラIDEには、ターミナル・エミュレーション・アプリケーションが含まれています。このツールは、お使いのNXP開発プラットフォームの仮想シリアル・ポートから送信された情報を表示するために使用できます。
接続が確立されているか検証します。接続されている場合、汎用マイクロコントローラIDEの[Terminal(端末)]ビューの表示は下図のようになります。
以上で設定は完了です
Tera Termは、広く利用されているオープン・ソースのターミナル・エミュレーション・アプリケーションです。このプログラムを使用して、NXP開発プラットフォームの仮想シリアル・ポートから送信された情報を表示できます。
PuTTYは、広く利用されているターミナル・エミュレーション・アプリケーションです。このプログラムを使用して、NXP開発プラットフォームの仮想シリアル・ポートから送信された情報を表示できます。
LPCScryptは、LPCマイクロコントローラ用のコマンドライン・ベースの高速フラッシュ、EEPROM、OTP、セキュリティのプログラミング・ツールです。最新のCMSIS-DAPおよびJ-Linkファームウェアのプログラム用として推奨されるツールです。
lpc_driver_installer.exe
を実行することで、ドライバを管理できますC:\ProgramData\Microsoft\Windows\Start Menu\Programs\LPCScrypt.
JP6
がLPCXpressoのDFUになりますJ6
を使ってボードをホスト・コンピュータに接続し、コマンドで以下のいずれかのシェル・スクリプトを実行します。 トレーニング | 説明 |
---|---|
CANopenとCANopen FDを使用した堅牢なネットワーク通信 | NXP MCUXpresso SDKに含まれるEmbedded Systems Academy (EmSA) のCANopenミドルウェアの紹介。 |
LPC5500のトレーニング | この製品に関するNXPのオンデマンド・トレーニング、ハウツー・ビデオ、およびウェビナーの全リスト。 |
NXPのいずれかのコミュニティ・サイトで、他のエンジニアとつながり、LPC5500シリーズを使用した設計に関する専門的なアドバイスを受けることができます。
トレーニング | 説明 |
---|---|
CANopenとCANopen FDを使用した堅牢なネットワーク通信 | NXP MCUXpresso SDKに含まれるEmbedded Systems Academy (EmSA) のCANopenミドルウェアの紹介。 |
LPC5500のトレーニング | この製品に関するNXPのオンデマンド・トレーニング、ハウツー・ビデオ、およびウェビナーの全リスト。 |
NXPのいずれかのコミュニティ・サイトで、他のエンジニアとつながり、LPC5500シリーズを使用した設計に関する専門的なアドバイスを受けることができます。