SPIMaster_Open函數
頁首: #include < applibs/spi.h>
開啟並設定 SPI 主介面以供專屬使用,並傳回檔案描述器以用於後續通話。
介面初始化時會使用預設設定: SPI_Mode_0
、 . SPI_BitOrder_MsbFirst
開啟介面之後,您可以使用 SPI 函數變更這些設定。
static inline int SPIMaster_Open(SPI_InterfaceId interfaceId, SPI_ChipSelectId chipSelectId, const SPIMaster_Config *config);
參數
interfaceId
要開啟的 SPI 主介面識別碼。chipSelectId
晶片選取識別碼以搭配 SPI 主介面使用。config
SPI 主介面的設定。 在呼叫此函數之前,您必須致電 SPIMaster_InitConfig 以初始化 SPIMaster_Config 指示。 您可以在初始化結構後變更設定。 自config
變數包含開啟介面時必須設定的所有設定,之後可能不會變更。
錯誤
如果發生錯誤並設定為 errno
錯誤值,則傳回 -1。
- EACCES:不允許存取此 SPI 介面,
interfaceId
因為參數未列在應用程式資訊清單的 SpiMaster 欄位中。
您也可以指定任何其他 errno
錯誤;這類錯誤不是不確定的,同樣的行為可能無法透過系統更新來保留。
傳回值
如果成功開啟 SPI 介面,則傳回 SPI 介面的檔案描述,或是 -1 表示失敗,在這種情況下 errno
會設為錯誤值。 您可以使用此描述器搭配標準 read(2)
和 write(2)
功能來與連接的裝置進行交易。 您也可以使用 SPIMaster_TransferSequential 執行一連串傳輸。
應用程式資訊清單需求
若要存取個別的 SPI 介面,您的應用程式必須在 應用程式資訊清單的 SpiMaster 欄位中識別這些介面。