Funzione SPIMaster_TransferSequential

Intestazione: #include <applicazioni/spi.h>

Esegue una sequenza di trasferimenti di lettura o scrittura half-duplex utilizzando l'interfaccia master SPI. Questa funzione consente la selezione del chip una volta prima della sequenza e la disabilita al termine. Questa funzione non supporta la lettura e la scrittura simultanee in un unico trasferimento.

static inline ssize_t SPIMaster_TransferSequential(int fd, const SPIMaster_Transfer *transfers, size_t transferCount);

Parametri

  • fd Descrittore di file per l'interfaccia master SPI.

  • transfers Matrice di strutture SPIMaster_Transfer che specificano le operazioni di trasferimento. È necessario chiamare SPIMaster_InitTransfers per inizializzare la matrice con le impostazioni predefinite prima di riempirla.

  • transferCount Numero di strutture di trasferimento nella transfers matrice.

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_TransferSequential è limitata al massimo a 4096 byte da leggere e a 4096 byte da scrivere, indipendentemente dal numero di trasferimenti effettivi. 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.