SPIMaster_Open-Funktion
Header: #include <applibs/spi.h>
Öffnet und konfiguriert eine SPI-master-Schnittstelle für die exklusive Verwendung und gibt einen Dateideskriptor zurück, der für nachfolgende Aufrufe verwendet werden soll.
Die -Schnittstelle wird mit den Standardeinstellungen initialisiert: SPI_Mode_0
, SPI_BitOrder_MsbFirst
. Sie können diese Einstellungen mit SPI-Funktionen ändern, nachdem die Schnittstelle geöffnet wurde.
static inline int SPIMaster_Open(SPI_InterfaceId interfaceId, SPI_ChipSelectId chipSelectId, const SPIMaster_Config *config);
Parameter
interfaceId
Die ID der zu öffnenden SPI-master Schnittstelle.chipSelectId
Der Chip wählt die ID aus, die mit der SPI-master-Schnittstelle verwendet werden soll.config
Die Konfiguration für die SPI-master-Schnittstelle. Bevor Sie diese Funktion aufrufen, müssen Sie SPIMaster_InitConfig aufrufen, um die SPIMaster_Config Struktur zu initialisieren. Sie können die Einstellungen ändern, nachdem die Struktur initialisiert wurde. Dasconfig
Argument enthält alle Einstellungen, die im Rahmen des Öffnens der Schnittstelle konfiguriert werden müssen und die danach möglicherweise nicht mehr geändert werden.
Fehler
Gibt -1 zurück, wenn ein Fehler auftritt, und legt auf den Fehlerwert fest errno
.
- EACCES: Der Zugriff auf diese SPI-Schnittstelle ist nicht zulässig, da der
interfaceId
Parameter nicht im Feld SpiMaster des Anwendungsmanifests aufgeführt ist.
Auch andere errno
Fehler können angegeben werden. Solche Fehler sind nicht deterministisch, und dasselbe Verhalten wird möglicherweise nicht durch Systemupdates beibehalten.
Rückgabewert
Gibt den Dateideskriptor der SPI-Schnittstelle zurück, wenn sie erfolgreich geöffnet wurde, oder -1 bei Einem Fehler. In diesem Fall errno
wird auf den Fehlerwert festgelegt. Sie können diesen Deskriptor mit Standard read(2)
- und write(2)
-Funktionen verwenden, um Transaktionen mit dem verbundenen Gerät durchzuführen. Sie können auch SPIMaster_TransferSequential verwenden, um eine Sequenz von Übertragungen auszuführen.
Anforderungen an das Anwendungsmanifest
Für den Zugriff auf einzelne SPI-Schnittstellen muss Ihre Anwendung diese im Feld SpiMaster des Anwendungsmanifests identifizieren.