Usare le periferiche in un'applicazione di alto livello
Le applicazioni di alto livello possono mappare le periferiche per il loro uso esclusivo. Per usare una o più periferiche in un'applicazione di alto livello:
- Aggiungere la periferica al manifesto dell'applicazione.
- Aggiungere un gestore di interrupt (se necessario) e altro codice di supporto all'applicazione.
- Aggiungi codice per assicurarti che ogni periferica sia in uno stato di buono stato noto all'avvio.
Tutte le risorse utilizzate da un'app di alto livello devono essere specificate nel manifesto dell'applicazione. In un'app di alto livello, è possibile usare il nome della risorsa assegnata a AppManifestValue nel file JSON a definizione hardware per il chip di destinazione o il nome di alto livello assegnato alla risorsa nel file di intestazione della definizione hardware. Ad esempio, per trovare il valore per identificare I2C su ISU0 nell'hardware MT3620, cerca il file mt3620.json nella cartella HardwareDefinitions installata nella cartella Microsoft Azure Sphere SDK. Questa periferica è definita come segue nel file JSON:
{"Name": "MT3620_ISU0_I2C", "Type": "I2cMaster", "MainCoreHeaderValue": "(0)", "AppManifestValue": "ISU0", "Comment": "MT3620 ISU 0 configured as I2C"},
Tieni presente che il valore assegnato a AppManifestValue per la periferica I2C è "ISU0", mentre il nome di livello elevato è "MT3620_ISU0_I2C".
Le applicazioni caricate simultaneamente non possono condividere risorse; uso delle risorse è esclusivo di una singola applicazione. Il sistema operativo Azure Sphere esegue diverse attività importanti quando carica l'applicazione:
- Configura il multiplexing, in modo che i pin associati alla periferica siano configurati per la funzionalità richiesta.
- Configura il mapping di base, che implica la configurazione di firewall in modo che l'applicazione abbia accesso ai registri associati alle periferiche richieste.
- Controlla il manifesto e non riesce a caricare l'applicazione se attesta risorse che sono già state rivendicate da un'altra app.
Nella parte restante di questa sezione vengono fornite informazioni dettagliate sull'uso di periferiche specifiche.
Nota
Il sistema operativo Azure Sphere non reimposta le periferiche all'avvio. Le applicazioni devono verificare che le periferiche siano in uno stato noto all'avvio o dopo il riavvio.
Un riavvio del dispositivo viene attivato quando viene installata una nuova applicazione che utilizza periferiche e vengono soddisfatte le condizioni seguenti:
- Lo stato di produzione del dispositivo è impostato su DeviceComplete.
- La funzionalità appSviluppo non è presente nel dispositivo. Per ulteriori informazioni, vedi Blocco della configurazione delle periferiche.
Se viene avviato un riavvio del dispositivo, attendi il completamento del riavvio e il dispositivo risponde.
Argomento | Descrizione |
---|---|
Usare adc in applicazioni di alto livello | Descrive come usare convertitori da analogico a digitale (ADC) con Azure Sphere. |
Usare GPIO in applicazioni di alto livello | Descrive come usare l'input/output generico (GPIO) con Azure Sphere. |
Usare I2C nelle applicazioni di alto livello | Descrive come usare Inter-Integrated Circuit (I2C) per la comunicazione seriale. |
Usare PWM in applicazioni di alto livello | Descrive come usare la frequenza di compressione della larghezza degli impulsi (PWM) con Azure Sphere. |
Usare spi in applicazioni di alto livello | Descrive come usare SPI (Serial Peripheral Interface) per la comunicazione seriale. |
Utilizzare UARTs in applicazioni di alto livello | Descrive come usare gli UART per la comunicazione seriale. |
Usare i timer del cane da guardia nelle applicazioni di alto livello | Descrive come usare un timer da guardia. |