Partager via


Utiliser des périphériques dans une application de haut niveau

Les applications de haut niveau peuvent mapper des périphériques pour leur utilisation exclusive. Pour utiliser un ou plusieurs périphériques dans une application de haut niveau :

  • Ajoutez le périphérique au manifeste de l’application.
  • Ajoutez un gestionnaire d’interruption (si nécessaire) et un autre code de prise en charge à l’application.
  • Ajoutez du code pour vous assurer que chaque périphérique sera dans un état correct connu au démarrage.

Toutes les ressources utilisées par une application générale doivent être spécifiées dans le manifeste de l’application. Dans une application de haut niveau, vous pouvez utiliser le nom de la ressource affectée à AppManifestValue dans le fichier JSON de définition matérielle de la puce cible ou le nom de haut niveau affecté à la ressource dans le fichier d’en-tête de définition matérielle. Par exemple, pour trouver la valeur permettant d’identifier I2C sur ISU0 sur le matériel MT3620, recherchez le fichier mt3620.json dans le dossier HardwareDefinitions installé dans le dossier du Kit de développement logiciel (SDK) Microsoft Azure Sphere. Ce périphérique est défini comme suit dans le fichier JSON :

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

Notez que la valeur affectée à AppManifestValue pour le périphérique I2C est « ISU0 », tandis que le nom de haut niveau est « MT3620_ISU0_I2C ».

Les applications chargées simultanément ne peuvent pas partager des ressources ; l’utilisation des ressources est exclusive à une seule application. Le système d’exploitation Azure Sphere effectue plusieurs tâches importantes lorsqu’il charge l’application :

  • Configure le multiplexage afin que les broches associées au périphérique soient configurées pour la fonctionnalité demandée.
  • Configure le mappage des cœurs, qui implique la configuration des pare-feu afin que l’application ait accès aux registres associés aux périphériques demandés.
  • Vérifie le manifeste et ne parvient pas à charger l’application si elle revendique des ressources qui ont déjà été revendiquées par une autre application.

Le reste de cette section fournit des détails sur l’utilisation de périphériques spécifiques.

Note

Le système d’exploitation Azure Sphere ne réinitialise pas les périphériques au démarrage. Vos applications doivent s’assurer que les périphériques sont dans un état correct connu au démarrage ou après le redémarrage.

Un redémarrage de l’appareil est déclenché lorsqu’une nouvelle application qui utilise des périphériques est installée et que les conditions suivantes sont remplies :

Si un redémarrage de l’appareil est lancé, attendez que le redémarrage soit terminé et que l’appareil devienne réactif.

Sujet Description
Utiliser les ADC dans les applications de haut niveau Décrit comment utiliser des convertisseurs analogique-numérique (ADC) avec Azure Sphere.
Utiliser GPIO dans les applications de haut niveau Décrit comment utiliser l’entrée/sortie à usage général (GPIO) avec Azure Sphere.
Utiliser I2C dans les applications de haut niveau Décrit comment utiliser Inter-Integrated Circuit (I2C) pour la communication série.
Utiliser PWM dans les applications de haut niveau Décrit comment utiliser la modulation de largeur d’impulsion (PWM) avec Azure Sphere.
Utiliser SPI dans les applications de haut niveau Décrit comment utiliser spi (Serial Peripheral Interface) pour la communication série.
Utiliser des UART dans des applications de haut niveau Décrit comment utiliser des UART pour la communication en série.
Utiliser des minuteurs de surveillance dans les applications de haut niveau Décrit comment utiliser un minuteur de surveillance.