funktionen SPIMaster_WriteThenRead
Sidhuvud: #include <applibs/spi.h>
Utför en sekvens av en halv-dubbelsidig skrivning omedelbart följt av en halv-dubbelsidig läsning med HJÄLP av SPI-mastergränssnittet. Den här funktionen aktiverar kretsmarkering en gång före sekvensen och inaktiverar den när den slutar.
static inline ssize_t SPIMaster_WriteThenRead(int fd, const uint8_t *writeData, size_t lenWriteData, uint8_t *readData, size_t lenReadData);
Parametrar
fd
Filbeskrivning för SPI-huvudgränssnittet.writeData
De data som ska skrivas.lenWriteData
Antalet byte som ska skrivas.readData
Utdatabufferten som tar emot data. Bufferten måste vara tillräckligt stor för att få upp tilllenReadData
byte.lenReadData
Antalet byte som ska läsas.
Returvärde
Returnerar antalet överförda byte. eller -1 för fel, i vilket fall errno
är inställt på felvärdet.
Anmärkningar
Varje samtal till SPIMaster_WriteThenRead är begränsat till högst 4 096 byte att läsa och 4 096 byte att skriva. Om du vill överföra ytterligare data måste du anropa den här funktionen flera gånger. Observera att markmarkering kommer att hävdas flera gånger i det här fallet.
Krav för programmanifest
För åtkomst till enskilda SPI-gränssnitt måste programmet identifiera dem i fältet SpiMaster i programmanifestet.