Partilhar via


Função SPIMaster_TransferSequential

Cabeçalho: #include <applibs/spi.h>

Executa uma sequência de transferências de leitura ou escrita semi-duplex com a interface mestra SPI. Esta função ativa a seleção de chip uma vez antes da sequência e desativa-a quando termina. Esta função não suporta leitura e escrita em simultâneo numa única transferência.

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

Parâmetros

  • fd O descritor de ficheiros da interface mestra SPI.

  • transfers Uma matriz de estruturas SPIMaster_Transfer que especificam as operações de transferência. Tem de chamar SPIMaster_InitTransfers para inicializar a matriz com predefinições antes de a preencher.

  • transferCount O número de estruturas de transferência na transfers matriz.

Valor devolvido

Devolve o número de bytes transferidos; ou -1 para a falha, caso errno em que está definido como o valor de erro.

Observações

Cada chamada para SPIMaster_TransferSequential está limitada a, no máximo, 4096 bytes para ler e 4096 bytes para escrever, independentemente do número de transferências reais. Para transferir dados adicionais, tem de chamar esta função várias vezes. Tenha em atenção que a seleção de chip será afirmada várias vezes neste caso.

Requisitos do manifesto de aplicação

Para aceder a interfaces SPI individuais, a sua aplicação tem de identificá-las no campo SpiMaster do manifesto da aplicação.