Skapa ett högnivåprogram
Viktigt!
Det här är dokumentationen om Azure Sphere (Legacy). Azure Sphere (Legacy) upphör den 27 september 2027 och användarna måste migrera till Azure Sphere (integrerad) vid den här tiden. Använd versionsväljaren ovanför TOC för att visa dokumentationen om Azure Sphere (integrerad).
Det enklaste sättet att skapa ett nytt högnivåprogram är att börja med den tomma mallen från Visual Studio Code Azure Sphere-tillägget och justera konfigurationen till projektet genom att följa dessa steg:
Starta Visual Studio Code. Välj Visa>kommandopalett och skriv sedan Azure Sphere: Generera nytt projekt.
Välj HL Blank på menyn Mallar.
Visual Studio Code visar sedan ett Utforskaren fönster. Navigera till mappen där du vill placera det tomma programmet och ange ett namn för projektet, till exempel NewHLApp. Visual Studio Code skapar mappen NewHLApp på den valda platsen och genererar byggfilerna för det tomma programmet. Meddelanden från CMake bör visas.
Öppna filen CMakeLists.txt och ange den mapp som innehåller definitioner för maskinvaran som du använder. Som standard innehåller HL Blank-programmet inga maskinvarudefinitioner. Du hittar exempel på maskinvarudefinitioner i Azure Sphere Samples-lagringsplatsen eller skapa en som beskrivs i Maskinvarudefinitioner.
Följande visar hur du lägger till exempel på maskinvarudefinitioner för Seeed Azure Sphere MT3620 Development Kit:
azsphere_target_hardware_definition(${PROJECT_NAME} TARGET_DIRECTORY "HardwareDefinitions/mt3620_rdb" TARGET_DEFINITION "sample_appliance.json")
Den här raden ska infogas innan det sista kommandot börjar
azsphere_target_add_image_package
.
Du kan också skapa ett nytt högnivåprogram från något av Azure Sphere-exemplen på hög nivå:
Klona lagringsplatsen för exempel om du inte redan har gjort det. Kopiera en av programmapparna på hög nivå och byt namn på den för projektet.
I filen CMakeLists.txt ändrar du projektnamnet till namnet på den nya mappen. Till exempel:
PROJECT(NewHLApp C)
Det enklaste sättet att skapa ett nytt högnivåprogram är att börja med mallen Tom från Visual Studio Azure Sphere-tillägget och justera konfigurationen till projektet genom att följa dessa steg:
Starta Visual Studio och välj Skapa ett nytt projekt.
Skriv
Azure Sphere
i sökrutan med etiketten Sök efter mallar. Välj Azure Sphere HLCore Blank i den returnerade listan och välj sedan Nästa.Ange ett projektnamn (till exempel NewHLApp), en projektfilplats och ett lösningsnamn (som kan vara samma som projektnamnet) och välj sedan Skapa. Visual Studio skapar mappen NewHLpp på den valda platsen och genererar byggfilerna för det tomma programmet. Meddelanden från CMake bör visas.
Öppna filen CMakeLists.txt och ange den mapp som innehåller definitioner för maskinvaran som du använder. Som standard innehåller HL Blank-programmet inga maskinvarudefinitioner. Du hittar exempel på maskinvarudefinitioner i Azure Sphere Samples-lagringsplatsen eller skapa en som beskrivs i Maskinvarudefinitioner.
Följande visar hur du lägger till exempel på maskinvarudefinitioner för Seeed Azure Sphere MT3620 Development Kit:
azsphere_target_hardware_definition(${PROJECT_NAME} TARGET_DIRECTORY "HardwareDefinitions/mt3620_rdb" TARGET_DEFINITION "sample_appliance.json")
Den här raden ska infogas innan det sista kommandot börjar
azsphere_target_add_image_package
.
Du kan också skapa ett nytt högnivåprogram från något av Azure Sphere-exemplen på hög nivå:
Klona lagringsplatsen för exempel om du inte redan har gjort det. Kopiera en av programmapparna på hög nivå och byt namn på den för projektet.
I filen CMakeLists.txt ändrar du projektnamnet till namnet på den nya mappen. Till exempel:
PROJECT(NewHLApp C)
Det enklaste sättet att skapa ett nytt högnivåprogram är att börja med något av azure sphere-exemplen på hög nivå:
Klona lagringsplatsen för exempel om du inte redan har gjort det. Kopiera en av programmapparna på hög nivå och byt namn på den för projektet.
I filen CMakeLists.txt ändrar du projektnamnet till namnet på den nya mappen. Till exempel:
PROJECT(NewHLApp C)
Grundläggande filstruktur för ett program på hög nivå
Oavsett hur du skapar ditt program delar alla Azure Sphere-program följande kärnfiler:
- Programmets källkod i en eller flera filer. För närvarande stöds endast C-språkkällans källkod.
- CMake-byggfiler. CMakeLists.txt krävs. CMake används tillsammans med verktyget ninja lightweight build för att styra Azure Sphere-programbyggprocessen.
- En appmanifestfil som beskriver de funktioner som är tillgängliga för programmet.
Program på hög nivå har vanligtvis minst tre andra filer:
- En applibs-versions.h-fil för att ange versionsnivåer för olika Azure Sphere-API:er
- Två maskinvarudefinitionsfiler (en redigerbar version i JSON-format och ett C-språk inkluderar fil som genereras från den) som ger ett bekvämt sätt att referera till maskinvarukomponenter i koden. Med en konsekvent uppsättning maskinvarudefinitionsfiler kan du skriva maskinvaruoberoende källkod och sedan skapa programavbildningar för specifik maskinvara genom att helt enkelt rikta om lämplig maskinvarudefinitionsfil i din CMakeLists.txt-fil.
Skriv din kod
- Skriv programkoden med azure sphere-exempel på hög nivå som guider. Följande avsnitt beskriver specifika implementeringsscenarier:
- Använda kringutrustning i ett program på hög nivå
- Ansluta till webbtjänster
- Använda wolfSSL för TLS-anslutningar
- Hantera certifikat
- Förstå minnesanvändning
- Skjuta upp enhetsuppdateringar
- Hantera tid och använda realtidsklockan
- Använda enhetslagring
- Kommunicera med ett realtidskompatibelt program
- Hantera power down-tillstånd
- Ange energiprofiler
- Utföra tjänstidentifiering
- I filen CMakeLists.txt:
- Ange revision av Azure Sphere SDK-verktyg
- Ange mål-API-uppsättning
- Ange målmaskinvaran
- I filen app_manifest.json:
- Ange
Name
som projektnamn. - Lägg till programspecifika funktioner som din kod kräver, till exempel maskinvaruresurser eller anslutningar. Om högnivåappen kommunicerar med en RTApp lägger du till komponent-ID:t för högnivåprogrammet i
AllowedApplicationConnections
funktionen.
- Ange
Om du vill distribuera din högnivåapp tillsammans med en realtidskompatibel partnerapp lägger du till komponent-ID:t för partnern i fältet partnerComponents i avsnittet konfigurationer i filen launch.vs.json (Visual Studio) eller .vscode/launch.json (Visual Studio Code):
"partnerComponents": [ "25025d2c-66da-4448-bae1-ac26fcdd3627" ]