Использование UART в приложениях с поддержкой реального времени

UART ISU на устройстве Azure Sphere доступны для использования RTApps. Чтобы использовать UART ISU, приложение RTApp должно перечислить его в разделе Возможности манифеста приложения. Определите UART с помощью параметра AppManifestValue, определенного для него в JSON-файле для целевой микросхемы. Например, следующая строка резервирует UART в ISU0 на микросхеме MT3620:

"Capabilities": {
   "Uart": [ "ISU0" ]
  }

Коду приложения требуется способ идентифицировать UART, его базовый адрес регистра и номер прерывания, и он должен включать обработчик прерываний для UART. Базовый адрес и номер прерывания для UART можно найти в документации по оборудованию производителя.

Примечание

Ос Azure Sphere не сбрасывает периферийные устройства при запуске. Приложения должны убедиться, что периферийные устройства находятся в известном состоянии при запуске или после перезапуска.

Поддержка MT3620 для UART на ядрах в режиме реального времени

В этом разделе описываются параметры UART, применяемые для ядер в режиме реального времени на оборудовании MT3620. Общие сведения о поддержке UART в MT3620 см. в разделе Поддержка MT3620.

Каждое ядро в режиме реального времени имеет выделенный UART, который отделен от UART ISU и предназначен для ведения журнала. Так как каждый такой UART предназначен для использования только приложением в его ядре, RTApp не требуется перечислять его в манифесте приложения. ПРИЛОЖЕНИЯ RTApp назначаются первому доступному ядру в режиме реального времени; В настоящее время невозможно выбрать, какое ядро в режиме реального времени и, следовательно, какое выделенное UART использует приложение. Однако выходные данные команды az sphere device app start сообщают, какое ядро было назначено приложению.

Сведения о регистрации базовых адресов, номера прерываний, частоту тактов, частоту выборки и другие сведения о MT3620 см. в таблице MT3620 и руководстве пользователя MT3620 M4. Если остались вопросы, вы можете запросить сведения из Avnet, отправив Azure.Sphere@avnet.comпо электронной почте .

Пример приложения UART

В примере UART_RTApp_MT3620_BareMetal показано, как взаимодействовать через UART в RTApp.