高度なアプリケーションを作成する

新しい高度なアプリケーションを作成する最も簡単な方法は、Visual Studio Code Azure Sphere 拡張機能の空白テンプレートから開始し、次の手順に従って構成をプロジェクトに合わせて調整することです。

  1. Visual Studio Code を起動します。 [コマンド パレットの表示>] を選択し、「Azure Sphere: Generate New Project」と入力します。

    Visual Studio コードのコマンド バー

  2. [テンプレート] メニューから [HL Blank] を選択します。

    テンプレート名を含むポップアップ メニュー

  3. Visual Studio Code では、エクスプローラー ウィンドウが表示されます。 空のアプリケーションを配置するフォルダーに移動し、プロジェクトの名前 (NewHLApp など) を指定します。 Visual Studio Code は、選択した場所に NewHLApp フォルダーを作成し、空のアプリケーションのビルド ファイルを生成します。 CMake からのメッセージが表示されます。

  4. CMakeLists.txt ファイルを開き、使用しているハードウェアの定義を含むフォルダーを指定します。 既定では、HL Blank アプリケーションにはハードウェア定義が含まれています。 サンプル ハードウェア定義は、Azure Sphere Samples リポジトリにあります。または、「ハードウェア定義」の説明に従って作成することもできます。

    次に、Seeed Azure Sphere MT3620 Development Kit のサンプル ハードウェア定義を追加する方法を示します。

    azsphere_target_hardware_definition(${PROJECT_NAME} TARGET_DIRECTORY "HardwareDefinitions/mt3620_rdb" TARGET_DEFINITION "sample_appliance.json")

    この行は、最後のコマンドの先頭 azsphere_target_add_image_packageの前に挿入する必要があります。

また、次のいずれかの高レベルの Azure Sphere サンプルから新しい高レベル アプリケーションを作成することもできます。

  1. まだ作成していない場合は、 サンプル リポジトリ を複製します。 いずれかの高度なアプリケーション フォルダーをコピーし、プロジェクトの名前を変更します。

  2. CMakeLists.txt ファイルで、プロジェクト名を新しいフォルダーの名前に変更します。 例えば:

    PROJECT(NewHLApp C)

新しい高度なアプリケーションを作成する最も簡単な方法は、Visual Studio Azure Sphere 拡張機能の空白テンプレートから開始し、次の手順に従って構成をプロジェクトに合わせて調整することです。

  1. Visual Studio を起動し、[ 新しいプロジェクトの作成] を選択します。

  2. [テンプレートの検索] というラベルの付いた検索ボックスに「」と入力Azure Sphereします。 返された一覧から [Azure Sphere HLCore Blank] を選択し、[ 次へ] を選択します。

  3. プロジェクト名 (NewHLApp など)、プロジェクト ファイルの場所、ソリューション名 (プロジェクト名と同じにすることができます) を指定し、[ 作成] を選択します。 Visual Studio は、選択した場所に NewHLpp フォルダーを作成し、空のアプリケーションのビルド ファイルを生成します。 CMake からのメッセージが表示されます。

  4. CMakeLists.txt ファイルを開き、使用しているハードウェアの定義を含むフォルダーを指定します。 既定では、HL Blank アプリケーションにはハードウェア定義が含まれています。 サンプル ハードウェア定義は、Azure Sphere Samples リポジトリにあります。または、「ハードウェア定義」の説明に従って作成することもできます。

    次に、Seeed Azure Sphere MT3620 Development Kit のサンプル ハードウェア定義を追加する方法を示します。

    azsphere_target_hardware_definition(${PROJECT_NAME} TARGET_DIRECTORY "HardwareDefinitions/mt3620_rdb" TARGET_DEFINITION "sample_appliance.json")

    この行は、最後のコマンドの先頭 azsphere_target_add_image_packageの前に挿入する必要があります。

また、次のいずれかの高レベルの Azure Sphere サンプルから新しい高レベル アプリケーションを作成することもできます。

  1. まだ作成していない場合は、 サンプル リポジトリ を複製します。 いずれかの高度なアプリケーション フォルダーをコピーし、プロジェクトの名前を変更します。

  2. CMakeLists.txt ファイルで、プロジェクト名を新しいフォルダーの名前に変更します。 例えば:

    PROJECT(NewHLApp C)

新しい高レベル アプリケーションを作成する最も簡単な方法は、次のいずれかの高レベルの Azure Sphere サンプルから開始することです。

  1. まだ作成していない場合は、 サンプル リポジトリ を複製します。 いずれかの高度なアプリケーション フォルダーをコピーし、プロジェクトの名前を変更します。

  2. CMakeLists.txt ファイルで、プロジェクト名を新しいフォルダーの名前に変更します。 例えば:

    PROJECT(NewHLApp C)

高度なアプリケーションの基本的なファイル構造

アプリケーションの作成方法に関係なく、すべての Azure Sphere アプリケーションは次のコア ファイルを共有します。

  • 1 つ以上のファイル内のアプリケーション ソース コード。 現時点では、C 言語のソース コードのみがサポートされています。
  • CMake ビルド ファイル。 CMakeLists.txt が必要です。 CMake は、Ninja ライトウェイト ビルド ユーティリティと共に、Azure Sphere アプリケーションのビルド プロセスを制御するために使用されます。
  • アプリケーションで使用できる機能を記述する アプリ マニフェスト ファイル。

高レベルのアプリケーションには、通常、少なくとも 3 つのファイルがあります。

  • さまざまな Azure Sphere API のバージョン レベルを指定するための applibs-versions.h ファイル
  • コード内のハードウェア コンポーネントを参照する便利な方法を提供する 2 つのハードウェア定義ファイル (JSON 形式の編集可能なバージョンと、そこから生成された C 言語インクルード ファイル)。 一貫性のあるハードウェア定義ファイルのセットを使用すると、ハードウェアに依存しないソース コードを記述し、CMakeLists.txt ファイル内の適切なハードウェア定義ファイルを再ターゲットするだけで、特定のハードウェアのアプリケーション イメージを作成できます。

コードを記述する

  1. Azure Sphere の高度なアプリ サンプルをガイドとして使用して、アプリケーション コードを記述します。 次のトピックでは、特定の実装シナリオについて説明します。
  2. CMakeLists.txt ファイルで、次の手順を実行します。
    • Azure Sphere SDK ツールのリビジョンを指定する
    • ターゲット API セットを指定する
    • ターゲット ハードウェアを指定する
  3. app_manifest.json ファイルで、次の手順を実行します。
    • プロジェクト名に設定 Name します。
    • ハードウェア リソースや接続など、コードに必要なアプリケーション固有の機能を追加します。 高レベルのアプリが RTApp と通信する場合は、高レベル アプリケーションのコンポーネント ID を機能に追加します AllowedApplicationConnections

リアルタイム対応パートナー アプリと共に高レベルアプリをデプロイする場合は、launch.vs.json (Visual Studio) または .vscode/launch.json (Visual Studio Code) ファイルの configurations セクションの partnerComponents フィールドにパートナーのコンポーネント ID を追加します。

"partnerComponents": [ "25025d2c-66da-4448-bae1-ac26fcdd3627" ]

「」も参照してください