Freigeben über


Verwenden von UARTs in Echtzeitanwendungen

Die ISU-UARTs auf dem Azure Sphere-Gerät sind für die Verwendung durch RTApps verfügbar. Um einen ISU-UART zu verwenden, muss eine RTApp ihn im Abschnitt Funktionen des Anwendungsmanifests auflisten. Identifizieren Sie den UART mithilfe des "AppManifestValue", der für ihn in der JSON-Datei für den Zielchip definiert ist. Beispielsweise reserviert die folgende Zeile den UART auf ISU0 auf einem MT3620-Chip:

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

Ihr Anwendungscode benötigt eine Möglichkeit, den UART, seine Registerbasisadresse und seine Interruptnummer zu identifizieren, und muss einen Interrupthandler für den UART enthalten. Die Basisadresse und die Interruptnummer für den UART finden Sie in der Hardwaredokumentation des Herstellers.

Hinweis

Das Azure Sphere-Betriebssystem setzt Peripheriegeräte beim Start nicht zurück. Ihre Anwendungen sollten sicherstellen, dass sich Peripheriegeräte beim Start oder nach dem Neustart in einem bekannten fehlerfreien Zustand befinden.

MT3620-Unterstützung für UARTs auf den Echtzeitkernen

In diesem Abschnitt werden die UART-Optionen beschrieben, die für Echtzeitkerne auf MT3620-Hardware gelten. Allgemeine Informationen zur MT3620-Unterstützung für UARTs finden Sie unter MT3620-Unterstützung.

Jeder Echtzeitkern verfügt über einen dedizierten UART, der von den ISU-UARTs getrennt ist und für die Protokollierung vorgesehen ist. Da jede solche UART nur für die Verwendung durch die Anwendung im Kern dediziert ist, ist die RTApp nicht erforderlich, um sie im Anwendungsmanifest aufzulisten. RTApps werden dem ersten verfügbaren Echtzeitkern zugewiesen. Es ist derzeit nicht möglich, den Echtzeitkern und damit den dedizierten UART zu wählen, der von einer Anwendung verwendet wird. Die Ausgabe des Befehls az sphere device app start meldet jedoch, welcher Kern der Anwendung zugewiesen wurde.

Informationen zur Registrierung von Basisadressen, Interruptnummern, Taktfrequenz, Samplinghäufigkeit und anderen Details zum MT3620 finden Sie im MT3620-Datenblatt und im MT3620 M4-Benutzerhandbuch. Wenn Fragen bestehen, können Sie Details von Avnet anfordern, indem Sie eine E-Mail senden Azure.Sphere@avnet.com.

Die UART-Beispielanwendung

Das UART_RTApp_MT3620_BareMetal Beispiel veranschaulicht die Kommunikation über den UART in einer RTApp.