SPIMaster_WriteThenRead funkce
Hlavička: #include <applibs/spi.h>
Provede sekvenci poloduplexních zápisů okamžitě následovaných poloduplexním čtením pomocí hlavního rozhraní SPI. Tato funkce povolí výběr čipů jednou před sekvencí a po jeho ukončení ho zakáže.
static inline ssize_t SPIMaster_WriteThenRead(int fd, const uint8_t *writeData, size_t lenWriteData, uint8_t *readData, size_t lenReadData);
Parametry
fd
Popisovač souboru pro hlavní rozhraní SPI.writeData
Data, která se mají zapsat.lenWriteData
Počet bajtů, které se mají zapsat.readData
Výstupní vyrovnávací paměť, která přijímá data. Tato vyrovnávací paměť musí být dostatečně velká, aby přijímala ažlenReadData
bajty.lenReadData
Počet bajtů, které se mají přečíst.
Vrácená hodnota
Vrátí počet přenesených bajtů. nebo -1 pro selhání, v tomto případě errno
je nastavena na chybovou hodnotu.
Poznámky
Každé volání SPIMaster_WriteThenRead je omezeno na maximálně 4096 bajtů pro čtení a 4096 bajtů pro zápis. Pokud chcete přenést další data, musíte tuto funkci volat vícekrát. Mějte na paměti, že v tomto případě se výběr čipů prohlásí několikrát.
Požadavky manifestu aplikace
Pro přístup k jednotlivým rozhraním SPI je vaše aplikace musí identifikovat v poli SpiMaster manifestu aplikace.