リアルタイム対応アプリケーションで UART を使用する
重要
これは Azure Sphere (レガシ) のドキュメントです。 Azure Sphere (レガシ) は 2027 年 9 月 27 日に 再提供されておりユーザーは現時点で Azure Sphere (統合) に移行する必要があります。 TOC の上にある Version セレクターを使用して、Azure Sphere (統合) のドキュメントを表示します。
Azure Sphere デバイスの ISU UART は、RTApp で使用できます。 ISU UART を使用するには、RTApp で、アプリケーション マニフェストの Capabilities セクションにそれをリストする必要があります。 ターゲット チップの JSON ファイルで定義されている "AppManifestValue" を使用して UART を識別します。 たとえば、次の行では MT3620 チップの ISU0 上で UART が予約されます。
"Capabilities": {
"Uart": [ "ISU0" ]
}
アプリケーション コードには、UART とそのレジスタ ベース アドレスおよびその割り込み番号を識別する手段が必要であり、UART 用の割り込みハンドラーを含める必要があります。 製造元のハードウェアに関するドキュメントで、UART のベース アドレスや割り込み番号を確認できます。
Note
Azure Sphere OS では起動時に周辺機器がリセットされません。 アプリケーションでは、起動時または再起動後に周辺機器が既知の良好な状態であることを確認する必要があります。
リアルタイム コアの UART のための MT3620 サポート
このセクションでは、MT3620 ハードウェアのリアルタイム コアに適用される UART オプションについて説明します。 UART のための MT3620 サポートに関する一般情報については、「MT3620 サポート」を参照してください。
各リアルタイム コアには、ISU UART とは別の専用の UART があり、これはログ記録のためのものです。 このような UART はそれぞれ、そのコア上のアプリケーションでのみ使用されるため、RTApp でそれをアプリケーション マニフェストにリストする必要はありません。 RTApps は、使用可能な最初のリアルタイム コアに割り当てられます。現在、アプリケーションで使用されるリアルタイム コア (つまり、専用の UART) を選択することはできません。 ただし、azsphere device app start コマンドの出力で、アプリケーションに割り当てられたコアが報告されます。
MT3620 に関するレジスタ ベース アドレス、割り込み番号、クロック レート、サンプリング周波数などの詳細については、 MT3620 データシート および MT3620 M4 ユーザー マニュアルを参照してください。質問が残っている場合は、 Azure.Sphere@avnet.com電子メールで Avnet に詳細を要求できます。
UART サンプル アプリケーション
UART_RTApp_MT3620_BareMetalサンプルは、RTApp で UART 経由で通信する方法を示しています。