Dela via


Använda kringutrustning i ett program på hög nivå

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).

Högnivåprogram kan mappa kringutrustning för exklusiv användning. Så här använder du en eller flera kringutrustningar i ett program på hög nivå:

  • Lägg till kringutrustningen i programmanifestet.
  • Lägg till en avbrottshanterare (om det behövs) och annan stödjande kod i programmet.
  • Lägg till kod för att säkerställa att varje kringutrustning är i ett känt bra tillstånd vid start.

Alla resurser som en högnivåapp använder måste anges i programmanifestet. I en högnivåapp kan du använda antingen namnet på resursen som har tilldelats AppManifestValue i JSON-filen för maskinvarudefinitionen för målchipet eller det högnivånamn som tilldelats resursen i maskinvarudefinitionshuvudfilen. Om du till exempel vill hitta värdet för att identifiera I2C på ISU0 på MT3620-maskinvara tittar du i filen mt3620.json i mappen HardwareDefinitions som är installerad i microsoft Azure Sphere SDK-mappen. Den här kringutrustningen definieras enligt följande i JSON-filen:

 {"Name": "MT3620_ISU0_I2C", "Type": "I2cMaster", "MainCoreHeaderValue": "(0)", "AppManifestValue": "ISU0", "Comment": "MT3620 ISU 0 configured as I2C"},

Observera att värdet som tilldelats AppManifestValue för I2C-kringutrustningen är "ISU0", medan det övergripande namnet är "MT3620_ISU0_I2C".

Samtidigt inlästa program kan inte dela resurser. resursanvändning är exklusivt för ett enda program. Azure Sphere OS utför flera viktiga uppgifter när programmet läses in:

  • Konfigurerar multiplexering så att de stift som är associerade med kringutrustningen konfigureras för de begärda funktionerna.
  • Konfigurerar kärnmappning, vilket innebär att konfigurera brandväggar så att programmet har åtkomst till de register som är associerade med den begärda kringutrustningen.
  • Kontrollerar manifestet och kan inte läsa in programmet om det gör anspråk på resurser som redan har begärts av en annan app.

Resten av det här avsnittet innehåller information om hur du använder specifik kringutrustning.

Kommentar

Azure Sphere OS återställer inte kringutrustning vid start. Dina program bör se till att kringutrustningen är i ett känt bra tillstånd vid start eller efter omstart.

En omstart av enheten utlöses när ett nytt program som använder kringutrustning installeras och följande villkor uppfylls:

Om en omstart av enheten initieras väntar du tills omstarten är klar och enheten blir responsiv.

Område beskrivning
Använda ADC:er i högnivåprogram Beskriver hur du använder analoga till digitala konverterare (ADCs) med Azure Sphere.
Använda GPIO i högnivåprogram Beskriver hur du använder allmän användning av indata/utdata (GPIO) med Azure Sphere.
Använda I2C i högnivåprogram Beskriver hur du använder interintegrerad krets (I2C) för seriekommunikation.
Använda PWM i högnivåprogram Beskriver hur du använder pulsbreddsmodulering (PWM) med Azure Sphere.
Använda SPI i högnivåprogram Beskriver hur du använder SPI (Serial Peripheral Interface) för seriell kommunikation.
Använda UART i högnivåprogram Beskriver hur du använder UART för seriell kommunikation.
Använda vakthundstimers i högnivåprogram Beskriver hur du använder en vakthundstimer.