Share via


Randapparatuur gebruiken in een toepassing op hoog niveau

Toepassingen op hoog niveau kunnen randapparatuur toewijzen voor exclusief gebruik. Een of meer randapparatuur gebruiken in een toepassing op hoog niveau:

  • Voeg het randapparaat toe aan het toepassingsmanifest.
  • Voeg een interrupt-handler (indien nodig) en andere ondersteunende code toe aan de toepassing.
  • Voeg code toe om ervoor te zorgen dat elk randapparaat bij het opstarten een bekende goede status heeft.

Alle resources die een app op hoog niveau gebruikt, moeten worden opgegeven in het toepassingsmanifest. In een app op hoog niveau kunt u de naam gebruiken voor de resource die is toegewezen aan AppManifestValue in het JSON-bestand voor de hardwaredefinitie voor de doelchip of de naam op hoog niveau die is toegewezen aan de resource in het headerbestand van de hardwaredefinitie. Als u bijvoorbeeld de waarde wilt vinden voor het identificeren van I2C op ISU0 op MT3620-hardware, zoekt u in het bestand mt3620.json in de map HardwareDefinitions die is geïnstalleerd in de map Microsoft Azure Sphere SDK. Dit randapparaat wordt als volgt gedefinieerd in het JSON-bestand:

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

Houd er rekening mee dat de waarde die is toegewezen aan AppManifestValue voor het I2C-randapparaat ISU0 is, terwijl de naam op hoog niveau 'MT3620_ISU0_I2C' is.

Gelijktijdig geladen toepassingen kunnen geen resources delen; resourcegebruik is exclusief voor één toepassing. Het Azure Sphere-besturingssysteem voert verschillende belangrijke taken uit wanneer de toepassing wordt geladen:

  • Hiermee configureert u multiplexing, zodat de pinnen die aan het randapparaat zijn gekoppeld, worden geconfigureerd voor de aangevraagde functionaliteit.
  • Hiermee stelt u kerntoewijzing in, waarbij firewalls moeten worden geconfigureerd, zodat de toepassing toegang heeft tot de registers die zijn gekoppeld aan de aangevraagde randapparatuur.
  • Controleert het manifest en kan de toepassing niet laden als er resources worden geclaimd die al door een andere app zijn geclaimd.

In de rest van deze sectie vindt u meer informatie over het gebruik van specifieke randapparatuur.

Opmerking

Het Azure Sphere-besturingssysteem stelt randapparatuur niet opnieuw in bij het opstarten. Uw toepassingen moeten ervoor zorgen dat randapparatuur bij het opstarten of na het opnieuw opstarten een bekende goede status heeft.

Het opnieuw opstarten van het apparaat wordt geactiveerd wanneer een nieuwe toepassing die randapparatuur gebruikt, wordt geïnstalleerd en aan de volgende voorwaarden wordt voldaan:

Als een apparaat opnieuw wordt opgestart, wacht u totdat het opnieuw opstarten is voltooid en het apparaat reageert.

Onderwerp Beschrijving
APC's gebruiken in toepassingen op hoog niveau Hierin wordt beschreven hoe u analoog-naar-digitaal-conversieprogramma's (APC's) gebruikt met Azure Sphere.
GPIO gebruiken in toepassingen op hoog niveau Hierin wordt beschreven hoe u gpio (input/output) voor algemeen gebruik gebruikt met Azure Sphere.
I2C gebruiken in toepassingen op hoog niveau Hierin wordt beschreven hoe u Inter-Integrated Circuit (I2C) gebruikt voor seriële communicatie.
PWM gebruiken in toepassingen op hoog niveau Hierin wordt beschreven hoe u pulse width modulation (PWM) gebruikt met Azure Sphere.
SPI gebruiken in toepassingen op hoog niveau Hierin wordt beschreven hoe u Serial Peripheral Interface (SPI) gebruikt voor seriële communicatie.
UART's gebruiken in toepassingen op hoog niveau Hierin wordt beschreven hoe u UART's gebruikt voor seriële communicatie.
Watchdog-timers gebruiken in toepassingen op hoog niveau Hierin wordt beschreven hoe u een watchdogtimer gebruikt.