SPIMaster_WriteThenRead-Funktion
Header: #include <applibs/spi.h>
Führt eine Sequenz von Halbduplexschreibvorgängen aus, gefolgt von einem Halbduplexlesevorgang mithilfe der SPI-master-Schnittstelle. Diese Funktion aktiviert die Chipauswahl einmal vor der Sequenz und deaktiviert sie, wenn sie endet.
static inline ssize_t SPIMaster_WriteThenRead(int fd, const uint8_t *writeData, size_t lenWriteData, uint8_t *readData, size_t lenReadData);
Parameter
fd
Der Dateideskriptor für die SPI-master-Schnittstelle.writeData
Die zu schreibenden Daten.lenWriteData
Die Anzahl der zu schreibenden Bytes.readData
Der Ausgabepuffer, der die Daten empfängt. Dieser Puffer muss groß genug sein, um bis zu Bytes zulenReadData
empfangen.lenReadData
Die Anzahl der zu lesenden Bytes.
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_WriteThenRead ist auf maximal 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.