通用 I/O - FreeRTOS

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

通用 I/O

重要

該庫託管在亞馬遜的 FreeRTOS 存儲庫上,該存儲庫已被棄用。建議您在建立新專案時從這裡開始。如果您已經有一個現有的 FreeRTOS 專案以目前已取代的亞馬遜免費伺服器儲存庫為基礎,請參閱亞馬遜自由 Github 存儲庫遷移指南.

概觀

通常,裝置驅動程式與基礎作業系統無關,而且是特定於指定的硬體組態。硬體抽象層 (HAL) 可提供驅動程式與更高階應用程式碼之間的通用介面。HAL 抽取了特定驅動程式運作方式的詳細資訊,並提供統一的 API 來控制這類裝置。您可以使用相同的 API,跨多個以微型控制器 (MCU) 為基礎的參考電路板存取各種裝置驅動程式。

FreeRTOS 通用 I/O 充當這個硬體抽象層。它提供了一組標準 API,用於在支援的參考電路板上存取通用序列裝置。這些通用 API 會與這些周邊裝置進行通訊和互動,並讓您的程式碼可跨平台運作。若沒有通用 I/O,編寫程式碼來使用低階裝置是矽晶廠商所特定的。

支援的周邊裝置
  • UART

  • SPI

  • I2C

支援的功能
  • 同步讀取/寫入 — 在傳輸要求的資料量之前,不會傳回函數。

  • 非同步讀取/寫入 — 函數會立即傳回,且資料傳輸非同步發生。當動作完成時,即會叫用已註冊的用戶回呼。

周邊裝置特定
  • I2C — 將多個操作合併為一個交易。用來在一個交易上執行先寫入後讀取動作。

  • SPI — 在主要和次要之間傳輸資料,這意味著寫入和讀取同時發生。

移植

如需詳細資訊,請參閱 FreeRTOS 移植指南