お客様の素早い設計とより早い製品化を実現する、技術情報と専門知識をご紹介します。
1
接続2
ソフトウェアの入手3
ビルドと実行4
SDKサンプルの変更LPCXpresso55S28を実際に使ってみましょう。ショート・ビデオで手順を視聴するか、以下に記載された詳細な手順を参考にして、作業を進めてください。
図1. LPC55S28前面
Something went wrong! Please try again.
ボードには4つのmicro-USBコネクタがあります。Full speed USB用とHigh Speed USB用に1つずつ、もう1つは電源専用、あと1つはデバッグ用です。写真に示すように、USBケーブルを「+5 V Power Only(+5 V電源のみ)」と表記されたコネクタに接続します。
図2. LPC55S28前面とUSB
Something went wrong! Please try again.
LPCXpresso55S28ボードには、以下で説明するスイッチのLEDの簡単なデモと、次のセクションで説明するオーディオのデモが搭載されています。
RGB-LEDの緑色LEDが1秒間隔で点滅した場合、ボードは作動しています。スイッチのLEDのデモ:
Something went wrong! Please try again.
MCUXpressoソフトウェア開発キット (SDK) は無償で利用することができ、オープンソースのライセンスに基づいて、すべてのハードウェア抽象化およびペリフェラル・ドライバ・ソフトウェアのすべてのソース・コードが提供されます。
以下をクリックして、LPCXpresso55S28用に事前設定済みのWindows SDKリリースをダウンロードしてください。これには、MCUXpresso、Keil MDK、GCC Arm Embedded、IAR Embedded WorkbenchをサポートするIDEが含まれます。
オンラインのSDK Builderにアクセスして、LPCXpresso55S28用のカスタムSDKパッケージを作成することもできます。
Something went wrong! Please try again.
MCUXpresso IDEは、NXPの開発プラットフォーム・エコシステムです。エンジニアが組込みアプリケーションの開発を初期評価から最終生産まで進めるために役立つ、エンド・ツー・エンドのソリューションです。
問題ありません。MCUXpresso SDKは、IAR 、 Keil 、コマンドラインGCCなどの他のツールをサポートしています。
Something went wrong! Please try again.
MCUXpresso Config Toolsは、ユーザーがMCUXpresso SDKプロジェクトを新規に作成するための構成ツールの統合スイートであり、カスタム・ボード・サポート用の初期化Cコードを生成するためのピンとクロックのツールも備えています。MCUXpressoに完全に統合されていますが、別のツールとしてダウンロードすることもできます。
インポートしたMCUXpresso SDKサンプル・プロジェクトで作業する際や、IDEで新規プロジェクトを作成する際のツール間の基本的なインタラクションの詳細については、この3部構成のビデオ・シリーズをご覧ください。
MCUXpresso IDEとMCUXpresso Config Toolsを使用した基本的なアプリケーション開発
Something went wrong! Please try again.
LPCXpresso55S28をサード・パーティ製ツールで使用できるようセットアップするには、まず、ボードのデバイス・ドライバをインストールするためにLPCScryptをインストールします。以下のビデオで、LPCScryptユーティリティを使用してボードのデバッグ・プローブをプログラムする方法について説明しています。
Something went wrong! Please try again.
多くのMCUXpresso SDKサンプル・アプリケーションでは、MCU UART経由でデータを出力します。ステップ2.3に記載のLPCScryptを使用して、必ずシリアル・ドライバをインストールしてください
ターミナル・アプリケーションの使用方法がわからない場合は、MCUXpressoターミナル、Tera Termチュートリアル、PuTTYチュートリアルのいずれかのチュートリアルをお試しください。
Something went wrong! Please try again.
MCUXpresso SDKには、サンプル・アプリケーション・コードが豊富に用意されています。利用可能なコードを確認するには、SDKをインストールしたフォルダのSDKボード・フォルダを参照し、「LPCXpresso55S28」を選択します (
) 。
特定のサンプル・コードの詳細については、サンプルのディレクトリにあるreadme.txtファイルを開いてください。
Something went wrong! Please try again.
次の手順に従ってhello_worldサンプルを開きます。
次の手順に従ってhello_worldアプリケーションを開きます。他のサンプル・アプリケーションでは、手順がわずかに異なる場合があります。アプリケーションによってはパスのフォルダ階層が深くなるためです。
/boards////iar
hello_worldデモをサンプルとして使用する場合、パスは次のようになります。
/boards/LPCXpresso55S28/demo_apps/hello_world/iar
注:ビルド・エラーが発生した場合は、正しいボードが選択されていることを確認します。プロジェクトを右クリックし、[Options(オプション)]>>[General Options(一般オプション)]>>[Target(ターゲット)]>>[Device(デバイス)]の順に進み、「LPC55S628」を選択します。このボードはIAR Embedded Workbench for Armバージョン8.40.1以上でサポートされています。
LPCXpresso55S28ボードには、工場出荷時にCMSIS-DAPデバッグ・インターフェースが搭載されています。ボードのLPC-LINK2デバッグ・アプリケーションを変更している場合は、このスタート・ガイドのステップ2.3「LPCScryptチュートリアル」をご覧ください。
J4
) が取り外されていることを確認して、内部フラッシュからデバッグ・プローブを起動します。 MDKツールをインストールした後、デバッグ目的でデバイスを完全にサポートするには、CMSIS (Cortex® Microcontroller Software Interface Standard) デバイス・パックをインストールする必要があります。このパックには、メモリ・マップ情報、レジスタ定義、フラッシュ・プログラミング・アルゴリズムなどが含まれています。下記の手順に従って、適切なCMSISパックをインストールしてください。
次の手順に従ってhello_worldアプリケーションを開きます。他のサンプル・アプリケーションでは、手順がわずかに異なる場合があります。アプリケーションによってはパスのフォルダ階層が深くなるためです。
/boards////mdk
ワークスペース・ファイルの名前は、
/boards/LPCXpresso55S28/demo_apps/hello_world/mdk/hello_world.uvmpw
LPCXpresso55S28ボードには、工場出荷時にCMSIS-DAPデバッグ・インターフェースが搭載されています。ボードのLPC-LINK2デバッグ・アプリケーションを変更した場合は、前のセクションに記載の「LPCScryptチュートリアル」をご確認ください。
J4
) が取り外されていることを確認して、内部フラッシュからデバッグ・プローブを起動します。 Something went wrong! Please try again.
オプションA:MCUXpresso IDEを使用して、サンプル・プロジェクトのクローンを作成します。
次の手順に従ってSCTimer PWMデューティ・サイクル変更サンプルを開きます。このサンプルでは、PWM信号を設定し、信号のデューティ・サイクルを定期的に更新します。
注:「ピン・ツールの使用」チュートリアルで、SCTimer出力ピンをボードのRGB LEDに変更し、LEDを「呼吸」するように点滅させる方法について説明しています
オプションB:MCUXpresso Config Toolsを使用して、サード・パーティ製IDEで使用するために既存のMCUXpresso SDKのサンプルのクローンを作成します。
次の手順に従ってSCTimer PWMデューティ・サイクル変更サンプルを開きます。このサンプルでは、PWM信号を設定し、信号のデューティ・サイクルを定期的に更新します。
注:「ピン・ツールの使用」チュートリアルで、SCTimer出力ピンをボードのRGB LEDに変更し、LEDを「呼吸」するように点滅させる方法について説明しています
Something went wrong! Please try again.
次に、MCUXpresso Config Toolsの一部であるピン・ツールを使用し、プロジェクトに新しいGPIOピンを追加してLEDを点滅させる方法を紹介します。
注:従来は、前のステップのようにSDKプロジェクトのクローンを作成する必要がありました。
注:ヘッダーが変更されるため、クロック・ファイルも更新済みとしてタグ付けされる場合があります。
sctimer_update_dutycycle.c
ファイルを開きます。Something went wrong! Please try again.
次に、MCUXpresso Config Toolsの一部であるクロック・ツールを使用し、クロックの設定とLEDの点滅速度を変更します。
注:従来は、前のステップのようにSDKプロジェクトのクローンを作成する必要がありました。
clock_mux.c
ファイルとclock_mux.h
ファイルをエクスポートして、これらの変更をプロジェクトに実装します。メニュー・バーの[Update Project(プロジェクトの更新)]をクリックします。 注:ヘッダーが変更されるため、ピン・ファイルも更新済みとしてタグ付けされる場合があります。
Something went wrong! Please try again.
アプリケーションが変更されると、LPCXpresso55S28のRGBの青色LEDが「呼吸」するようにゆっくりと点滅します。
Something went wrong! Please try again.
最新バージョンのMCUXpresso IDEには、ターミナル・エミュレーション・アプリケーションが含まれています。このツールは、お使いのNXP開発プラットフォームの仮想シリアル・ポートから送信された情報を表示するために使用できます。
Tera Termは、広く利用されているオープン・ソースのターミナル・エミュレーション・アプリケーションです。このプログラムを使用して、NXP開発プラットフォームの仮想シリアル・ポートから送信された情報を表示できます。
PuTTYは、広く利用されているターミナル・エミュレーション・アプリケーションです。このプログラムを使用して、NXP開発プラットフォームの仮想シリアル・ポートから送信された情報を表示できます。
*.exe
ファイルをダブルクリックするか、[Start(スタート)]メニューから選択して、PuTTYを起動します。LPC55S28はセキュア・バイ・デザインであり、セキュアなシステム・オン・チップ (SoC) を駆動するセキュアなソフトウェアによってサポートされています。
ドキュメントとビデオ | 説明 |
---|---|
AN12278 LPC55S00 IoT向けセキュリティ・ソリューション | このドキュメントでは、各LPC55Sxx MCUのセキュリティ・システムの違いと利点をわかりやすく整理して説明しています。 |
AN12324 LPC55SxxにおけるAESコーディングへのPUFおよびハッシュ暗号の使用 | ルート・キーを使用してユーザー・キーをセキュアに生成、保存、および取得する方法。 |
AN12445 非対称暗号化アクセラレータCASPER | このドキュメントでは、LPC55S2xシリーズのセキュリティ・デバイス上のRAM共有付き暗号化アクセラレータおよび信号処理エンジン (CASPER) について紹介しています。CASPERペリフェラルは、非対称暗号化アルゴリズムならびに特定の信号処理アルゴリズムの高速化を実現します。 |
AN12527 LPC55Sxx PRINCEリアルタイム・データ暗号化 | PRINCEアルゴリズムは、LPC55Sxxのオンチップ・フラッシュ・コンテンツに対するリアルタイム暗号化/復号化に使用されます。この機能は、アプリケーション・コードの保護、データの保護、セキュアなフラッシュ・アップデートへの対応などの資産保護に役立ちます。 |
SDKには複数のサンプル、デモ、ドライバが含まれており、初めて使用する際に役立ちます。セキュリティに関するいくつかの一般的な例を以下に挙げます。
KSDKソフトウェアを使用し、CASPERソフトウェア・ドライバでべき剰余アルゴリズムを実装するデモ・プログラム。
パス:
/boards/lpcxpresso55s28/driver_examples/casper
KSDKソフトウェアを使用し、AESおよびSHAアルゴリズムでプレーン・テキストを暗号化/復号化するデモ・プログラム。
パス:
/boards/lpcxpresso55s28/driver_examples/hasycrypt
内部フラッシュ・メモリに格納されたデータをオンザフライ暗号化/復号化するためのPRINCEドライバの設定方法。
パス:
/boards/lpcxpresso55s28/driver_examples/prince
KSDKソフトウェアを使用し、PUFソフトウェア・ドライバでセキュアな鍵管理を実装するデモ・プログラム。
パス:
/boards/lpcxpresso55s28/driver_examples/puf
KSDKソフトウェアを使用し、乱数を生成して端末に出力するデモ・プログラム。
パス:
/boards/lpcxpresso55s28/driver_examples/rng>
MCUXpressoセキュア・プロビジョニング・ツール NXPのMCUデバイスでブート可能な実行ファイルを簡単に生成およびプロビジョニングできるようにする、GUIベースのアプリケーション。
ドキュメントとビデオ | 説明 |
---|---|
ConfigToolを使用してUSBプロジェクトを最初から作成する方法 | MCUXpresso Config ToolsとLPCXpresso55S28-EVKを使用したUSBプロジェクトの作成。 |
TN00071 フルスピード・ハブでのUSB検出 | LPC55xxデバイスには、フルスピード・ハブでUSB高速デバイス・コントローラを使用する場合のエラッタがあります。このテクニカル・ノートでは、ソフトウェアでのワークアラウンドと、USB PHYレシーバ・コントローラ (RX) レジスタを使用してUSBの接続段階でホストの速度を確実に正しく検出する方法について説明しています。 |
TN00063 LPC5500でのクリスタルレスUSBソリューション | このテクニカル・ノートでは、フルスピード・モードでのクリスタルレスUSBデバイスの動作をLPC5500アプリケーションに組み込むために必要なソフトウェアの変更手順について説明しています。 |
SDKには複数のサンプル、デモ、ドライバが含まれており、初めて使用する際に役立ちます。有線通信に関するいくつかの一般的な例を以下に挙げます。
コマンドライン・シェル・アプリケーションの実装方法のデモ。
パス:
/boards/lpcxpresso55s28/demo_apps/shell
SDKには、GPIO、I2C、I2S、SPI、USARTなどのドライバ・サンプルが複数含まれています。
パス:
/boards/lpcxpresso55s28/driver_examples
SDHCドライバの割込みまたはポーリング・ベースの転送APIを使用してSDカードにアクセスする方法、およびSDKソフトウェアでのSDカード・ドライバ・ベースのFATFSディスクの使用方法を示す複数のサンプル。
パス:
/boards/lpcxpresso55s28/sdmmc_examples
SDKには、ホストおよびデバイスの操作に関するUSBサンプルが複数含まれています。
パス:
/boards/lpcxpresso55s28/usb_examples
ドキュメントとビデオ | 説明 | アプリケーション・ノートのソフトウェア |
---|---|---|
AN12805 プライベート・クラウドとのセキュアな接続の確立 | LPCXpresso55S28ボードを使用してセキュアな組込みソフトウェア・プロジェクトを作成する方法。 | ダウンロード |
LPC55S69のAmazon Web Servicesへの接続 | MCUXpressoとAmazon Alexaを使用し、AWSを介したWIFIイネーブルメントとクラウド・コネクティビティに焦点を当てたデモ。 | - |
AWS IOTおよびAlexa skillsにペリフェラルを追加する方法 | AWS IOTおよびAlexa Skillsプロジェクトにペリフェラルを追加するためのステップ・バイ・ステップ・アプローチ。 | - |
Amazon FreeRTOSドキュメント | FreeRTOSは、マイクロコントローラおよび小型マイクロプロセッサ向けで市場をリードしているリアルタイム・オペレーティング・システム (RTOS) です。このサイトでは、ユーザー・ガイド、APIリファレンス、移植ガイド、認定ガイドなどのリソースを見つけることができます。 | - |
AWS IoT開発者向けガイド | AWS IoTは、お使いのIoTデバイスをAWS IoTベースのソリューションに統合するのに役立つデバイス・ソフトウェアを提供しています。 | - |
SDKには複数のサンプル、デモ、ドライバが含まれており、初めて使用する際に役立ちます。ワイヤレス・コネクティビティに関連する一般的な例を以下に挙げます。
I2Cインターフェース・チップ搭載NT3H2111_2211 NTAG I2C plusコネクテッドNFCタグの使用方法を示し、デバイスとの基本的な通信のデモを提供します。
パス:
/boards/lpcxpresso55s69/ntag_i2c_plus_examples/ntag_i2C_explorer_blink
シリアルのデモでは、UARTインターフェース経由で接続されたSerialMWM Wi-Fiモジュールの使用方法を示しています。iperfのサンプルでは、ネットワーク・スタックのパフォーマンス測定のための基本的なコマンドを提供しています。
パス:
/boards/lpcxpresso55s28/wifi_examples
シンプルな電球のサンプルで、クライアント・アプリケーションやモノがShadowサービスとどのように通信するかを紹介しています。
パス:
/boards/lpcxpresso55s28/aws_examples/shadow_wifi_serial
LPC55S28は、最大150 MHzで動作するArm® Cortex® M-33コアを搭載しています。さらに、暗号化エンジンとしてRAM共有付き暗号化アクセラレータおよび信号処理エンジン (CASPER) ペリフェラルを備えており、非対称暗号化アルゴリズムならびに特定の信号処理アルゴリズムへのアクセラレーションを提供します。
ドキュメントとビデオ | 説明 |
---|---|
AN12445 非対称暗号化アクセラレータCASPER | このドキュメントでは、LPC55S2xシリーズのセキュリティ・デバイス上のRAM共有付き暗号化アクセラレータおよび信号処理エンジン (CASPER) について紹介しています。CASPERペリフェラルは、非対称暗号化アルゴリズムならびに特定の信号処理アルゴリズムの高速化を実現します。 |
SDKには複数のサンプル、デモ、ドライバが含まれており、初めて使用する際に役立ちます。マルチコアとハードウェア・アクセラレーションに関連する一般的な例を以下に挙げます。
KSDKソフトウェアを使用し、CASPERソフトウェア・ドライバでべき剰余アルゴリズムを実装するデモ・プログラム。
パス:
/boards/lpcxpresso55s28/driver_examples/casper
ドキュメントとビデオ | 説明 |
---|---|
AN12939 LPC55xxへの5.1チャネル・オーディオ・ソリューションの実装 | LPC55S28は、オンボードDSPアクセラレータを備え、USBオーディオ・アプリケーションに非常に適しています。 |
このデモでは、次のものが必要になります。
スマートフォンまたはタブレットのヘッドフォン端子からのオーディオ・ソースを「Audio Line In」コネクタに接続し、ヘッドフォンを「Audio Line Out」コネクタに接続します。
オーディオが入力に供給されていれば、ヘッドフォンで音声を聞くことができます。
SDKには複数のサンプル、デモ、ドライバが含まれており、初めて使用する際に役立ちます。オーディオに関するいくつかの一般的な例を以下に挙げます。
USBホスト:オーディオ・スピーカ
パス:
/boards/lpcxpresso55s69/usb_examples
パス:
/boards/lpcxpresso55s69/driver_examples/i2s
ドキュメントとビデオ | 説明 |
---|---|
NXPマイクロコントローラ用のグラフィカル・ユーザー・インターフェース | さまざまなNXPマイクロコントローラ用のGUIオプションを紹介しています。 |
AdafruitタッチLCDとともにLPC55S69を使用したGitHubプロジェクト | LPC55S69-EVKでの静電容量式タッチ・スクリーンの追加および使用方法を示すプロジェクト。 |
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ベースのすぐに実行できる完結したプロジェクトを作成する方法。 |
AN12732 LPC5500シリーズでのHDMI-CECの実装 | HDMI-CEC(高精細度マルチメディア・インターフェース-民生用電子機器制御)機能を、GPIOとSCTを使用してLPC5500シリーズに基づきHDMI-CECプロトコルをサポートするテレビまたはプロジェクタとして実装する方法。 |
SDKには複数のサンプル、デモ、ドライバが含まれており、初めて使用する際に役立ちます。ディスプレイとグラフィックスに関するいくつかの一般的な例を以下に挙げます。
LittlevGLのウィジェットを表示させるデモ・アプリケーション。
パス:
/boards/lpcxpresso55s28/littlevgl_examples
emWinライブラリのグラフィカル・ウィジェットのデモ。
パス:
/boards/lpcxpresso55s28/emwin_gui_demo
ドキュメントとビデオ | 説明 | アプリケーション・ノートのソフトウェア |
---|---|---|
AN12868 LPC55(S)xxのカメラ・インターフェース | カメラのインターフェース、機能、APIルーチン、デモを紹介しています。 | ダウンロード |
モータ制御は、複雑かつ高度な技術です。モータのタイプ、モータの数、モータ・ドライバがセンサ付きかセンサレスかに応じて複雑さが大きく異なり、困難な問題に陥りがちです。
NXPはすぐに使用できるモータ制御アルゴリズム(注:ミドルウェア)を数多く提供していますが、最初はSDKに含まれているFreeMasterのサンプルを使用することをお勧めします。これらのサンプルでは、FreeMASTERランタイム・デバッグ・ツールを活用しています。これは、組込みソフトウェア・アプリケーションの実行時の設定および調整を可能にするユーザー・フレンドリーなリアルタイム・デバッグ・モニタおよびデータ可視化ツールです。
ドキュメントとビデオ | 説明 |
---|---|
FreeMASTERのハウツー | FreeMASTERツールを使用するエンジニアのためのスタート・ガイド。 |
FreeMASTER 3.0 - インストール・ガイド | この記事では、FreeMASTER 3.0のインストール手順について説明しています。 |
SDKには複数のサンプル、デモ、ドライバが含まれており、初めて使用する際に役立ちます。モータ制御に関するいくつかの一般的な例を以下に挙げます。
さまざまなインターフェース・オプションを利用して、変数やグラフを監視できます。
パス:
/boards/lpcxpresso55s28/freemaster_examples
FreeMASTER通信ドライバ・ユーザー・ガイド - アプリケーションとホストPC間のシリアル・インターフェースを実装し、該当するデバイスのネイティブ・シリアルUART通信およびCAN通信をカバーする、組込みサイドのソフトウェア・ドライバについて説明しています。
パス:
/middleware/freemaster/doc/user_guide
ドキュメントとビデオ | 説明 |
---|---|
MCUXpresso IDEとMCUXpresso Config Toolsを使用した基本的なアプリケーション開発 | この3部構成のビデオ・シリーズでは、インポートされたSDKサンプル・プロジェクトを使用する際や新規プロジェクトを作成する際における、MCUXpresso IDEとConfig Tools間の基本的なインタラクションについて取り上げています。 |
LPC55(S)xxマイクロコントローラのハードウェア設計ガイドライン | このドキュメントは、ハードウェア・エンジニア向けに、LPC55(S)xxプロセッサをベースとした設計方法と設計のテスト方法を示しています。このドキュメントは、ボードのレイアウトの推奨事項と設計チェックリストに関する情報を提供することで、初回での成功を確保し、ボード立上げ時の問題を回避できるようにします。 |
LPC5500シリーズでのフラッシュ・プログラミングのヒント | 従来のLPC製品であるLPC4300、LPC54000、LPC1800、LPC800と比較して、LPC5500では新しいフラッシュIPを採用し、ROM APIドライバに対応しています。この新しいシリーズには多くの新機能が導入されています。同時に、LPC5500シリーズのフラッシュは初めて使用するユーザーにとっては少々複雑かもしれません。このドキュメントは、これらの障壁を取り除き、ユーザーにとって役立つヒントを提供することを目的としています。 |
AWSのトレーニング | AWSのエキスパートによるトレーニング・プログラムとコース。 |
LPC55S28のトレーニング | この製品に関するNXPのオンデマンド・トレーニング、ハウツー・ビデオ、およびウェビナーの全リスト。 |
NXPのいずれかのコミュニティ・サイトで、他のエンジニアとつながり、LPC55ファミリを使用した設計に関する専門的なアドバイスを受けることができます。