Использование SPI в приложениях с поддержкой реального времени
Azure Sphere поддерживает последовательный периферийный интерфейс (SPI) в режиме master. SPI — это последовательный интерфейс, используемый для обмена данными между периферийными устройствами и интегральными каналами. В отличие от I2C, SPI можно использовать с более сложными периферийными устройствами с более высокой скоростью.
В этом разделе описывается использование SPI в приложениях с поддержкой реального времени (RTApp). Сведения об использовании SPI в высокоуровневых приложениях см. в статье Использование SPI в высокоуровневых приложениях.
Примечание
Ос Azure Sphere не сбрасывает периферийные устройства при запуске. Приложения должны убедиться, что периферийные устройства находятся в известном состоянии при запуске или после перезапуска.
Выбор микросхемы
Выбор микросхемы управляет подключением между интерфейсом SPI master и набором подчиненных устройств и позволяет интерфейсу master отправлять и получать данные на каждое подчиненное устройство независимо. Azure Sphere поддерживает параметры "активный-низкий" и "активный-высокий" для выбора микросхемы с параметром "активный-низкий" в качестве параметра по умолчанию. Только одно приложение может использовать каждый интерфейс SPI master в любое время. Перед выполнением операций чтения и записи в интерфейсе приложение должно открыть интерфейс SPI master и определить каждое подключенное подчиненное устройство.
Поддержка MT3620 spi в ядрах реального времени
При настройке платы разработки MT3620 в качестве интерфейса SPI master можно использовать любой порт ISU. К каждому isU можно подключить до двух подчиненных устройств. При использовании порта ISU в качестве интерфейса SPI master нельзя использовать тот же порт, что и интерфейс I2C или UART.
MT3620 поддерживает транзакции SPI с частотой до 40 МГц.
MT3620 не поддерживает одновременные двунаправленные операции чтения и записи (полнодуплексные) ОПЕРАЦИИ SPI в рамках одной транзакции шины.
Спецификации SPI для MT3620 перечислены в разделе Состояние поддержки MT3620. В руководстве пользователя на плате разработки MT3620 описаны макет и функции контактов для подключения.
Сведения о регистрации базовых адресов, номера прерываний, частоту тактов, частоту выборки и другие сведения о MT3620 см. в таблице MT3620 и руководстве пользователя MT3620 M4. Если остались вопросы, вы можете запросить сведения из Avnet, отправив Azure.Sphere@avnet.comпо электронной почте .
Параметры манифеста приложения
Чтобы использовать API SPI, необходимо добавить возможность в SpiMaster
манифест приложения, а затем указать каждый контроллер SPI master в эту возможность.
"Capabilities": {
"SpiMaster": [ "ISU0", "ISU1" ] }
Манифест приложения Azure Sphere содержит дополнительные сведения о манифесте приложения.
Примеры приложений SPI
Репозиторий CodethinkLabs на сайте GitHub содержит примеры приложений, демонстрирующих использование периферийных устройств, поддерживаемых MT3620, в приложениях с поддержкой реального времени Azure Sphere. В частности, примеры SPI_RTApp_MT3620_BareMetal и SPI_SDCard_RTApp_MT3620_BareMetal демонстрируют, как интегрировать периферийное устройство SPI в приложение с поддержкой реального времени.