Condividi tramite


Funzione SPIMaster_Open

Intestazione: #include <applicazioni/spi.h>

Apre e configura un'interfaccia master SPI per l'uso esclusivo e restituisce un descrittore di file da utilizzare per le chiamate successive.

L'interfaccia viene inizializzata con le impostazioni predefinite: SPI_Mode_0, SPI_BitOrder_MsbFirst. Puoi modificare queste impostazioni con le funzioni SPI dopo l'apertura dell'interfaccia.

static inline int SPIMaster_Open(SPI_InterfaceId interfaceId, SPI_ChipSelectId chipSelectId, const SPIMaster_Config *config);

Parametri

  • interfaceId ID dell'interfaccia master SPI da aprire.

  • chipSelectId L'ID di selezione del chip da utilizzare con l'interfaccia master SPI.

  • config Configurazione dell'interfaccia master SPI. Prima di chiamare questa funzione, è necessario chiamare SPIMaster_InitConfig per inizializzare l'SPIMaster_Config struct. È possibile modificare le impostazioni dopo l'inizializzazione della struttura. L'argomento config contiene tutte le impostazioni che devono essere configurate come parte dell'apertura dell'interfaccia e che potrebbero non essere modificate in un secondo momento.

Errori

Restituisce -1 se si verifica un errore e imposta errno il valore di errore.

  • EACCES: l'accesso a questa interfaccia SPI non è consentito perché il interfaceId parametro non è elencato nel campo SpiMaster del manifesto dell'applicazione.

Potrebbero anche essere specificati altri errno errori. Tali errori non sono deterministici e lo stesso comportamento potrebbe non essere mantenuto tramite gli aggiornamenti di sistema.

Valore restituito

Restituisce il descrittore di file dell'interfaccia SPI se è stato aperto correttamente, o -1 per errore, nel qual caso errno è impostato sul valore di errore. È possibile utilizzare questo descrittore con standard read(2) e write(2) funzioni per effettuare transazioni con il dispositivo connesso. È anche possibile usare SPIMaster_TransferSequential per eseguire una sequenza di trasferimenti.

Requisiti del manifesto dell'applicazione

Per accedere a singole interfacce SPI, l'applicazione deve identificarle nel campo SpiMaster del manifesto dell'applicazione.