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'argomentoconfig
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.