Compartilhar via


Usar o SPI em aplicativos com capacidade em tempo real

O Azure Sphere dá suporte à SPI (Interface Periférica Serial) no modo master. SPI é uma interface serial usada para comunicação entre periféricos e circuitos integrados. Ao contrário do I2C, o SPI pode ser usado com periféricos de maior velocidade mais complexos.

Este tópico descreve como usar o SPI em aplicativos com capacidade em tempo real (RTApp). Para obter informações sobre como usar o SPI em aplicativos de alto nível, consulte Usando SPI em aplicativos de alto nível.

Nota

O sistema operacional do Azure Sphere não redefine periféricos na inicialização. Seus aplicativos devem garantir que os periféricos estejam em um estado conhecido na inicialização ou após a reinicialização.

Selecionar chip

O chip select gerencia a conexão entre uma interface master SPI e um conjunto de dispositivos subordinados; e permite que a interface master envie e receba dados para cada dispositivo subordinado de forma independente. O Azure Sphere dá suporte às configurações active-low e active-high para a seleção de chip, com active-low como a configuração padrão. Somente um aplicativo pode usar cada interface master SPI a qualquer momento. O aplicativo deve abrir a interface spi master e identificar cada dispositivo subordinado conectado antes de executar operações de leitura e gravação na interface.

Suporte a MT3620 para SPI nos núcleos em tempo real

Ao configurar a placa de desenvolvimento MT3620, você pode usar qualquer porta ISU como uma interface spi master. Você pode se conectar até dois dispositivos subordinados a cada ISU. Quando você usa uma porta ISU como uma interface master SPI, não pode usar a mesma porta que uma interface I2C ou UART.

O MT3620 dá suporte a transações SPI de até 40 MHz.

O MT3620 não dá suporte a operações simultâneas de SPI de leitura e gravação bidirecional (full-duplex) em uma única transação de barramento.

As especificações de SPI para o MT3620 estão listadas no Status de Suporte do MT3620. O guia de usuário do painel de desenvolvimento MT3620 descreve o layout do pino e as funções para a fiação.

Para registrar endereços base, interromper números, taxa de relógio, frequência de amostragem e outros detalhes sobre o MT3620, consulte o Mt3620 Datasheet e o Manual de Usuário MT3620 M4; se as perguntas permanecerem, você poderá solicitar detalhes da Avnet por email .Azure.Sphere@avnet.com

Configurações do manifesto do aplicativo

Para usar as APIs SPI, você deve adicionar o SpiMaster recurso ao manifesto do aplicativo e especificar cada controlador de master SPI ao recurso.

"Capabilities": {
   "SpiMaster": [ "ISU0", "ISU1" ] }

O manifesto do aplicativo Azure Sphere tem mais detalhes sobre o manifesto do aplicativo.

Os aplicativos de exemplo SPI

O repositório CodethinkLabs no GitHub contém aplicativos de exemplo que demonstram como usar periféricos compatíveis com MT3620 em aplicativos compatíveis com o Azure Sphere em tempo real. Especificamente, os exemplos de SPI_RTApp_MT3620_BareMetal e SPI_SDCard_RTApp_MT3620_BareMetal demonstram como incorporar um periférico SPI em um aplicativo capaz em tempo real.