共用方式為


SPIMaster_WriteThenRead函數

頁首: #include < applibs/spi.h>

使用 SPI 主介面執行半雙面寫入順序,後面接著半雙面讀取。 此函數可讓晶片在序列之前選取一次,並在結束時將其停用。

static inline ssize_t SPIMaster_WriteThenRead(int fd, const uint8_t *writeData, size_t lenWriteData, uint8_t *readData, size_t lenReadData);

參數

  • fd SPI 主介面的檔案描述。

  • writeData 要撰寫的資料。

  • lenWriteData 這是要書寫的位元組數。

  • readData 接收資料的輸出緩衝區。 這個緩衝區必須大到足以接收到字 lenReadData 節。

  • lenReadData 這是要讀取的位元組數。

傳回值

傳回移轉的位元組數;或 -1 表示失敗,在這種情況下 errno 會設定為錯誤值。

言論

每個 SPIMaster_WriteThenRead 通話最多隻能讀取 4096 位元組,以及 4096 位元組。 若要傳輸其他資料,您需要多次呼叫此函數。 請注意,在此情況下,晶片選取會出現多次。

應用程式資訊清單需求

若要存取個別的 SPI 介面,您的應用程式必須在 應用程式資訊清單的 SpiMaster 欄位中識別這些介面。