fuchsia.hardware.spi
新增:HEAD
PROTOCOLS
控場
定義於 fuchsia.hardware.spi/spi.fidl
OpenSession
在裝置上開啟新的工作階段。
一次最多允許一個工作階段;如果已存在工作階段,伺服器端會以 ZX_ERR_ALREADY_BOUND 關閉。
要求
| 名稱 | 類型 |
session |
server_end:Device
|
裝置
定義於 fuchsia.hardware.spi/spi.fidl
AssertCs
為這部裝置斷言 CS。如果匯流排上有多部裝置,就會傳回 ZX_ERR_NOT_SUPPORTED。
要求
<EMPTY>
回應
CanAssertCs
如果裝置可以呼叫 |AssertCs()| 和 |DeassertCs()|,則傳回 true。
要求
<EMPTY>
回應
DeassertCs
為此裝置取消斷言 CS。如果 CS 已取消斷言,則會傳回 ZX_ERR_BAD_STATE。如果匯流排上有多部裝置,就會傳回 ZX_ERR_NOT_SUPPORTED。
要求
<EMPTY>
回應
Exchange
同時傳送及接收資料。tx_buffer 和 rx_buffer 的大小欄位必須相同。
要求
回應
ExchangeVector
全雙工 SPI 交易。接收的資料會與傳輸緩衝區的長度完全相同。
要求
| 名稱 | 類型 |
txdata |
vector<uint8>:8196
|
回應
| 名稱 | 類型 |
status |
zx/Status
|
rxdata |
vector<uint8>:8196
|
接收
接收裝置傳來的資料並放入緩衝區。
要求
回應
ReceiveVector
從 SPI 裝置接收半雙工資料,一律讀取要求的完整大小。
要求
回應
| 名稱 | 類型 |
status |
zx/Status
|
data |
vector<uint8>:8196
|
RegisterVmo
註冊 VMO 並將擁有權轉移至驅動程式庫
vmo_id:用戶端選擇的 ID,用於對此 VMO 執行的作業。
vmo:此 VMO 的句柄、偏移量和大小。這個 VMO 的 I/O 作業會相對於此處指定的偏移量和大小。
rights:SharedVmoRight 值的位元欄位,表示這個 VMO 的使用方式。呼叫端應假設驅動程式庫會使用這些權限對應及/或固定 VMO。
要求
回應
傳輸
將緩衝區中的資料傳送至裝置。
要求
回應
TransmitVector
半雙工傳輸資料至 SPI 裝置;成功時一律會傳輸整個緩衝區。
要求
| 名稱 | 類型 |
data |
vector<uint8>:8196
|
回應
UnregisterVmo
取消對應和/或取消固定 VMO,並將句柄傳回給呼叫端。
要求
回應
常數
服務
ControllerService
定義於 fuchsia.hardware.spi/spi.fidl
| 名稱 | 類型 | 傳輸 |
| device |
fuchsia.hardware.spi/Controller
|
頻道 |
服務
定義於 fuchsia.hardware.spi/spi.fidl
| 名稱 | 類型 | 傳輸 |
| device |
fuchsia.hardware.spi/Device
|
頻道 |
除非另有註明,否則本頁面中的內容是採用創用 CC 姓名標示 4.0 授權,程式碼範例則為阿帕契 2.0 授權。詳情請參閱《Google Developers 網站政策》。Java 是 Oracle 和/或其關聯企業的註冊商標。
上次更新時間:2025-07-25 (世界標準時間)。
[[["容易理解","easyToUnderstand","thumb-up"],["確實解決了我的問題","solvedMyProblem","thumb-up"],["其他","otherUp","thumb-up"]],[["缺少我需要的資訊","missingTheInformationINeed","thumb-down"],["過於複雜/步驟過多","tooComplicatedTooManySteps","thumb-down"],["過時","outOfDate","thumb-down"],["翻譯問題","translationIssue","thumb-down"],["示例/程式碼問題","samplesCodeIssue","thumb-down"],["其他","otherDown","thumb-down"]],["上次更新時間:2025-07-25 (世界標準時間)。"],[],[]]