Delen via


Randapparatuur gebruiken in een realtime geschikte toepassing

Belangrijk

Dit is de Documentatie voor Azure Sphere (verouderd). Azure Sphere (verouderd) wordt op 27 september 2027 buiten gebruik gesteld en gebruikers moeten tegen deze tijd migreren naar Azure Sphere (geïntegreerd). Gebruik de versiekiezer boven de inhoudsweergave om de Documentatie van Azure Sphere (geïntegreerd) weer te geven.

In realtime geschikte toepassingen (RTApps) kunnen randapparatuur toewijzen voor hun exclusieve gebruik. Een of meer randapparatuur gebruiken in een RTApp:

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

Belangrijk

Zie de documentatie van uw hardwarefabrikant voor informatie over het programmeren van randapparatuur voor een RTApp. Zie het MT3620-gegevensblad en de MT3620-gebruikershandleiding en de MT3620-gebruikershandleiding voor het registreren van basisadressen, onderbrekingsnummers, kloksnelheid, samplingfrequentie en andere details over de MT3620 MT3620.Azure.Sphere@avnet.com

Alle resources die een RTApp gebruikt, moeten worden opgegeven in het toepassingsmanifest. In een RTApp moet u de naam gebruiken voor de resource die is toegewezen aan AppManifestValue in het JSON-bestand met de hardwaredefinitie voor de doelchip. U kunt de naam op hoog niveau die is toegewezen aan de resource niet gebruiken in het headerbestand van de hardwaredefinitie. Als u bijvoorbeeld de waarde wilt vinden om I2C op ISU0 op MT3620-hardware te identificeren, kijkt u in het mt3620.json bestand 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.

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, zijn geconfigureerd voor de aangevraagde functionaliteit.
  • Hiermee stelt u de kerntoewijzing in, waarbij firewalls worden geconfigureerd, zodat de toepassing toegang heeft tot de registers die zijn gekoppeld aan de aangevraagde randapparatuur.
  • Controleert het manifest en laadt de toepassing niet als er resources worden geclaimd die al door een andere app zijn geclaimd.

De rest van deze sectie bevat informatie over het gebruik van specifieke randapparatuur.

Notitie

Het Azure Sphere-besturingssysteem stelt geen randapparatuur opnieuw in bij het opstarten. Uw toepassingen moeten ervoor zorgen dat randapparatuur zich in een bekende goede staat bevindt bij het opstarten of na het opnieuw opstarten.

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

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

Onderwerp Beschrijving
ADC's gebruiken in realtime geschikte toepassingen Beschrijft hoe u analoge naar digitale conversieprogramma's (ADC's) gebruikt met Azure Sphere.
GPIO gebruiken in realtime geschikte toepassingen Hierin wordt beschreven hoe u GPIO (General Purpose Input/Output) gebruikt met Azure Sphere.
GPT gebruiken in realtime geschikte toepassingen Hierin wordt beschreven hoe u timers voor algemeen gebruik (GPT) gebruikt met Azure Sphere.
I2C gebruiken in realtime geschikte toepassingen Beschrijft hoe u Inter-Integrated Circuit (I2C) gebruikt voor seriële communicatie.
I2S gebruiken in realtime geschikte toepassingen Beschrijft hoe u Integrated Interchip Sound (I2S) gebruikt met Azure Sphere
PWM gebruiken in realtime geschikte toepassingen Beschrijft hoe u pulse width modulation (PWM) gebruikt met Azure Sphere.
SPI gebruiken in realtime geschikte toepassingen Beschrijft hoe u Serial Peripheral Interface (SPI) gebruikt voor seriële communicatie.
UART's gebruiken in realtime geschikte toepassingen Beschrijft hoe u UARTs gebruikt voor seriële communicatie.
Externe interrupts gebruiken in realtime geschikte toepassingen Beschrijft hoe u externe interrupts in een RTApp gebruikt om te reageren op externe signalen.
Watchdog-timers gebruiken in realtime geschikte toepassingen Beschrijft de effecten van het gebruik van watchdog-timers op de REALTIME MT3620-kernen.