Usar UARTs em aplicativos com capacidade para tempo real
Importante
Esta é a documentação do Azure Sphere (herdado). O Azure Sphere (herdado) será desativado em 27 de setembro de 2027 e os usuários devem migrar para o Azure Sphere (integrado) até esse momento. Use o seletor de versão localizado acima do sumário para exibir a documentação do Azure Sphere (Integrado).
Os UARTs ISU no dispositivo Azure Sphere estão disponíveis para uso por RTApps. Para usar um UART ISU, um RTApp precisa listá-los na seção Funcionalidades do manifesto do aplicativo. Identifique o UART usando o "AppManifestValue" definido para ele no arquivo JSON do chip de destino. Por exemplo, a seguinte linha reserva o UART em ISU0 em um chip do MT3620:
"Capabilities": {
"Uart": [ "ISU0" ]
}
O código do aplicativo precisa de uma maneira de identificar o UART, seu endereço base do registro e seu número de interrupção e deve incluir um manipulador de interrupção para o UART. Você pode encontrar o endereço básico e o número de interrupção para o UART na documentação do fabricante do hardware.
Observação
O sistema operacional do Azure Sphere não redefine os periféricos na inicialização. Seus aplicativos devem garantir que os periféricos estejam em um bom estado conhecido na inicialização ou após a reinicialização.
Suporte a MT3620 para UARTs sobre os núcleos em tempo real
Esta seção descreve as opções de UART que se aplicam para os núcleos em tempo real no hardware MT3620. Para obter informações gerais sobre o suporte de MT3620 para UARTs, consulte o suporte para MT3620.
Cada núcleo em tempo real tem um UART dedicado, que é separado dos UARTs ISU e destina-se ao registro em log. Como cada tal UART é dedicado para uso somente pelo aplicativo em seu núcleo, o RTApp não é necessário para listá-lo no manifesto do aplicativo. RTApps são atribuídos ao primeiro núcleo em tempo real disponível; no momento, não é possível escolher qual núcleo em tempo real — e, portanto, o UART dedicado — um aplicativo usa. No entanto, a saída do comando azsphere device app start relata qual núcleo foi atribuído ao aplicativo.
Para endereços base de registro, números de interrupção, taxa de relógio, frequência de amostragem e outros detalhes sobre o MT3620, consulte a Folha de Dados do MT3620 e o Manual do Usuário do MT3620 M4; se ainda houver dúvidas, você pode solicitar detalhes da Avnet enviando um Azure.Sphere@avnet.come-mail .
O aplicativo de exemplo UART
O exemplo UART_RTApp_MT3620_BareMetal demonstra como se comunicar pelo UART em um RTApp.