Partilhar via


Utilizar periféricos numa aplicação de alto nível

As aplicações de alto nível podem mapear periféricos para utilização exclusiva. Para utilizar um ou mais periféricos numa aplicação de alto nível:

  • Adicione o periférico ao manifesto da aplicação.
  • Adicione um processador de interrupção (se necessário) e outro código de suporte à aplicação.
  • Adicione código para garantir que cada periférico estará num bom estado conhecido no arranque.

Todos os recursos que uma aplicação de alto nível utiliza têm de ser especificados no manifesto da aplicação. Numa aplicação de alto nível, pode utilizar o nome do recurso atribuído a AppManifestValue no ficheiro JSON de definição de hardware para o chip de destino ou o nome de alto nível atribuído ao recurso no ficheiro de cabeçalho da definição de hardware. Por exemplo, para encontrar o valor para identificar o I2C no ISU0 no hardware MT3620, procure no ficheiro mt3620.json na pasta HardwareDefinitions que está instalada na pasta SDK do Microsoft Azure Sphere. Este periférico é definido da seguinte forma no ficheiro JSON:

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

Tenha em atenção que o valor atribuído a AppManifestValue para o periférico I2C é "ISU0", enquanto o nome de alto nível é "MT3620_ISU0_I2C".

As aplicações carregadas em simultâneo não podem partilhar recursos; A utilização de recursos é exclusiva de uma única aplicação. O SO do Azure Sphere executa várias tarefas importantes quando carrega a aplicação:

  • Configura o multiplexing, para que os pinos associados ao periférico sejam configurados para a funcionalidade pedida.
  • Configura o mapeamento de núcleos, que envolve configurar firewalls para que a aplicação tenha acesso aos registos associados aos periféricos pedidos.
  • Verifica o manifesto e falha ao carregar a aplicação se esta reclamar recursos que já foram reclamados por outra aplicação.

O resto desta secção fornece detalhes sobre a utilização de periféricos específicos.

Nota

O SO do Azure Sphere não repõe os periféricos no arranque. As suas aplicações devem garantir que os periféricos estão num bom estado conhecido no arranque ou após o reinício.

É acionado um reinício do dispositivo quando uma nova aplicação que utiliza periféricos é instalada e as seguintes condições são cumpridas:

Se for iniciado um reinício do dispositivo, aguarde até que o reinício esteja concluído e o dispositivo fique reativo.

Tópico Descrição
Utilizar ADCs em aplicações de alto nível Descreve como utilizar conversores analógicos para digitais (ADCs) com o Azure Sphere.
Utilizar GPIO em aplicações de alto nível Descreve como utilizar a entrada/saída para fins gerais (GPIO) com o Azure Sphere.
Utilizar o I2C em aplicações de alto nível Descreve como utilizar o Circuito Inter-Integrated (I2C) para comunicação em série.
Utilizar o PWM em aplicações de alto nível Descreve como utilizar a modulação da largura do pulso (PWM) com o Azure Sphere.
Utilizar o SPI em aplicações de alto nível Descreve como utilizar a Interface periférica de série (SPI) para comunicação em série.
Utilizar UARTs em aplicações de alto nível Descreve como utilizar UARTs para comunicação em série.
Utilizar temporizadores de watchdog em aplicações de alto nível Descreve como utilizar um temporizador de cão de guarda.