Использование 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.