创建高级应用程序

重要

这是 Azure Sphere(旧版)文档。 Azure Sphere(旧版)将于 2027 年 9 月 27 日停用,用户此时必须迁移到 Azure Sphere(集成)。 使用位于 TOC 上方的版本选择器查看 Azure Sphere(集成)文档。

创建新的高级应用程序的最简单方法是从 Visual Studio Code Azure Sphere 扩展开始使用空白模板,并按照以下步骤调整项目配置:

  1. 启动 Visual Studio Code。 选择“查看>命令”面板,然后键入 Azure Sphere:生成新项目。

    Visual Studio 代码中的命令栏

  2. 从“模板”菜单中选择“HL 空白”。

    包含模板名称的弹出菜单

  3. 然后,Visual Studio Code 会显示文件资源管理器窗口。 导航到要放置空白应用程序的文件夹,并为项目指定名称,例如 NewHLApp。 Visual Studio Code 会在所选位置创建 NewHLApp 文件夹,并为空白应用程序生成生成文件。 你应可看到来自 CMake 的消息。

  4. 打开CMakeLists.txt文件,并指定包含所使用硬件定义的文件夹。 默认情况下,HL 空白应用程序不包含硬件定义。 可以在 Azure Sphere 示例存储库中找到示例硬件定义,也可以创建一个,如硬件定义中所述

    下面演示如何为 Seeed Azure Sphere MT3620 开发工具包添加示例硬件定义:

    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 空白”,然后选择“下一步”。

  3. 指定项目名称(例如 NewHLApp)、项目文件位置和解决方案名称(可以与项目名称相同),然后选择“ 创建”。 Visual Studio 会在所选位置创建 NewHLpp 文件夹,并为空白应用程序生成生成文件。 你应可看到来自 CMake 的消息。

  4. 打开CMakeLists.txt文件,并指定包含所使用硬件定义的文件夹。 默认情况下,HL 空白应用程序不包含硬件定义。 可以在 Azure Sphere 示例存储库中找到示例硬件定义,也可以创建一个,如硬件定义中所述

    下面演示如何为 Seeed Azure Sphere MT3620 开发工具包添加示例硬件定义:

    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 应用程序都共享以下核心文件:

高级应用程序通常至少有三个其他文件:

  • 用于指定各种 Azure Sphere API 的版本级别的 applibs-versions.h 文件
  • 两个硬件定义文件(JSON 格式的可编辑版本和从其中生成的 C 语言包含文件)提供了一种方便的方法来引用代码中的硬件组件。 使用一组一致的硬件定义文件,可以编写独立于硬件的源代码,然后只需在CMakeLists.txt文件中重新定位相应的硬件定义文件,即可为特定硬件生成应用程序映像。

编写代码

  1. 使用 Azure Sphere 高级应用示例编写应用程序代码作为指南。 以下主题介绍了特定的实现方案:
  2. CMakeLists.txt文件中
    • 指定 Azure Sphere SDK 工具修订
    • 指定目标 API 集
    • 指定目标硬件
  3. app_manifest.json文件中
    • Name 设置为项目名称。
    • 添加代码所需的任何特定于应用程序的功能,例如硬件资源或连接。 如果高级应用与 RTApp 通信,请将高级应用程序的组件 ID 添加到 AllowedApplicationConnections 该功能。

如果要将高级应用与支持实时的合作伙伴应用一起部署,请将合作伙伴的组件 ID 添加到launch.vs.json(Visual Studio)或 .vscode/launch.json(Visual Studio Code)文件的“配置”部分的 partnerComponents 字段中

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

另请参阅