Freigeben über


SPIMaster_TransferSequential-Funktion

Header: #include <applibs/spi.h>

Führt eine Sequenz von Halbduplex-Lese- oder Schreibübertragungen mithilfe der SPI-master-Schnittstelle aus. Diese Funktion aktiviert die Chipauswahl einmal vor der Sequenz und deaktiviert sie, wenn sie endet. Diese Funktion unterstützt nicht das gleichzeitige Lesen und Schreiben in einer einzigen Übertragung.

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

Parameter

  • fdDer Dateideskriptor für die SPI-master-Schnittstelle.

  • transfers Ein Array von SPIMaster_Transfer Strukturen, die die Übertragungsvorgänge angeben. Sie müssen SPIMaster_InitTransfers aufrufen, um das Array mit Standardeinstellungen zu initialisieren, bevor Sie es ausfüllen.

  • transferCount Die Anzahl der Übertragungsstrukturen im transfers Array.

Rückgabewert

Gibt die Anzahl der übertragenen Bytes zurück. oder -1 für Fehler, in diesem Fall errno wird auf den Fehlerwert festgelegt.

Bemerkungen

Jeder Aufruf von SPIMaster_TransferSequential ist unabhängig von der Anzahl der tatsächlichen Übertragungen auf höchstens 4.096 Bytes zum Lesen und auf 4.096 Bytes zum Schreiben beschränkt. Um zusätzliche Daten zu übertragen, müssen Sie diese Funktion mehrmals aufrufen. Beachten Sie, dass die Chipauswahl in diesem Fall mehrmals bestätigt wird.

Anforderungen an das Anwendungsmanifest

Für den Zugriff auf einzelne SPI-Schnittstellen muss Ihre Anwendung diese im Feld SpiMaster des Anwendungsmanifests identifizieren.