

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

# 共通 I/O
<a name="common-io"></a>

**重要**  <a name="deprecation-message-library"></a>
このライブラリは、非推奨の Amazon-FreeRTOS リポジトリでホストされています。新しいプロジェクトを作成するときは、[ここから始める](freertos-getting-started-modular.md)ことをお勧めします。現在非推奨の Amazon-FreeRTOS リポジトリをベースにした既存の FreeRTOS プロジェクトが既にある場合は、「[Amazon FreeRTOS Github リポジトリ移行ガイド](github-repo-migration.md)」を参照してください。

**概要**

一般に、デバイスドライバーは基盤となるオペレーティングシステムに依存せず、特定のハードウェア構成に固有です。ハードウェア抽象化レイヤー (HAL) は、ドライバーと上位レベルのアプリケーションコード間の共通のインターフェイスを提供します。HAL は、特定のドライバーの動作の詳細を抽象化し、そのようなデバイスを制御するための統一された API を提供します。同じ API を使用して、複数のマイクロコントローラー (MCU) ベースのリファレンスボード間でさまざまなデバイスドライバーにアクセスできます。

FreeRTOS [共通 I/O](https://docs.aws.amazon.com/freertos/latest/lib-ref/common-io/index.html) は、このハードウェア抽象化レイヤーとして機能します。サポートされているリファレンスボード上の共通シリアルデバイスにアクセスするための標準 API のセットを提供します。これらの共通 API は、これらの周辺機器と通信、相互作用し、プラットフォーム間でコードを機能させることができます。共通 I/O がない場合、低レベルデバイスで動作するコードの記述は、シリコンベンダー固有です。

**サポートされている周辺機器**
+ UART
+ SPI
+ I2C

**サポートされている機能**
+ 同期読み取り/書き込み: 要求された量のデータが転送されるまで、関数は戻りません。
+ 非同期読み取り/書き込み: 関数はすぐに戻り、データ転送は非同期的に行われます。アクションが完了すると、登録されたユーザーコールバックが呼び出されます。

**周辺機器固有**
+ I2C: 複数のオペレーションを 1 つのトランザクションに結合します。1 つのトランザクションで書き込みおよび読み取りアクションを実行するために使用されます。
+ SPI: プライマリとセカンダリの間でデータを転送します。つまり、書き込みと読み取りが同時に行われます。

**移植**

詳細については、[FreeRTOS 移植ガイド](https://docs.aws.amazon.com/freertos/latest/portingguide/)を参照してください。