Создание высокоуровневого приложения

Самый простой способ создать новое высокоуровневое приложение — начать с шаблона Blank из расширения Azure Sphere Visual Studio Code и настроить конфигурацию проекта, выполнив следующие действия.

  1. Запустите Visual Studio Code. Выберите Просмотр>палитры команд, а затем введите Azure Sphere: Generate New Project (Azure Sphere: Generate New Project).

    Панель команд в Visual Studio Code

  2. Выберите HL Blank в меню Шаблоны.

    всплывающее меню с именами шаблонов

  3. Visual Studio Code отобразится окно проводник. Перейдите в папку, в которую нужно поместить пустое приложение, и укажите имя проекта, например NewHLApp. Visual Studio Code создает папку NewHLApp в выбранном расположении и создает файлы сборки для пустого приложения. Вы должны увидеть сообщения из CMake.

  4. Откройте файл CMakeLists.txt и укажите папку, содержащую определения используемого оборудования. По умолчанию пустое приложение HL не содержит определений оборудования. Примеры определений оборудования можно найти в репозитории Примеры Azure Sphere или создать, как описано в разделе Определения оборудования.

    Ниже показано, как добавить примеры определений оборудования для 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)

Самый простой способ создать новое высокоуровневое приложение — начать с шаблона Blank из расширения Visual Studio Azure Sphere и настроить конфигурацию в соответствии с проектом, выполнив следующие действия.

  1. Запустите Visual Studio и выберите Создать проект.

  2. Введите Azure Sphere в поле поиска метку Поиск шаблонов. Выберите Azure Sphere HLCore Blank в возвращенном списке, а затем нажмите кнопку Далее.

  3. Укажите имя проекта (например, NewHLApp), расположение файла проекта и имя решения (которое может совпадать с именем проекта), а затем нажмите кнопку Создать. Visual Studio создает папку NewHLpp в выбранном расположении и создает файлы сборки для пустого приложения. Вы должны увидеть сообщения из CMake.

  4. Откройте файл CMakeLists.txt и укажите папку, содержащую определения используемого оборудования. По умолчанию пустое приложение HL не содержит определений оборудования. Примеры определений оборудования можно найти в репозитории Примеры Azure Sphere или создать, как описано в разделе Определения оборудования.

    Ниже показано, как добавить примеры определений оборудования для 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 используют следующие основные файлы:

  • Исходный код приложения в одном или нескольких файлах. В настоящее время поддерживается только исходный код на языке C.
  • Файлы сборки CMake. требуется CMakeLists.txt. CMake вместе со служебной программой упрощенной сборки ninja используется для управления процессом сборки приложения Azure Sphere.
  • Файл манифеста приложения , описывающий возможности, доступные приложению.

Высокоуровневые приложения обычно имеют по крайней мере три других файла:

  • Файл applibs-versions.h для указания уровней версий различных API Azure Sphere
  • Два файла определения оборудования (редактируемая версия в формате JSON и созданный из него файл C- языка), которые предоставляют удобный способ ссылки на аппаратные компоненты в коде. С помощью согласованного набора файлов определения оборудования можно написать аппаратный независимый исходный код, а затем создать образы приложений для определенного оборудования, просто повторно нацелив соответствующий файл определения оборудования в файле CMakeLists.txt.

Написание кода

  1. Напишите код приложения, используя примеры высокоуровневых приложений Azure Sphere в качестве руководств. В следующих разделах описываются конкретные сценарии реализации.
  2. В файлеCMakeLists.txt:
    • Указание редакции средств пакета SDK для Azure Sphere
    • Указание целевого набора API
    • Указание целевого оборудования
  3. В файле app_manifest.json:
    • Задайте Name имя проекта.
    • Добавьте все возможности приложения, необходимые для кода, такие как аппаратные ресурсы или подключения. Если высокоуровневое приложение взаимодействует с RTApp, добавьте в возможность идентификатор компонента приложения высокого уровня AllowedApplicationConnections .

Если вы хотите развернуть высокоуровневое приложение вместе с партнерским приложением с поддержкой реального времени, добавьте идентификатор компонента партнера в поле partnerComponents раздела конфигураций файла launch.vs.json (Visual Studio) или .vscode/launch.json (Visual Studio Code).

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

См. также