Funzione SPIMaster_WriteThenRead
Intestazione: #include <applicazioni/spi.h>
Esegue una sequenza di scrittura half-duplex immediatamente seguita da una lettura half-duplex utilizzando l'interfaccia master SPI. Questa funzione consente la selezione del chip una volta prima della sequenza e la disabilita al termine.
static inline ssize_t SPIMaster_WriteThenRead(int fd, const uint8_t *writeData, size_t lenWriteData, uint8_t *readData, size_t lenReadData);
Parametri
fd
Descrittore di file per l'interfaccia master SPI.writeData
Dati da scrivere.lenWriteData
Numero di byte da scrivere.readData
Buffer di output che riceve i dati. Questo buffer deve essere sufficientemente grande da ricevere fino alenReadData
byte.lenReadData
Numero di byte da leggere.
Valore restituito
Restituisce il numero di byte trasferiti; o -1 per errore, nel qual caso errno
è impostato sul valore di errore.
Osservazioni
Ogni chiamata a SPIMaster_WriteThenRead è limitata al massimo a 4096 byte da leggere e 4096 byte da scrivere. Per trasferire dati aggiuntivi, è necessario chiamare questa funzione più volte. Nota che la selezione del chip verrà asserita più volte in questo caso.
Requisiti del manifesto dell'applicazione
Per accedere a singole interfacce SPI, l'applicazione deve identificarle nel campo SpiMaster del manifesto dell'applicazione.